首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >If语句在PHP会话和SQL中未按预期工作

问If语句在PHP会话和SQL中未按预期工作
EN

Stack Overflow用户
提问于 2016-11-05 18:20:09
回答 1查看 46关注 0票数 0

因此,在我的会话中有一个表,其中包含用户添加的各种序列号。还存在具有该对应序列号的信息的db。

我希望我的代码所做的是,对于会话中的每个串行,从数据库中提取相应的数据。现在,我只回显一个字符串。

所以我想要这样做,你必须遍历会话中的每个序列,并且对于每个序列,你必须检查在数据库中是否存在相同的序列,如果存在,则回显一些东西。

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

这是当你在会话中有1,2,3和4个序列时得到的回声。http://pastebin.com/BcWMZ542

任何帮助都将不胜感激。

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

EN

回答 1

Stack Overflow用户

发布于 2016-11-05 18:34:20

在来自$_SESSION["cart"]的第一个foreach项之后,您已经遍历了数据库结果。

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

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

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

代码语言:javascript
复制
SELECT * from tblbooks WHERE id IN ('the', 'list', 'of', 'ids') ORDER BY bookTitle asc

这样你就不需要再次验证了,你将从数据库中得到的所有结果都将是与你的会话匹配的条目。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40437063

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档