[英]Insert into mySQL from php foreach loop
我知道這個問題已經被問了很多遍了,但是我似乎無法弄清楚這個問題。 我正在運行以下代碼,但它只會返回失敗。 當我運行輸出
$ query1-> INSERT INTO編號(count,code,prize,printed)VALUES('1','Q0stZr0g8uc4syE','','0');
直接插入phpmyadmin,它可以插入。 我一定在做蠢事...有什么想法嗎?
$times_to_run = 100;
$prize='';
for($i=1;$i<=$times_to_run;$i++){
$array[] = array(
'count' => $i,
'code1' => randomString(),
'prize' => $prize
);
}
$codes = $array;
foreach ($codes as $code){
$query1 = "INSERT INTO number (count,code,prize,printed) VALUES ('". $code['count']."','". $code['code1']."','". $code['prize']."','0');";
$q = mysqli_query($query1) or die (mysql_error());
}
編輯:我將查詢更改為使用mysqli,並得到了完整的錯誤是:實際錯誤是:
警告:mysqli_query()需要至少2個參數,給定1個參數,它指向的行是:$ q = mysqli_query($ query1)或die(mysql_error());
**如果我改變
'“。$ code ['prize']。”'
到“ 0”,我仍然收到相同的錯誤。
為了清楚起見,這是代碼的更正版本:
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
$times_to_run = 100;
$prize='';
for($i=1;$i<=$times_to_run;$i++){
$array[] = array(
'count' => $i,
'code1' => randomString(),
'prize' => $prize
);
}
$codes = $array;
foreach ($codes as $code){
$query1 = "INSERT INTO number (count,code,prize,printed) VALUES ('". $code['count']."','". $code['code1']."','". $code['prize']."','0')";
$q = mysqli_query($link, $query1) or die (mysqli_error($link));
}
我在這里可能是錯誤的,但我認為]之后和之后需要空格。 像這樣:
'" . $code['count'] . "'
代替
'". $code['count']."'
哦,還有一些可能會很方便並且很高興知道的東西,mysql_query已被棄用並且不安全,除非您在本地主機上自己使用它,否則我建議您看看mysqli_,它的工作原理基本相同。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.