[英]add mysql query values to an php array
我試圖將所有查詢值添加到數組。
這是我的代碼:
$value = $_POST['hospitalname'];
$from = $_POST['from'];
$to = $_POST['to'];
if($_POST["Submit"]=="Submit") {
for ($i=0; $i<sizeof($value); $i++) {
$sql = "SELECT sl_id from mfb_servicelog where h_id LIKE ('".$value[$i]."')";
$result = mysql_query($sql);
while ($row = mysql_fetch_assoc($result)) {
$slid = $row["sl_id"];
for ($x=0; $x<sizeof($slid);$x++) {
echo $slid[$x];
}
}
}
}
如果我打印$ slid的結果,它會給我
1333853863873885215251126112711281129113023392488248924902491249224932494249524962497
這些都是sl_id
和查詢$sql
。 這可以。
現在,我想將所有這些值放入數組中,以便可以像在上面的$ sql查詢中調用$ value一樣從查詢中調用它。
但是我的echo $slid($x)
給了我這個輸出,這是每個值的第一位。
13333551111122222222222
請為我建議正確的方法。
只需將它們存儲在數組中,而不是普通變量即可。 嘗試-
$slid[] = $row["sl_id"];
更新資料
if (!in_array($row["sl_id"], $slid)) {
$slid[] = $row["sl_id"];
}
並在循環開始前定義$slid
$slid = array();
或者您可以使用array_unique()
對於您的代碼,它應該是-
$slid = array();
while ($row = mysql_fetch_assoc($result)) {
if (!in_array($row["sl_id"], $slid)) {
$slid[] = $row["sl_id"];
}
}
foreach($slid as $id) {
echo $id."<br>";
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.