[英]How to select multiple rows from mysql with one query and use them in php
我目前有一個如下圖所示的數據庫。
其中有一個查詢選擇 number1 等於 1 的行。使用時
mysql_fetch_assoc()
in php 我只得到第一個有沒有辦法得到第二個? 就像通過一個維度數組一樣
array['number2'][2]
或類似的東西
使用重復調用mysql_fetch_assoc。 它已在PHP手冊中記錄。
http://php.net/manual/function.mysql-fetch-assoc.php
// While a row of data exists, put that row in $row as an associative array
// Note: If you're expecting just one row, no need to use a loop
// Note: If you put extract($row); inside the following loop, you'll
// then create $userid, $fullname, and $userstatus
while ($row = mysql_fetch_assoc($result)) {
echo $row["userid"];
echo $row["fullname"];
echo $row["userstatus"];
}
如果需要,可以使用它來構建一個多維數組,以便在腳本的其他部分中使用。
$Query="select SubCode,SubLongName from subjects where sem=1";
$Subject=mysqli_query($con,$Query);
$i=-1;
while($row = mysqli_fetch_array($Subject))
{
$i++;
$SubjectCode[$i]['SubCode']=$row['SubCode'];
$SubjectCode[$i]['SubLongName']=$row['SubLongName'];
}
這里while循環將獲取每一行。該行的所有列都將存儲在$row
variable(array)中,但是當下一次迭代發生時它將丟失。所以我們將array $row
的內容復制到一個多維數組中每行調用$SubjectCode
.contents將存儲在該數組的第一個索引中。這可以在我們的腳本中重用。 (我是PHP的新手,所以如果有人遇到這個誰知道更好的方式,請提及它以及我的名字的評論,以便我可以學習新的。)
這是另一種簡單的方法
$sql_shakil ="SELECT app_id, doctor_id FROM patients WHERE doctor_id = 201 ORDER BY ABS(app_id) ASC";
if ($result = $con->query($sql_shakil)) {
while ($row = $result->fetch_assoc()) {
printf ("%s (%s)\n", $row["app_id"], $row["doctor_id"]);
}
看起來還沒有提出完整的解決方案
$Query="select SubCode,SubLongName from subjects where sem=1";
$Subject=mysqli_query($con,$Query);
$Rows = array ();
while($row = mysqli_fetch_array($Subject))
{
$Rows [] = $row;
}
$Rows [] = $row
將行附加到數組。 結果是所有行的多維數組。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.