使用2个变量在PHP中选择mysql

使用2个变量在PHP中选择mysql,php,mysql,Php,Mysql,如何使此whitout php注意到错误: $id = $_GET['id']; $name = $_POST['name']; $sql = mysql_query("SELECT * FROM table WHERE id = '$id' or name = '$name'); 以及如何一次在多个表中进行一次搜索 谢谢您的查询字符串不完整。最后你需要一个双引号 $sql = mysql_query("SELECT * FROM table WHERE id = '$id' or name

如何使此whitout php注意到错误:

$id = $_GET['id'];
$name = $_POST['name'];

$sql = mysql_query("SELECT * FROM table WHERE id = '$id' or name = '$name');
以及如何一次在多个表中进行一次搜索


谢谢

您的查询字符串不完整。最后你需要一个双引号

$sql = mysql_query("SELECT * FROM table WHERE id = '$id' or name = '$name'");
                   ^                                                      ^
要同时搜索多个表,请添加多个以逗号分隔的表

"SELECT table1.field, table2.field FROM table1, table2"

要搜索多个表,您可以进行一系列查询并将它们全部返回。你说的“省略php注意错误”是什么意思?这不是一个错误。不要忘了做你的
mysql\u real\u escape\u string()
。你想知道如何在多个表中搜索,还是你在询问你的错误?@Ken:我想当
$\u GET['id']
$\u POST['name']
尚未定义时,它会产生一个通知。你缺少一个结束
$sql
行上的
。@animuson如果它们没有定义,他为什么要调用它们?这回答了我相信他想问的部分问题+1非常感谢您的回答。第一个问题很完美,但“搜索独角兽生活的地方…;-)仍然在我的脑海中:)。好的,我的意思是:我想用“$sql=mysql”查询在许多表中进行搜索(“选择*来自汽车、人、汽车所在的城市。reg=”$Search'| | people.phone=”$Search'| | city.address=“$Search”)`有可能做到这一点吗?对使用PHP进行DB搜索有什么建议吗?谢谢,lotIt应该会起作用。只需确保您逃避输入以防止SQL注入。此外,我相信MySQL中正确的语法是“或”,而不是“或”。
$id = isset($_GET['id']) ? $_GET['id'] : null;
$name = isset($_POST['name']) ? $_POST['name'] : null;

if($id !== null || $name !== null) {
  $sql = mysql_query("SELECT * FROM table WHERE id = '$id' or name = '$name'");
}