我有两个while loops
一个是循环聊天日志来检索日期,用户名和消息,另一个while loop
是从一个单独的表中检索图标,这个列有两列{{1} }和chars
(图片名称。*)我可以显示image
中的所有内容,但似乎无法获得包含table chat
的第二个while loop
来遍历每一行在可能包含值的str_replace
emo_cons
中,如果我添加新的table
值,它只显示表格中的最后一行,chars
它会显示最后一行
image-name.*
我需要帮助了解我做错了什么我试过移动我的循环看看我是否错误地构造了它们但是到目前为止没有运气 我只是希望能够显示聊天消息,如果消息中包含要用图标替换的消息,请始终执行此操作,而不仅仅是表格中的最后一行。
我知道我可能对此没有任何帮助,但值得一提的是也许有人可以看到我的错误。提前谢谢。
答案 0 :(得分:0)
在emo_cons
while循环
<?php
// select all from table emo_cons that contain character values and image location
$emocom = mysqli_query($con,"SELECT * FROM `emo_cons`");
// fetch rows from query
$chars = array();
$imagetag = array();
while($emo_row= mysqli_fetch_assoc($emocom))
{
// assign chars row characters that represent the coresponding image
array_push($chars, $emo_row['chars']);
// assign imagetag to row images that represent the coresponding characters
array_push($chars, "<img width='50' class=image height='50' src='chaticons/".$emo_row['image']."' />");
echo " ";
echo "<br>";
} // end while emo_car check
&GT;
让我知道它是否适合你。
为什么您的代码无效
变量$chars
和$imagetag
都在while
循环内,并且每个迭代值都被覆盖。因此,最后一个值存储在两个变量中。
因此,为了解决这个问题,我创建了2个具有相同名称的数组,并将所有必需的值推送到数组中,我们稍后在str_replace
函数中使用它。