0
每次我单击提交保存到数据库中的数组中元素的名称时,我正在对变化进行投票。在当前回显元素后面显示的元素被输入到数据库中,而不是我单击的元素。有关如何使数组中的元素保存到数据库中的任何建议?我似乎无法弄清楚。随机数组并插入到数据库中;在当前之前插入元素
我试过使用lists
和unshift
仍然得到相同的结果。
可以说回声显示在窗体中的值为example2。我点击example2但example1被保存在数据库中。我不知道如何解决这个问题。谢谢您的帮助。
这里是我的代码:
的阵列设置我用:
$array = array("example1","example2","example3");
shuffle($array);
foreach($array as $random);
<?php echo array_pop($random);?>
HTML:
<tbody>
<tr>
<form action="Voting_action.php" method="post">
<td>
<input type="submit" class="buttontable1" value="<?php echo $random ?>" name="name"/>
</td>
</form>
</tr>
</tbody>
PHP:动作
$mysqli = new mysqli("", "", "", "");
if ($mysqli->connect_error) {
echo "Failed to connect to MySQL: (" . $mysqli->connect_error . ") " . $mysqli->connect_error;
}
if (!$mysqli->query("INSERT INTO table(id, name, votes) VALUES (id, '".$random."', '".$votes."')")) {
echo "Multi-INSERT failed: (" . $mysqli->errno . ") " . $mysqli->error;
}
非常感谢我一定会在将来做所有事情抱歉,如果这是一个愚蠢的问题,我还是PHP新手。我会让你知道它是否有效 – vince 2013-04-06 16:49:43
奇妙的作品非常感谢你,我被卡住了! – vince 2013-04-06 16:57:24
'if(!($ stmt = $ mysqli-> prepare(“INSERT INTO table(id,name,votes)VALUES(id,'”。$ _ POST ['name']。'','“。$ votes。 “')”))){ echo“Prepare failed:(”。$ mysqli-> error。“)”。 $ mysqli->的错误; } $ id = 1; if(!$ stmt-> bind_param(“isi”,$ id,$ _POST ['name'],$ votes)){ echo“绑定参数失败:(”。$ stmt-> error。“)” 。 $ stmt->的错误; } if(!$ stmt-> execute()){ echo“执行失败:(”。$ stmt-> error。“)”。 $ stmt->的错误; } $ stmt-> close();'这些安全吗? – vince 2013-04-06 17:20:45