php查询(当用WHERE条件时不行)

来源:百度知道 编辑:UC知道 时间:2024/06/19 17:32:58
<?php

include('config.php');
$conn=mysql_connect( $mysql_server_name,$mysql_user_name,$mysql_password);

$sql = 'SELECT * FROM `device` LIMIT 0, 30 ';

$result=mysql_db_query($mysql_database,$sql,$conn);

while($row=mysql_fetch_row($result))
{
print_r($row);
?>
<table><th><td><?=$row[0]?><br><?=$row[4]?></td></th></table>
<?
}
mysql_free_result($result);
?>

这个代码可以正常搜出东东,可是换成$number=$_POST['number'];$sql = 'SELECT * FROM `device` where number like '%$number%' LIMIT 0, 30 '; 就出错请问怎么改?

$sql = "SELECT * FROM `device` where number like '%$number%' LIMIT 0, 30 ";

或者

$sql = 'SELECT * FROM `device` where number like "%'.$number.'%" LIMIT 0, 30 ';

$sql = 'SELECT * FROM `device` where number like '%$number%' LIMIT 0, 30 '; 就出错请问怎么改?

单引号里的变量 在PHP里不会被换成变量的值。

你echo 一下就知道。
所以要在SQL句子里用变量,最好还是在两边加双引号。

$sql = "SELECT * FROM `device` where number like '%$number%' LIMIT 0, 30 ";