我正在尝试将MySQL语句写入变量$ RegionString,但我根本无法使其工作。我看过明显的潜在问题;如果我试图让它回显并且数据库配置脚本出现在页面上的这段代码之上,那么SQL在其他地方工作得很好。
<?php
$Brand= $_GET["Brand"];
$ProductDescription= $_GET["ProductDescription"];
$RegionString = mysql_result(mysql_query("SELECT Region AS RegionString FROM WebDatabaseText WHERE (((WebDatabaseText.ProductDescription)='$ProductDescription') AND ((WebDatabaseText.Brand)='$Brand') AND ((WebDatabaseText.Language)='english') AND ((WebDatabaseText.Website)='secognac.com') AND Region Is Not Null )"),0);
?>
上面的代码页面似乎没有破坏或出错 - 一切运行正常,但echo $ RegionString只是没有返回任何内容。
答案 0 :(得分:3)
它应该是这样的:
<?php
$Brand= mysql_real_escape_string($_GET["Brand"]);
$ProductDescription= mysql_real_escape_string($_GET["ProductDescription"]);
$result = mysql_query("SELECT Region AS RegionString FROM WebDatabaseText WHERE (((WebDatabaseText.ProductDescription)='$ProductDescription') AND ((WebDatabaseText.Brand)='$Brand') AND ((WebDatabaseText.Language)='english') AND ((WebDatabaseText.Website)='secognac.com') AND Region Is Not Null )"),0);
$row = mysql_fetch_row($result);
$RegionString = $row[0];
echo $RegionString;
?>
小心!如果你处于这个级别,你仍然有时间习惯使用PDO,而不是这个过时且不安全的mysql_query事情。