【发布时间】:2015-02-13 19:01:32
【问题描述】:
我知道这个问题已被问过很多次,但我似乎无法弄清楚问题所在。我运行以下代码,但它只返回失败。当我运行
的输出时$query1 --> INSERT INTO number (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) or die (mysql_error());
** 如果我改变了
'".$code['prize']."'
到 '0' 我仍然得到同样的错误。
【问题讨论】:
-
如果您返回实际错误,您就会知道问题所在。
-
看起来不错。但是为什么不使用one
INSERTfor all呢? -
$prize='';里面什么都没有。 -
另外,您的
or die ('FAIL - '.$query1)应更改为or die(mysql_error())以获得真正的错误。 -
根据您的编辑,消息很清楚。它需要传递另一个参数。阅读函数php.net/manual/en/mysqli.query.php - 另外,您不能将
mysql_与mysqli_API 混合使用。您应该向我们展示更多代码以及您用于连接的 API。