我无法从mysql数据库中获取多行数组?我有代码,但是当我回到文本框中时它没有工作或没有显示所有行?
<?php
if(is_array($_SESSION['pid']))
{
$pid = join(',',$_SESSION['pid']);
$result=mysql_query("SELECT id AS wid FROM mywishlist where pid='$pid'")
or die("Id Problem"."<br/><br/>".mysql_error());
$results= array();
$i=0; // add the new line
while($row=mysql_fetch_array($result)){
$results[$i] = $row['wid'];
$i++;
}
$results;
}
$max=count($results);
for($j=0; $j<$max; $j++)
{
?>
<input type="text" name="wid[]" value="<?php echo $results[$j]; ?>" />
<?php } ?>
答案 0 :(得分:2)
行join(',',$_SESSION['pid'])
让我觉得您想要按pid
选择多行。尝试使用IN
运算符:
SELECT id AS wid FROM mywishlist
WHERE pid IN ($pid)
答案 1 :(得分:1)
尝试
$results= array();
while($row=mysql_fetch_array($result))
{
$results[] = $row['wid'];
}
For For Loop as。
$max = count($results);
for($j=0; $j<$max; $j++)
{
?>
<input type="text" name="wid[]" value="<?php echo $results[$j]; ?>" />
<?php
}
?>
答案 2 :(得分:1)
您的查询错误,请使用此查询
$result=mysql_query("SELECT id AS wid FROM mywishlist where pid IN($pid) ")