查询数组中的输出值

时间:2015-07-03 03:57:14

标签: php mysql

我很难理解为什么有时候我的查询会返回值,有时会得到别的东西,指针?

我认为我有一个关于变量的概念。

$sql = "SELECT 
    customerData.studFirstName,
    customerData.studLastName, 
    customerData.custPhone,
    customerData.studPhone, 
    classRoll.courseNumber, 
    classRoll.payFull, 
    classRoll.payAmount
FROM classRoll, customerData
WHERE classRoll.custId = customerData.custId
AND classRoll.courseNumber =  '".$_REQUEST['cnum']."'
ORDER BY customerData.studLastName;";

$result = $conn->query("SELECT COUNT(*) AS count FROM classRoll");
while ($row= $result->fetch_assoc()){
    $output[]=$row[studLastName].", ".$row[studFirstName];
};
var_dump($output);
?>

该查询适用于phpadmin,但我得到了这个

array(1) { [0]=> string(2) ", " }

我不希望解决方案像理解一样糟糕。我很感激任何指导。

1 个答案:

答案 0 :(得分:1)

  • 如果您获得单一价值,则无需将其放入while loop

  • 其次 $output[]=$row[studLastName].", ".$row[studFirstName];这些密钥不存在,因为您正在查询计数。

  • 您没有使用$sql

您可以简单地获取,结果并使用它,请参阅下面的示例: -

$result = $conn->query("SELECT COUNT(*) AS count FROM classRoll");
$row = $result->fetch_row();
echo $row[0];

但是,我想您可能想要$sql,因为该代码看起来很好。

$result = $conn->query($sql);
while ($row= $result->fetch_assoc()){
    $output[]=$row['studLastName'].", ".$row['studFirstName'];
}
var_dump($output);