0

我正在使用 $_GET 函数在整个表单中传送数据库字段。但是,当我尝试从数据库中提取信息时遇到了一个绊脚石:

<?php
$prodname=$_GET["q"];
?>

 <h3>Product Name: <u><?php echo $prodname; ?></u></h3><br />
  <?php
$con = mysql_connect("localhost","cl49-vogalcms","vogalcms");
if (!$con) 
  {
   die('Could not connect: ' . mysql_error());
   }

  $prodname=$row['prodname'];
 $catagory=$row['catagory'];

@mysql_select_db("cl49-XXX",$con)or die('Unable to select database ln 60:'.mysql_error());
$result=mysql_query("SELECT * FROM products WHERE prodname=$prodname")or die('ln 61 :'.mysql_error());
$cnt=$_COOKIE["count"];


setcookie("user",$myid,time()+10000);
mysql_close($con);
?>

  <form name="newad" method="post" enctype="multipart/form-data"  action="drtsavepic.php?q=<?php echo"$prodname"; ?>">  <br> <Br>
   <input type="file" name="image">
<input name="Submit" type="submit" value="Upload image">

  </form>

当我运行此代码时,出现以下错误

ln 61 : 你的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 '' 附近使用正确的语法

任何人都可以对这个问题有所了解吗?

4

2 回答 2

4

尝试更换这个 mysql_query("SELECT * FROM products WHERE prodname=$prodname")

经过

mysql_query("SELECT * FROM products WHERE prodname='".$prodname."'")
于 2013-07-31T11:53:27.547 回答
1

用引号将您的 productname 变量括起来,

像这样

$result=mysql_query("SELECT * FROM products WHERE prodname='$prodname'")or die('ln 61 :'.mysql_error());

因为您的产品名称可能是两个带有空格的单词,因此查询失败

于 2013-07-31T11:52:14.420 回答