循环传值,读数据库!!!为什么????只接到一值!!!! echo $row[id]."<br>";//值分别是11,12,13这个输出了几个ID值?你最好不要在两个函数里面都使用$sql和$result相同的变量名 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://www.eaoo.com/design/list.asp?classid=2&Nclassid=9 主啊!!!!不要答非所问吧!!!!$id=4;//假设值为4,这里由传值而定!!function chanp_z($id){ global $Table,$db_link,$Bt; $sql="select * from $Table[zt] where zhuiid='$id'"; $result=$db_link->query($sql);$i=0;while($row=$db_link->fetch_array($result)) { echo $row[id]."<br>";//值分别是11,12,13(这里是举列子值假设为11,12,13)这个值会随chanp_z($id)里$id变化,所返回不同的值。 chanp_z_mess($row[id]);//传值该是chanp_z_mess(11),chanp_z_mess(12),chanp_z_mess(13) //这里也随之改变,传给chanp_z_mess(这里也改变的) }}function chanp_z_mess($id)//__接收到就上面chanp_z_mess($row[id])传来的值,上面变了,这里也就变了{ global $Table,$db_link,$Bt; $sql="select * from $Table[index] where fenid='$id'"; $result=$db_link->query($sql); while($row=$db_link->fetch_array($result)) { echo $row[id]; echo $row[messgbt];//读出应该是三条数据,当我这里的值,也会改变!!! echo "<hr>"; }}//_______能明白吧!!!如果手工给chanp_z_mess($id)里的id值,数据库里有上千万个id,那不要累死//_高手在吗?????????????for($i=0;$i<5;$i++){chanp_z_mess($id);//这样就可以把值,传出来5个值,}//__________有办法解决吗???,难到要手工写值,真不想!! 首先确定select * from $Table[zt] where zhuiid='4'确实返回了三条记录另外$row[id]这样的写法可以通过吗?会不会使这里出现异常造成后面的处理混乱?把类似的语句改成规范写法,索引用引号界定,即$row['id'] 看来PHP高手都睡觉了!!!!还是没有解决!!!!我看只有手工写id值 了!!代码是没有问提的!!function chanp_z($id){ global $Table,$db_link,$Bt; $sql="select * from $Table[zt] where zhuiid='$id'"; $result=$db_link->query($sql);$i=0;while($row=$db_link->fetch_array($result)) { echo $row[id]."<br>";//值分别是11,12,13(这里是举列子值假设为11,12,13)这个值会随chanp_z($id)里$id变化,所返回不同的值。 chanp_z_mess($row[id]);//传值该是chanp_z_mess(11),chanp_z_mess(12),chanp_z_mess(13) //这里也随之改变,传给chanp_z_mess(这里也改变的) }}只可把chanp_z_mess($row[id])注释掉!!想要的id值都正确的显出来!!!如打开,想要id 值,只能显一个!!没有用的!! 这个函数里面的变量换换名试一下;function chanp_z_mess($id){ global $Table,$db_link,$Bt; $sql1="select * from $Table[index] where fenid='$id'"; $result1=$db_link->query($sql1); while($row1=$db_link->fetch_array($result1)) { echo $row1['id']; echo $row1['messgbt'];//读出应该是三条数据 echo "<hr>"; }} $id=4;chanp_z($id);function chanp_z($id){ global $Table,$db_link,$Bt; $sql="select * from $Table[zt] where zhuiid='$id'"; $result=$db_link->query($sql);$i=0;while($row=$db_link->fetch_array($result)) { echo $row[id]."<br>";//值分别是11,12,13 chanp_z_mess($row[id]);//传值该是chanp_z_mess(11),chanp_z_mess(12),chanp_z_mess(13) }}function chanp_z_mess($id1)//改了{ global $Table,$db_link,$Bt; $sql="select * from $Table[index] where fenid='$id1'";//改了 $result=$db_link->query($sql); while($row=$db_link->fetch_array($result)) { echo $row[id]; echo $row[messgbt];//读出应该是三条数据 echo "<hr>"; }}//结果只接收到了11,读出的数据也是11信息!!问题依然存在,结果只接收到了11,读出的数据也是11信息好闷啊!! ustb(偶然)说的很对,迭归我也在想为什么不行,没有道理!!!!用for循环,可以迭归,while也可以迭归,为什么从数据库读出就不行呢????__________________________________板主如果看到,帮忙拿出来讨论一下PHP迭归为什么学出现,这样的怪现象!!!!!_________________对初学者,和高手都有帮助!!!! 板主如果看到,帮忙拿出来讨论一下PHP迭归为什么学出现,这样 板主如果看到,帮忙拿出来讨论一下PHP迭归为什么学出现,这样 你在数据库操作中使用了类各函数中使用的是同一个该类的实例通常书写类的时候是不考虑多个查询的,所以后面的查询会覆盖掉前面的查询当把$db_link->query($sql);直接用数据库函数书写时mysql_query($sql);就不会出现你说的现象 你在数据库操作中使用了类各函数中使用的是同一个该类的实例通常书写类的时候是不考虑多个查询的,所以后面的查询会覆盖掉前面的查询当把$db_link->query($sql);直接用数据库函数书写时mysql_query($sql);就不会出现你说的现象 伪静态IIS的,求帮助给分。 请教一算法问题 fck处理数据大时报错(mysql) 关于php的简单的cookie问题求助 php如何捕获mysql异常,如主键重复插入错误 谁能帮我分一下。 如何获得session的存活时间,请各位帮忙. "Fatal error: Call to a member function on a non-object in "是什么原因造成的? 另一个很菜的问题 搜索学多科学员的SQL语句怎么写? 关于session_start()出错的问题!!!!!!!!!!!!! 如何注销掉session
不要答非所问吧!!!!
$id=4;//假设值为4,这里由传值而定!!function chanp_z($id)
{
global $Table,$db_link,$Bt;
$sql="select * from $Table[zt] where zhuiid='$id'";
$result=$db_link->query($sql);$i=0;
while($row=$db_link->fetch_array($result))
{
echo $row[id]."<br>";//值分别是11,12,13(这里是举列子值假设为11,12,13)这个值会随chanp_z($id)里$id变化,所返回不同的值。
chanp_z_mess($row[id]);//传值该是chanp_z_mess(11),chanp_z_mess(12),chanp_z_mess(13)
//这里也随之改变,传给chanp_z_mess(这里也改变的)
}}function chanp_z_mess($id)//__接收到就上面chanp_z_mess($row[id])传来的值,上面变了,这里也就变了
{
global $Table,$db_link,$Bt;
$sql="select * from $Table[index] where fenid='$id'";
$result=$db_link->query($sql);
while($row=$db_link->fetch_array($result))
{
echo $row[id];
echo $row[messgbt];//读出应该是三条数据,当我这里的值,也会改变!!!
echo "<hr>";
}}
//_______能明白吧!!!如果手工给chanp_z_mess($id)里的id值,数据库里有上千万个id,那不要累死
//_高手在吗?????????????
for($i=0;$i<5;$i++)
{
chanp_z_mess($id);//这样就可以把值,传出来5个值,
}
//__________有办法解决吗???,难到要手工写值,真不想!!
select * from $Table[zt] where zhuiid='4'
确实返回了三条记录另外$row[id]这样的写法可以通过吗?会不会使这里出现异常造成后面的处理混乱?把类似的语句改成规范写法,索引用引号界定,即$row['id']
还是没有解决!!!!
我看只有手工写id值 了!!
代码是没有问提的!!
function chanp_z($id)
{
global $Table,$db_link,$Bt;
$sql="select * from $Table[zt] where zhuiid='$id'";
$result=$db_link->query($sql);$i=0;
while($row=$db_link->fetch_array($result))
{
echo $row[id]."<br>";//值分别是11,12,13(这里是举列子值假设为11,12,13)这个值会随chanp_z($id)里$id变化,所返回不同的值。
chanp_z_mess($row[id]);//传值该是chanp_z_mess(11),chanp_z_mess(12),chanp_z_mess(13)
//这里也随之改变,传给chanp_z_mess(这里也改变的)
}}
只可把chanp_z_mess($row[id])注释掉!!想要的id值都正确的显出来!!!
如打开,想要id 值,只能显一个!!没有用的!!
function chanp_z_mess($id)
{
global $Table,$db_link,$Bt;
$sql1="select * from $Table[index] where fenid='$id'";
$result1=$db_link->query($sql1);
while($row1=$db_link->fetch_array($result1))
{
echo $row1['id'];
echo $row1['messgbt'];//读出应该是三条数据
echo "<hr>";
}}
chanp_z($id);
function chanp_z($id)
{
global $Table,$db_link,$Bt;
$sql="select * from $Table[zt] where zhuiid='$id'";
$result=$db_link->query($sql);$i=0;
while($row=$db_link->fetch_array($result))
{
echo $row[id]."<br>";//值分别是11,12,13
chanp_z_mess($row[id]);//传值该是chanp_z_mess(11),chanp_z_mess(12),chanp_z_mess(13)
}}function chanp_z_mess($id1)//改了
{
global $Table,$db_link,$Bt;
$sql="select * from $Table[index] where fenid='$id1'";//改了
$result=$db_link->query($sql);
while($row=$db_link->fetch_array($result))
{
echo $row[id];
echo $row[messgbt];//读出应该是三条数据
echo "<hr>";
}}
//结果只接收到了11,读出的数据也是11信息!!
问题依然存在,结果只接收到了11,读出的数据也是11信息
好闷啊!!
我也在想为什么不行,没有道理!!!!
用for循环,可以迭归,while也可以迭归,
为什么从数据库读出就不行呢????
__________________________________
板主如果看到,帮忙拿出来讨论一下PHP迭归
为什么学出现,这样的怪现象!!!!!
_________________对初学者,和高手都有帮助!!!!
为什么学出现,这样
为什么学出现,这样
各函数中使用的是同一个该类的实例
通常书写类的时候是不考虑多个查询的,所以后面的查询会覆盖掉前面的查询当把$db_link->query($sql);直接用数据库函数书写时
mysql_query($sql);
就不会出现你说的现象
各函数中使用的是同一个该类的实例
通常书写类的时候是不考虑多个查询的,所以后面的查询会覆盖掉前面的查询当把$db_link->query($sql);直接用数据库函数书写时
mysql_query($sql);
就不会出现你说的现象