繁体   English   中英

如何在选择查询中使用循环

[英]how do i use loop in select query

如何在选择查询中使用循环? 该查询一次只能从“选择查询”中提取一行。 我想在选择查询中通过循环获取多行

选择ID

$id=$_REQUEST['id'];
function get_id($id){
    $result1=mysql_query("select * from products where id='$id'") 
    or die("Id Problem"."<br/><br/>".mysql_error());
    $results1= array();
    $k=0; // add the new line
    while($row1=mysql_fetch_assoc($result1)){
        $results1[] = $row1['id'];
        $k++;
    }
    return $results1;
}

点阵

 $pid1=get_id($id);
 <?php 
     $max1=count($pid1);
     for($n=0; $n<$max1; $n++)
     {?>
         <input type="hidden" name="pid[]" value="<?php echo $pid1[$n]?>" />
 <?php }?>

竞价时段

$_SESSION['pid']=$_POST['pid'];

我想在选择查询中通过循环fetch多行

<?php 
$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++;
}
echo $results;

$max=count($results);
for($j=0; $j<$max; $j++)
{
?>
    <input type="text" name="wid[]" value="<?php echo $results[$j]; ?>" />
<?php }?>

您正在用困难的方式做一些事情,跟踪和控制在自动驾驶仪上可以正常运行的事情。 例如,for循环要求您知道长度,而foreach循环只是运行直到完成。

让PHP通过使用[]而不是分配索引来处理数组索引也可以节省您的精力。 而且由于每个循环实际上只做一件事,因此它们实际上并不需要大括号。

$result=mysql_query('SELECT id AS wid FROM mywishlist where pid="'.$pid.'"') or die(); 
$results= array();
while($row=mysql_fetch_array($result)) 
    $results[]=$row['wid'];
foreach($results as $wid)
    echo '<input type="text" name="wid[]" value="'.$wid.'" />';

当然,您可以消除这些循环之一,因为它们本质上都处理相同的数据...

$result=mysql_query('SELECT id AS wid FROM mywishlist where pid="'.$pid.'"') or die(); 
while($row=mysql_fetch_array($result)) 
    echo '<input type="text" name="wid[]" value="'.$row['wid'].'" />';

此外,从id到wid的密钥重新标识没有多大意义。 由于结果中只有1个字段,为什么还要麻烦识别它-我们可以直接获取该行。

$result=mysql_query('SELECT id FROM mywishlist where pid="'.$pid.'"') or die(); 
while($row=mysql_fetch_row($result)) 
    echo '<input type="text" name="wid[]" value="'.$row[0].'" />';

哦,让我们分两行来做

$result=mysql_query('SELECT id FROM mywishlist where pid="'.$pid.'"') or die(); 
while($row=mysql_fetch_row($result)) echo '<input type="text" name="wid[]" value="'.$row[0].'" />';

暂无
暂无

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

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