比如说,有两个名为的数据库表
user
id name
-- -----
1 Mike
2 Bob
3 Tony
4 Christina
5 James
product
product_id chooser_id chooser_name selection_status
---------- ---------- ------------ -----------------
1 1 Mike 0
2 2 Bob 1
3 3 Tony 0
4 3 Tony 1
5 3 Tony 1
这里上product
表中可用的数据是由表的登录用户user
根据以下mysql语法插入的。
mysql_select_db($database_XYZ, $XYZ);
$query_test = "SELECT user.id, user.name, product.product_id, product.chooser_id, product.chooser_name, product.selection_status FROM user, product WHERE user.id = '$_SESSION[userid]' AND user.id = product.chooser_id AND product.selection_status = 1 ";
$test = mysql_query($query_$test, $XYZ) or die(mysql_error());
$row_test = mysql_fetch_assoc($test );
$totalRows_test = mysql_num_rows($test );
现在,如果用户Tony想要检查他在登录会话中插入的表的selection_status
(0
&1
是标记值),product
具体取决于以下语法
if (isset($row_test ["selection_status"]) == "1") {
echo $row_test ["selection_status"];
}
语法异常返回1
,因为他在检查数据时仍处于登录状态,并且它从表的以下部分1
获取意外似乎与查询匹配的所有行:mysql
product
product_id chooser_id chooser_name selection_status
---------- ----------- ------------- -----------------
4 3 Tony 1
5 3 Tony 1
如何使用替代php条件语句在会话数组中仅调用/检查一行mysql数据库,以便在每次检查或调用中仅返回一行数据?
product_id chooser_id chooser_name selection_status
---------- ----------- ------------- -----------------
4 3 Tony 1
或者
product_id chooser_id chooser_name selection_status
---------- ----------- ------------- -----------------
5 3 Tony 1
请注意,mysql LIMIT
等WHERE product_id=4
将不适用于此处,因为数据应通过会话填充到此处。