首页 > 解决方案 > 如何比较两个值?

问题描述

从我的代码中,我可以第一次输入一个值(当数据库为空时),第二次即使对于具有不同工厂名称的不同用户也不起作用。如果用户 1 第一次输入像 Apple 这样的植物名称,它会被保存,但以后不会。当我想比较两个值时,这是编写 MySQL 代码的正确方法吗?

$plant = $_SESSION['plant'];
$user = $_SESSION['user'];
$q = mysqli_query($con, "select plantname='$plant' from tree where
user = '$user'");
if (mysqli_num_rows($q) > 0) {
  Header('Location: home.php');
  exit;
} else {
  $query = "insert into tree(plantname,user)
  values('$plant', '$user')";
  $q = mysqli_query($con, $query)or die("Could Not Perform the Query");
  Header('Location: home.php');
  exit;
}

标签: phpmysql

解决方案


您误认为您query必须在选择表格后通过查询条件from

$plant=$_SESSION['plant'];
$user=$_SESSION['user'];

$q = mysqli_query($con,"select * from tree where user='$user' AND plantname='$plant'");
if (mysqli_num_rows($q)>0){
    Header( 'Location: home.php' );
    exit;
}else{
    $query="insert into tree(plantname,user) values ('$plant','$user')";
    $q=mysqli_query($con,$query)or die("Could Not Perform the Query");
    Header( 'Location: home.php' );
    exit;
}

推荐阅读