我目前正在学习PHP编程,
我想在输入的数据存在时显示错误。 任何人都可以展示一些如何运作的例子吗?
以下是我使用的代码:
<?php
ob_start();
session_start();
require '../database/database.php';
// require '../database/inc_config2.php';
require ('p_nav.php');
if( !isset($_SESSION['user']) ) {
header("Location: index.php");
exit;
}
// select loggedin users detail
$res=mysql_query("SELECT * FROM users WHERE userId=".$_SESSION['user']);
$userRow=mysql_fetch_array($res);
//Variable input data
//include_once 'dbconfig.php';
if(isset($_POST['btn-save']))
{
// variables for input data
$pcat = $_POST['pcat'];
if($pcat=='')
{
//javascript use for input checking
echo"<script>alert('Please enter Category')</script>";
// echo 'Empty Category';
header ("location:..\product\p_cat.php");
exit();
}
// variables for input data
//check if category is exist
//here query check weather if user already registered so can't register again.
$check_pcat_query="select * from pcategory WHERE pcat='$pcat'";
// $check_user_query="select * from users WHERE user_name='$user_name'";
$run_query=mysqli_query($dbcon,$check_pcat_query);
if(mysqli_num_rows($run_query)>0)
{
//echo "<script>alert('Category $pcat is already exist in our database, Please try another one!')</script>";
exit();
}
// sql query for inserting data into database
//temporary disabled
$sql_query = "INSERT INTO pcategory(pcat) VALUES('$pcat')";
mysql_query($sql_query);
//echo "Supplier Added Successfully";
//header ("location:..\product\index.php");
exit();
/*
$insert_user="insert into pcategory (pcat) VALUE ('$pcat')";
if(mysqli_query($dbcon,$insert_user))
{
// echo"<script>window.open('welcome.php','_self')</script>";
echo "Welcome";
} */
}
// sql query for inserting data into database
?>
答案 0 :(得分:0)
有一个错误,你正在使用MySQL和MySQLi,如果你在实时服务器上工作,使用这两个都是致命的错误。只关注MySQLi,因为MySQL已被正式弃用,不再受支持。
现在回答你的问题。你的逻辑似乎很好。这就是你必须实现的方式:
使用上述值并检查数据库中是否存在记录(此处使用SELECT语句)
如果mysqli_num_rows()给出的结果大于0; (a)它意味着记录已经存在 (b)否则,执行INSERT语句