简体   繁体   English

检查行数据库中是否已经存在编号

[英]Check if Number already exist in row mysql database

<?php
date_default_timezone_set('Asia/Manila');
$conn=mysql_connect("localhost","root","");
    mysql_select_db("dbposo",$conn);


if(isset($_POST['add']))
{


    if( empty($_POST['fname']) || empty($_POST['mname']) || empty($_POST['lname']))
    {
        echo "<script>alert('Please fill up all the fields!')</script>";
        header("Refresh: 0;url=admin_publicviolation.php");
    }


else
    {
        $number=$_POST['number'];
        $fname=$_POST['fname'];
        $mname=$_POST['mname'];
        $lname=$_POST['lname'];
        $age=$_POST['age'];
        $gender=$_POST['gender'];
        $violation=$_POST['violation'];
        $officer=$_POST['officer'];
        $offenses=$_POST['offenses'];
        $date=date("y-m-d");
        $time=date("H:i:s");
        $price=$_POST['price'];

        mysql_query("insert into tblcitizen(number,fname,mname,lname,age,gender,violation,officer,offenses,date,time, price) values('$number','$fname','$mname', '$lname', '$age', '$gender', '$violation' , '$officer', '$offenses','$date','$time','100')",$conn) or die(mysql_error());

        echo "<script>alert('Successfully Recorded, First penalty: 100php!')</script>";
        header("Refresh: 0;url=admin_publicviolation.php");
    }

}

?>

i want to reject registration if the $number is already exists in the database, somebody help me? 如果数据库中已经存在$ number,我想拒绝注册,有人可以帮助我吗? can't figure it out. 无法弄清楚。 i can't use some coding method. 我不能使用某些编码方法。 don't know how to use other 不知道如何使用其他

ALTER TABLE tblcitizen ADD CONSTRAINT tblcitizen UNIQUE (number);

Now, if the number already exists, the insert will fail and you'll need to check mysql_error to know how to proceed. 现在,如果该数字已经存在,则插入将失败,并且您需要检查mysql_error以了解如何继续。 If you're using the non-deprecated mysqli or PDO interfaces, the method to check are mysqli_error or PDO::errinfo which work the same way. 如果使用未弃用的mysqli或PDO接口,则检查方法是mysqli_error或PDO :: errinfo ,它们的工作方式相同。

first use the select query which is AND please use mysqli not mysql 首先使用的选择查询是AND请使用mysqli而不是mysql

$query = mysql_query("SELECT * FROM tblcitizen WHERE number = '".$number."'");
$fetch_rows = mysql_num_rows($query);
if ( $fetch_rows > 0 )
{
  // then do something
} else {
     mysql_query("insert into tblcitizen(number,fname,mname,lname,age,gender,violation,officer,offenses,date,time, price) values('$number','$fname','$mname', '$lname', '$age', '$gender', '$violation' , '$officer', '$offenses','$date','$time','100')",$conn) or die(mysql_error());

    echo "<script>alert('Successfully Recorded, First penalty: 100php!')</script>";
    header("Refresh: 0;url=admin_publicviolation.php");
}
<?php
date_default_timezone_set('Asia/Manila');
$conn=mysql_connect("localhost","root","");
    mysql_select_db("dbposo",$conn);


if(isset($_POST['add']))
{


    if( empty($_POST['fname']) || empty($_POST['mname']) || empty($_POST['lname']))
    {
        echo "<script>alert('Please fill up all the fields!')</script>";
        header("Refresh: 0;url=admin_publicviolation.php");
    }



// Check if  already exists 
 $number = $_REQUEST['number']; 
$result = mysql_query("SELECT * FROM tblcitizen WHERE number = '$number' "); 

if (mysql_num_rows($result)==0) { 

// Go ahead and insert everything in table
    $number=$_POST['number'];
        $fname=$_POST['fname'];
        $mname=$_POST['mname'];
        $lname=$_POST['lname'];
        $age=$_POST['age'];
        $gender=$_POST['gender'];
        $violation=$_POST['violation'];
        $officer=$_POST['officer'];
        $offenses=$_POST['offenses'];
        $date=date("y-m-d");
        $time=date("H:i:s");
        $price=$_POST['price'];

        mysql_query("insert into tblcitizen(number,fname,mname,lname,age,gender,violation,officer,offenses,date,time, price) values('$number','$fname','$mname', '$lname', '$age', '$gender', '$violation' , '$officer', '$offenses','$date','$time','100')",$conn) or die(mysql_error());

        echo "<script>alert('Successfully Recorded, First penalty: 100php!')</script>";
        header("Refresh: 0;url=admin_publicviolation.php");





  echo 'Your data was sent'; 



}
else
    {
    echo "Number already exists ";
    }

}

?>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM