在php

时间:2016-10-05 18:17:54

标签: php mysql

我正在创建一个小的php网页,我打算用它来跟踪服务台接听电话的主题。我的数据库有3个重要字段:每个主题的ID,名称和金额。

在我的页面上,我有一个带有下拉列表的表单,您可以在其中选择一种呼叫并单击“提交”。这个想法是每次你点击提交页面重新加载,并且数据库中所选id的数量增加1。

表单为我提供了每次通话的ID和名称:

<form method="post" action="index.php">
<select class="select" id="calltype" name="calltype">
<?php 
if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        echo "<option value=".$row["ID"].">".$row["NAAM"]."</option>".PHP_EOL;
    }
}
?>
</select></br>
<input class="input" type="submit" name="Submit" value="Submit">
</form>

这部分有效,如果我回复$ _POST [&#39; calltype&#39;]我会得到正确的ID。我无法上班的是更新声明,我想提高计数器,例如:

if(isset($_POST['calltype']{
mysqli_query("UPDATE calls SET amount=(amount+1), WHERE id = $_POST['calltype']");
}

我该怎么做?我尝试了几种方法,但无法使其正常工作

1 个答案:

答案 0 :(得分:0)

除了额外的逗号之外,使用POST数组进行插值是有风险的。也许试试:

mysqli_query("UPDATE calls SET amount=(amount+1) WHERE id = " . mysqli_real_escape_string($link, $_POST['calltype']) . " ;");