繁体   English   中英

If语句在PHP会话和SQL中无法正常工作

[英]If statement not working as expected with PHP sessions and SQL

因此,在我的会话中是一个表,其中包含用户添加的各种序列号。还有一个数据库,其中包含该序列号的信息。

我要我的代码执行的操作是,对于会话中的每个序列,从数据库中提取相应的数据。 现在,我将仅回显一个字符串。

因此,我想这样做,您必须遍历会话中的每个序列,并且对于每个序列,您必须检查db中是否存在相同的序列,如果存在,则回显某些内容。

问题是它可以工作,但是当会话中有多个串行时,它仅在if循环最后运行一次。

当会话中有1,2,3和4个序列时,这就是回显的原因。 http://pastebin.com/BcWMZ542

任何帮助将不胜感激。

代码: https//gist.github.com/anonymous/f961509aa407f270d9325ed2aa40b42d

$_SESSION["cart"]的第一个foreach项之后,就遍历了数据库结果。

这意味着,在下一个循环中,它将为空: while($row = mysql_fetch_array($books, MYSQL_NUM))

首先,不要使用不推荐使用的mysql_类。

其次,最好首先循环$_SESSION["cart"]信息,然后使用其中的信息将SQL写入

SELECT * from tblbooks WHERE id IN ('the', 'list', 'of', 'ids') ORDER BY bookTitle asc

那么您无需再次进行验证,您将从数据库中获得的所有结果都是与您的会话相匹配的条目。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM