PHP 中的多个 WHERE 条件
Multiple WHERE condition in PHP
我正在使用 php 中的 post 方法从 python 脚本中获取数据,并将该数据存储在数据库中。
PHP 脚本:
<?php
if (isset($_POST['sign'])) {
$sign = $_POST['sign'];
$msg = $_POST['msg'];
echo $sign . " " . $msg ;
$sql1 = "INSERT INTO data1 (message, sign)
VALUES ('$msg','$sign')";
if ($conn->query($sql1) === TRUE) {
echo "New record created successfully";
}
else {
echo "Error: " . $sql1 . "<br>" . $conn->error;
}
}
else {
echo "";
}
$sql2 = "SELECT message FROM data1 WHERE id= (SELECT max(id) FROM data1) AND sign= '".$sign."'";
$result = $conn->query($sql2);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "message: " . $row["message"];
$c= escapeshellcmd('python new.py' .$row["message"] );
echo "<br>";
}
}
else {
echo "0 results";
}
?>
数据完美地存储在数据库中,但在执行读取查询后出现错误“Undefined variable : sign”
如果有人对此有任何想法,请分享谢谢。
您的代码仅在 if (isset($_POST['sign']))
为真时才定义变量 $sign
(当 POST 数据的键为 sign
时),但您使用的是 $sign
第二个 SQL 查询中的变量,它在 if
语句之外。
$sql2 = "SELECT message FROM data1 WHERE id= (SELECT max(id) FROM data1) AND sign= '".$sign."'";`
为了修复未定义的变量错误,您应该将这段代码移到if
正文中。
<?php
if (isset($_POST['sign'])) {
$sign = $_POST['sign'];
$msg = $_POST['msg'];
echo $sign . " " . $msg ;
$sql1 = "INSERT INTO data1 (message, sign)
VALUES ('$msg','$sign')";
if ($conn->query($sql1) === TRUE) {
echo "New record created successfully";
}
else {
echo "Error: " . $sql1 . "<br>" . $conn->error;
}
$sql2 = "SELECT message FROM data1 WHERE id= (SELECT max(id) FROM data1) AND sign= '".$sign."'";
$result = $conn->query($sql2);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "message: " . $row["message"];
$c= escapeshellcmd('python new.py' .$row["message"] );
echo "<br>";
}
}
else {
echo "0 results";
}
}
else {
echo "";
}
我正在使用 php 中的 post 方法从 python 脚本中获取数据,并将该数据存储在数据库中。
PHP 脚本:
<?php
if (isset($_POST['sign'])) {
$sign = $_POST['sign'];
$msg = $_POST['msg'];
echo $sign . " " . $msg ;
$sql1 = "INSERT INTO data1 (message, sign)
VALUES ('$msg','$sign')";
if ($conn->query($sql1) === TRUE) {
echo "New record created successfully";
}
else {
echo "Error: " . $sql1 . "<br>" . $conn->error;
}
}
else {
echo "";
}
$sql2 = "SELECT message FROM data1 WHERE id= (SELECT max(id) FROM data1) AND sign= '".$sign."'";
$result = $conn->query($sql2);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "message: " . $row["message"];
$c= escapeshellcmd('python new.py' .$row["message"] );
echo "<br>";
}
}
else {
echo "0 results";
}
?>
数据完美地存储在数据库中,但在执行读取查询后出现错误“Undefined variable : sign” 如果有人对此有任何想法,请分享谢谢。
您的代码仅在 if (isset($_POST['sign']))
为真时才定义变量 $sign
(当 POST 数据的键为 sign
时),但您使用的是 $sign
第二个 SQL 查询中的变量,它在 if
语句之外。
$sql2 = "SELECT message FROM data1 WHERE id= (SELECT max(id) FROM data1) AND sign= '".$sign."'";`
为了修复未定义的变量错误,您应该将这段代码移到if
正文中。
<?php
if (isset($_POST['sign'])) {
$sign = $_POST['sign'];
$msg = $_POST['msg'];
echo $sign . " " . $msg ;
$sql1 = "INSERT INTO data1 (message, sign)
VALUES ('$msg','$sign')";
if ($conn->query($sql1) === TRUE) {
echo "New record created successfully";
}
else {
echo "Error: " . $sql1 . "<br>" . $conn->error;
}
$sql2 = "SELECT message FROM data1 WHERE id= (SELECT max(id) FROM data1) AND sign= '".$sign."'";
$result = $conn->query($sql2);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "message: " . $row["message"];
$c= escapeshellcmd('python new.py' .$row["message"] );
echo "<br>";
}
}
else {
echo "0 results";
}
}
else {
echo "";
}