php问题,提示expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' 错误

来源:百度知道 编辑:UC知道 时间:2024/09/25 07:01:31
一共2个页面,第一个为搜索,第二个用来显示结果,第一个页面无问题。使用mysql。第二个页面代码如下(省略头尾代码)其中$_POST已经取得返回值(不为空)。错误提示$manufacturer_id = $row['manufacturer_id']这一行;
数据库本身没有错误,manufacturer_id为主键。如果单单显示数据库内容则一点问题都没有。但是偏偏搜索却总是提示以上错误。请高人指教,错误可能出在哪里?
$get_mn = $_POST['mmanufacturer_name'];
$get_pe = $_POST['mcot_portable'];

$get_mn = trim($get_mn);
$get_pe = trim($get_pe);

$link = mysqli_connect('localhost', 'student', 'mmst12009', 'assignment3');

$query = "SELECT *
FROM manufacturers, cots";

if($get_mn!="")
{
$query .="WHERE manufacturers.manufacturer_name = '$get_mn'";
}
if($get_pe!="")
{
$query .="AND cots.cot_portable = '$get_pe'";
}
$result = mysqli_query($link, $query);

$number_of_rows = mysqli_num_rows($result);

mysqli_close($link);
if($number_of

你说是下面这行报错:
$manufacturer_id = $row['manufacturer_id'];
你肯定你的数据库查询结果里面有manufacturer_id这个列名吗,请检查。

另外你使用下面的语句形式:
echo <<<END
....
END;

这种语句第一行的END之后不能有任何东西,最好空格都不留,最后一行的END前面不能有任何东西,空格、制表等都删除,你试试看。

$query = "SELECT *
FROM manufacturers, cots";

if($get_mn!="")
{
$query .="WHERE manufacturers.manufacturer_name = '$get_mn'";
}
if($get_pe!="")
{
$query .="AND cots.cot_portable = '$get_pe'";
}
后面两个$query开头少个空格