1

我正在尝试进行查询!我在这里有这个查询:

$data = mysql_query( "SELECT date, time,location,type_of_payment,
        basket_information, user_id FROM retailer")

我也有这个变量:

$getuser[0]['user_id']

我需要设置一个子句,但我在编写查询时遇到了困难。有人可以帮我编辑吗?

$data = mysql_query( "SELECT date, time,location,type_of_payment,
        basket_information, user_id FROM retailer 
        WHERE user_id = $getuser[0]['user_id']")

谢谢..

4

3 回答 3

2
$data = mysql_query( "SELECT date, time,location,type_of_payment,
                      basket_information, user_id FROM retailer 
                      WHERE user_id=".$getuser[0]['user_id'])

而且,您应该真正使用PDOormysqli而不是mysql.

于 2012-08-19T17:20:13.357 回答
2

您遇到了 PHP 解析器故障:

$data = mysql_query( "SELECT [..snip..]  WHERE user_id=$getuser[0]['user_id']")

您正在尝试将多维数组(罢工#1)插入双引号字符串,同时使用带引号的数组键(罢工#2)。PHP 的解析器并不贪心,也不会“看到”['user_id']作为数组引用的一部分。这就是为什么有{}. 另外,在双引号字符串中引用数组引用中的键会产生警告,所以...试试这个:

$data = "....... WHERE user_id={$getuser[0]['user_id']}")
                               ^---                   ^---
于 2012-08-19T17:21:08.660 回答
1

在执行您可以执行的代码之前,您无法读取 SQL 代码中的数组:

$user = $getuser[0]['user_id'];
$data = mysql_query( "SELECT date, time,location,type_of_payment,
                      basket_information, user_id FROM retailer 
                      WHERE user_id = $user");
于 2012-08-19T17:21:40.027 回答