php – 以下查询有什么问题

$name=$_GET['name'];
$sql="SELECT `productname`, `price` FROM `stock` WHERE productname=".$name."
 and ( userid=".$_SESSION['user_id']." or userid='100')";

基本上我从一个页面获取产品名称.我传递查询,其中productname是$name,userid是当前签名的或admin用户ID(100).

但我收到了错误

Notice: Undefined variable: productname in /path_to_file.PHP on line
431

line 431: <?PHP echo $productname;?>

其中$productname = $row [‘productname’];

我觉得SQL查询有问题.但有什么不对?

解决方法:

$name = $_GET['name'];
$sql = sprint("SELECT `productname`, `price` FROM `stock` WHERE productname='%s'
    and ( userid=%d or userid=100);",
    MysqL_escape_string($name), intval($_SESSION['user_id']));

您需要在单引号中包装productname =’%s’.往上看.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...