0

我制作了一个页面,用户可以在其中上传状态,然后将其显示在只读文本区域中。我的问题是,我想在显示状态的文本区域下方的文本区域中显示状态上传的时间,但这不起作用。我可以在第一个 textarea 中显示我想要的任何内容(包括状态上传时间,使用相同的 ['time_posted'] 标签),但即使我完整地复制粘贴第一个 textarea,第二个 textarea 也不会显示任何内容。我不知道是什么原因造成的,也看不出我可能哪里出错了,所以我非常感谢一些关于问题可能是什么的反馈。

PS:我知道mysql(正在被)弃用,所以不要费心告诉我mysqli和PDO。我最终将替换所有相关代码。

  <textarea readonly style="position:absolute; top:54%; left:45.2%;
  border-style: none; border-color: Transparent; overflow: auto; resize:none;"
  cols="16" rows="3"><?php while ($row = mysql_fetch_array($showstatus)) 
  {echo $row['status'] . " ";}?></textarea>

  <textarea readonly style="position:absolute; top:63%; left:45.2%;
  border-style: none; border-color: Transparent; overflow: auto; resize:none;"
  cols="16" rows="3"><?php while ($row = mysql_fetch_array($showstatus)) 
  {echo $row['time_posted'] . " ";}?></textarea>
4

2 回答 2

1

我以前从未使用过它,但您可以使用mysql_data_seek(0). 考虑一下,这可能比将其存储在数组中使用的内存略少,但它可能使数据库连接保持不必要的长。

参考:

于 2013-11-02T04:58:18.310 回答
0

第二个不打印,因为在你的第一个循环之后指针已经到达值的末尾并且没有更多的值要获取

while ($row = mysql_fetch_array($showstatus)) 

完成后,您无法像那样从同一个对象中获取更多值,因为您已经到达记录的末尾。

解决方案:

以太再次获取结果,或者在您的第一个循环中创建一个新数组,然后为您的第二个循环迭代该数组。

例子

在您的第一个循环中创建一个新数组,例如 $values=$row[]. 喜欢

第一个循环

<?php while ($row = mysql_fetch_array($showstatus)){echo $row['status'] . " "; $values[]=$row;}?>

然后将您的第二个循环更改为

 foreach($values as $row)

喜欢

<?php foreach($values as $row){echo $row['time_posted'] . " ";}?>
于 2013-11-02T04:56:30.060 回答