新人! 给while循环弄的吐血了。哪位高手帮我虚拟出循环运行机制呀。 本帖最后由 sdffffaa 于 2011-06-15 18:55:37 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1 第一个循环的赋值是动态的 取决于mysql_fetch_array($result)的结果 而这个结果必然含有跳出循环的false所以没问题2 $cc中没有逻辑否 所以永远无法跳出循环 第一个是哪些动态的值啊?把第2个写成动态的让我参考下啊。数据库内容id FirstName LastName 1 Peter Griffin 2 Lois fin 补充一下楼上1.除非有多个记录的id都是1,否则只有一条记录,只输出一次;如果有多条记录,则说明你的数据库设计可能有问题2.$dd=$cc是赋值语句,不是条件判断语句,$cc不为0,所以总是true的 你自己查查mysql_fetch_array 明明是个函数!它从结果集中取出一行作为数组!如果没有更多行则返回 false! 我这边的是个这样的啊Array ( [0] => 1 [ID] => 1 [1] => Peter [FirstName] => Peter [2] => Griffin [LastName] => Griffin [3] => 35 [Age] => 35 [4] => Quahog [Hometown] => Quahog [5] => Brewery [Job] => Brewery ) while循环并没有循环这个数组 这个数组只是结果集的一行而已 while循环的是结果集的第一行 第二行 第三行 。 第n行 这还没完 最后还会有一个false!!!你自己静静的想想结构吧 在想想while循环的到底什么 <?php$con = mysql_connect('localhost', 'peter', 'abc123');mysql_select_db("my_db", $con); $sql="SELECT * FROM person WHERE id = '1'"; //这里查询person表里面当id的值等于1$result = mysql_query($sql, $con); //执行sql语句while($row = mysql_fetch_array($result)) //循环读取记录集,估计是你上面查询的记录只有一条符合,所以下面只打印一条记录出来。//为什么下面的内容只循环1次??{ echo "<div>" . $row['FirstName'] . "</div>"; }mysql_close($con);?>为什么下面的是无限循环。<?php$cc=array(0=>"ddr",1=>"ddj",3=>"bbq");while($dd=$cc){$cc[0];}?>估计楼主的想法是:<?php$cc=array(0=>"ddr",1=>"ddj",3=>"bbq");foreach($cc as $key=>$value){ echo $key.' '.$value."<br>\n";}?> while语句只是针对条件是否为真,而进行语句,没有遍历数组内部结构的功能,需要手动补充,和for一样。如果要直接逐个遍历数组内部数据要使用 foreach语句 缩略图总是失真,拿他没辙 5.2以前的版本 正则不能起别名????? mysql_query连续执行多条语句的问题! 大家推荐一个windows下好用的php编辑器,谢谢![ 关闭窗口问题 请教个问题, 请教二个网站设计中的问题。 一个数组的初级问题 提取一段字符串中的URL PHP 计算,花费10个工作时长完成一个工作,节假日和周末以及午休下班时间不计入时长内,那么实际结束时间如何计算呢? dede5.6监控采集模式出现了问题 关于.htaccess难题,新人分不多,请帮忙
所以没问题
2 $cc中没有逻辑否 所以永远无法跳出循环
把第2个写成动态的让我参考下啊。
数据库内容
id FirstName LastName
1 Peter Griffin
2 Lois fin
1.除非有多个记录的id都是1,否则只有一条记录,只输出一次;如果有多条记录,则说明你的数据库设计可能有问题2.$dd=$cc是赋值语句,不是条件判断语句,$cc不为0,所以总是true的
它从结果集中取出一行作为数组!
如果没有更多行则返回 false!
Array ( [0] => 1 [ID] => 1 [1] => Peter [FirstName] => Peter [2] => Griffin [LastName] => Griffin [3] => 35 [Age] => 35 [4] => Quahog [Hometown] => Quahog [5] => Brewery [Job] => Brewery )
while循环的是结果集的第一行 第二行 第三行 。 第n行 这还没完 最后还会有一个false!!!
你自己静静的想想结构吧 在想想while循环的到底什么
<?php
$con = mysql_connect('localhost', 'peter', 'abc123');
mysql_select_db("my_db", $con);
$sql="SELECT * FROM person WHERE id = '1'"; //这里查询person表里面当id的值等于1
$result = mysql_query($sql, $con); //执行sql语句
while($row = mysql_fetch_array($result)) //循环读取记录集,估计是你上面查询的记录只有一条符合,所以下面只打印一条记录出来。
//为什么下面的内容只循环1次??
{ echo "<div>" . $row['FirstName'] . "</div>"; }
mysql_close($con);
?>为什么下面的是无限循环。
<?php
$cc=array(0=>"ddr",1=>"ddj",3=>"bbq");
while($dd=$cc)
{
$cc[0];
}
?>估计楼主的想法是:<?php
$cc=array(0=>"ddr",1=>"ddj",3=>"bbq");
foreach($cc as $key=>$value){
echo $key.' '.$value."<br>\n";
}
?>
如果要直接逐个遍历数组内部数据要使用 foreach语句