Php 在发送表单之前,请检查maakartikel是否扩展到我的数据库中
我的PHP代码: 我希望在我发送表格之前,它会检查maakartikel是否在我的数据库中扩展。如果它已经扩展,则必须给出一个错误:This maakartikel extends。如果没有,则必须将其添加到数据库中Php 在发送表单之前,请检查maakartikel是否扩展到我的数据库中,php,mysqli,Php,Mysqli,我的PHP代码: 我希望在我发送表格之前,它会检查maakartikel是否在我的数据库中扩展。如果它已经扩展,则必须给出一个错误:This maakartikel extends。如果没有,则必须将其添加到数据库中 <?php $con = mysqli_connect("localhost", "csa", "csa", "csa"); // Check connection if (mysqli_connect_errno()) { echo "Failed to
<?php
$con = mysqli_connect("localhost", "csa", "csa", "csa");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL:" . mysqli_connect_error();
}
$sql= "INSERT INTO mart (Maakartikel, Omschrijving)
VALUES
('$_POST[maakartikel]', '$_POST[omschrijving]') ";
if (!mysqli_query($con, $sql))
{
die('Error:' . mysqli_errno($con));
}
echo "1 record added";
mysqli_close($con);
?>
尝试以下解决方案
首先写“选择”查询检查天气记录是否存在
若记录退出,则不插入,否则在表中插入数据
比如说
$select= mysql_query("select * from table where name='xyz'");
$count = mysql_num_rows($select)
if($count>1)
{
echo "already exits";
}
else
{
// insert record
}
注意:这里我使用的是mysql函数,而不是mysqli集,因此您可以更改任何函数,因为您对mysqli了解不多
<?php
$con = mysqli_connect("localhost", "csa", "csa", "csa");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL:" . mysqli_connect_error();
}
// first check in databse befor to insert Maakartikel
$check_record = "SELECT * from mart where Maakartikel = '$_POST[maakartikel]'";
$query_execute = mysqli_query($check_record);
$num_rows = mysqli_num_rows($query_execute);
if ($num_rows > 0) {
echo "Error: This maakartikel extends";
exit();
} else {
//if not found in database then insert record.
$sql = "INSERT INTO mart (Maakartikel, Omschrijving)
VALUES
('$_POST[maakartikel]', '$_POST[omschrijving]') ";
if (!mysqli_query($con, $sql)) {
die('Error:' . mysqli_errno($con));
}
echo "1 record added";
}
mysqli_close($con);
?>
查看。您可以将它与您的insert
语句一起使用,这样它就不会插入重复的语句。您想检查数据库中是否存在maakartikel
,没有插入权限吗?我有一个表单,您必须提供一个maakartikel。这个maakartikel大约是8个数字。如果这个maakartikel已经存在,它必须给出一个错误。如果没有,它会将其添加到数据库中。此代码中有SQL注入漏洞,请在使用之前始终转义或参数化您的用户输入。有人能告诉我如何修复它的代码吗?我马上就要,谢谢泽山。只有一个错误$query\u execute=mysqli\u query($check\u record);这是错误的。它必须是$query\u execute=mysqli\u query($con,$check\u record);
$check = "select maakartikel from your_table_name";
$res = mysqli_query($check);
if($res->rowCount() > 0){
$sql= "INSERT INTO mart (Maakartikel, Omschrijving)
VALUES
('$_POST[maakartikel]', '$_POST[omschrijving]') ";
if (!mysqli_query($con, $sql))
{
die('Error:' . mysqli_errno($con));
}
echo "1 record added";
}else {
echo "record already exist";
}