0

我正在尝试通过 php/mysql 2 使用 2 个 mysql 表给我一个最大值。我假设使用数组是执行此操作的正确方法,但是我已经花了很多时间并且遗漏了一些东西。

我的桌子是:

1) plantcomp,我想知道所有CompressID具有CustID$CustID 的列表。(目前有 3 个)。

2) comps,我想使用这些CompressID列表来了解有效的Compressor#s。然后我将对这些值执行 max(),以便我可以命名下一个压缩器 max()+1。

我的代码尝试...这让我出错:“注意:第 55 行(路径名)中的数组到字符串转换”,然后是“数组”

//have the custid
echo $CustID;

//under table `plantcomp`, find matching compressid's.
$q55 = "SELECT * FROM `plantcomp` WHERE `CustID`='" . $CustID . "' ";

 // Run query
 $result55 = mysql_query($q55);

while($row = mysql_fetch_array($result55)){
echo "<p>".$row;

我也试过这个,mysql_fetch_assoc,但它只给了我 3 个有效条目中的 2 个......

$get = mysql_query("SELECT CompressID FROM plantcomp WHERE CustID = '$CustID'");
$money = mysql_fetch_assoc($get);

while($money = mysql_fetch_assoc($get)){echo $money['CompressID'];}

提前感谢您的帮助!!

4

3 回答 3

0
Please change this line 

echo "<p>".$row;
to 
echo "<p>";
print_r($row);
于 2013-01-03T06:56:53.297 回答
0

您遇到的问题来自您将字符串 (< p >) 与数组 ( $row ) 混合的事实。

echo "<p>".$row;

您可以使用print_r打印 $row 数组:

print_r($row);

您还可以像这样访问 $row 数组(表列)的不同元素:

$row['column_name'];

例如,假设您的表由两列组成:first_name 和 last_name。您可以像这样打印它们:

echo '<p>' . $row['first_name'] . ' ' . $row['last_name'] . '</p>';

因此,有了这些知识,我们可以打印您的 CompressID:

$result55 = mysql_query("SELECT * FROM `plantcomp` WHERE `CustID`='" . $CustID . "'");

while ($row = mysql_fetch_assoc($result55))
{
    echo '<p>' . $row['CompressID'] . '</p>';
}
于 2013-01-03T06:58:13.617 回答
0
$CompressID = array(); //Initialising an array

$query = "SELECT * FROM `plantcomp` WHERE `CustID`='" . $CustID . "' ";
$result = mysql_query($query);

while($obj = mysql_fetch_assoc($result)){

    $CompressID = $obj['CompressID']; //Storing all the CompressID in an array
    echo $obj['CompressID']; // sanity check
}

首先运行上述查询并将结果与​​ db 进行比较。如果结果不匹配 1) db 中有一些错误数据 2) 更改查询以获得所需的结果。

如果这有效,则添加其余代码

if( count($CompressID) >0 ){

    $query = "SELECT max(CompressID) as maxCompressID FROM `comps` WHERE `CompressID` IN($CompressID)";
    $result = mysql_query($query);
    while($newObj = mysql_fetch_assoc($result){

     echo $newObj['maxCompressID'];

    }
}
于 2013-01-03T07:29:33.550 回答