如何解决php代码结构中的问题
| 我有一个动态字段,最多包含4个输入。 如果我写了数据库中存在的4个输入,我会得到 input0 company // $num0
\"error\" = $num1
input1 company // $num2
\"error\" = $num3
input2 company // $num4
\"error\" = $num5
input3 company // $num6
但是,如果数据库中不存在该命令,则由于不播放while,因此更改了第一个输入的顺序:
\"error\" = $num0
input1 company // $num1
and the order is changed....//problem
主要问题是我需要知道数据库中是否存在输入。
脚本
function checkEmployeer($db,$form) {
$i=0;
foreach ($form[\'job\'] as $value) {
$sql = $db -> prepare(\"SELECT `employer` FROM `employer` WHERE employer=?\");
$sql -> bind_param(\'s\',$value);
$sql -> execute();
while ($sql -> fetch()) { //problem
${\'num\'.$i++} = $value; //problem - $num0 = $value if exists in DB
}
${\'num\'.$i++} = \"error\"; //problem - $num0 or $num1 = depends of while result...
}
for ($i = 0; $i < sizeof($form[\'job\']); $i++) {
if (${\'num\'.$i} != \"error\" && ${\'num\'.$i} == $form[\'job\'][$i]) {
echo (\"already exists in the db\".$i);
}
else {
$sql = $db -> prepare(\"INSERT INTO `database_charts`.`employer` (`employer`) VALUES (?)\");
$sql -> bind_param(\'s\',$form[\'job\'][$i]);
$sql->execute();
echo (\"insert\");
}
}
}
我该如何解决?我不知道...
解决方法
为雇主创建一个密钥,并在不检查任何内容的情况下插入它,受影响的_rows()会告诉您该密钥是否已插入。
如果将“ 3”。“ 4”定义为键,则不会重复。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。