echo $row[id]."<br>";//值分别是11,12,13这个输出了几个ID值?你最好不要在两个函数里面都使用$sql和$result相同的变量名
解决方案 »
- 求助:怎么能判断自己网站的代码有没有被人改动过?
- php与javascript的关系??
- 本周娱乐话题-愤怒的小鸟给别人的php代码要不要加密?
- 我写的PHP程序,在VPS上CPU占用非常不稳定
- $_FILES ["file1"] ["name"]返回值代表什么
- 关于 name="num[]" 的提问,请高手解下
- PHP在繁体操作系统上用COOKIE验证用户登录问题
- 求个具体的php+mysql分页-----不要网上搜的
- 今天正式加入单身的行列,大家来庆祝啊。
- 关于文件名排列问题(在线等候,解决立即给分)
- 关于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);
就不会出现你说的现象