PHP、MYSQL Web表单不会使用if(isset($\u POST方法和mysqli)更新自身
我正在将Access数据库转换为MYSQL 我慢慢地朝着完成的方向努力。我所要做的就是在表中的一行显示后更新它。下面的代码将显示表和内容,没有问题 我尝试了不同的方法,这是我得到的最接近的方法。在浏览器上显示表后,我更改字段中的数据并单击“更新”,但它不会更新。不会发生错误,只是不会更新 我怀疑问题出在以mysqli_query($con,$updatequery)开头的行上PHP、MYSQL Web表单不会使用if(isset($\u POST方法和mysqli)更新自身,php,mysql,mysqli,isset,Php,Mysql,Mysqli,Isset,我正在将Access数据库转换为MYSQL 我慢慢地朝着完成的方向努力。我所要做的就是在表中的一行显示后更新它。下面的代码将显示表和内容,没有问题 我尝试了不同的方法,这是我得到的最接近的方法。在浏览器上显示表后,我更改字段中的数据并单击“更新”,但它不会更新。不会发生错误,只是不会更新 我怀疑问题出在以mysqli_query($con,$updatequery)开头的行上 我发现的主要问题之一是 WHERE-idcalls'$\u POST[hidden]' 应该是 其中idcalls='$
我发现的主要问题之一是
WHERE-idcalls'$\u POST[hidden]'
应该是
其中idcalls='$\u POST[hidden]'
但这肯定还有其他一些安全问题,但这是另一个主题。请使用预先准备好的语句。请!这段代码是否已上线?如果是,请立即取消部署。安全是编程中的主要因素。我强烈建议您使用mvc结构创建应用程序。这将有助于分离e php中的html。
mysqli\u error()
将告诉您缺少的=
。您需要使用准备好的语句,而不是将变量连接到查询中。请参阅。
<html>
<body>
<?php
$servername = "localhost";
$username = "root";
$password = "password";
$dbname = "CallsDB";
// Create connection
$con = @new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($con->connect_error) {
echo "Error: " . $con->connect_error;
exit();
}
if(isset($_POST['update'])){
$updatequery = "UPDATE calls SET idcalls='$_POST[idcalls]',
callscompanyname='$_POST[callscompanyname]',
callsemployeename='$_POST[callsemployeename]',
callsdate='$_POST[callsdate]', callsphonenumber='$_POST[callsphonenumber]',
callsstatus='$_POST[callsstatus]' WHERE idcalls'$_POST[hidden]'";
mysqli_query($con,$updatequery);
}
$sql = "SELECT * FROM calls";
$mydata = mysqli_query($con, $sql);
echo "<TABLE BORDER=1><TR><TD>Call_id</FONT></TD><TD>Company</TD>
<TD>Name</TD><TD>Date</TD><TD>Phone</TD><TD>Status</TD><td></td></TR>";
while ($record = mysqli_fetch_array($mydata))
{
echo "<form action=edit_specific_call.php method=post>";
echo "<tr>";
echo "<td>" . "<input type=text name=idcalls value=" . $record['idcalls'] .
" ></td>";
echo "<td>" . "<input type=text name=callscompanyname value=" .
$record['callscompanyname'] . " ></td>";
echo "<td>" . "<input type=text name=callsemployeename value=" .
$record['callsemployeename'] . " ></td>";
echo "<td>" . "<input type=text name=callsdate value=" .
$record['callsdate'] . " ></td>";
echo "<td>" . "<input type=text name=callsphonenumber value=" .
$record['callsphonenumber'] . " ></td>";
echo "<td>" . "<input type=text name=callsstatus value=" .
$record["callsstatus"] . " ></td>";
echo "<td>" . "<input type=hidden name=hidden value=" . $record['idcalls'] .
" ></td>";
echo "<td>" . "<input type=submit name=update value=update" . " ></td>
</tr>";
echo "</form>";
}
echo "</table>";
mysqli_close($con);
?>
</body>
</html>