<?php
$name=Array ( [0] => 张三 [1] => 李四 [2] => 小三 [3] => 小四 [4] => 小五 );
$n=4;
$sql=mysql_query("select * from xmyz where `Name` like '%".$name[$n]."%'");
$info=mysql_fetch_array($sql);
do{
echo $info[ID];
echo $info[Name];
echo $info[TEL];
}while($info=mysql_fetch_array($sql));
?>
在$sql执行查询语句的时候,发现$name[$n]中,只有n=4的时候(试了多次,都是只能查出数组的最后一个值),能查出来数据。
而实际数据库中,$name数组的各个值都是存在的。
找不到原因,请各位大神指点,谢谢。
$name=Array ( [0] => 张三 [1] => 李四 [2] => 小三 [3] => 小四 [4] => 小五 );
$n=4;
$sql=mysql_query("select * from xmyz where `Name` like '%".$name[$n]."%'");
$info=mysql_fetch_array($sql);
do{
echo $info[ID];
echo $info[Name];
echo $info[TEL];
}while($info=mysql_fetch_array($sql));
?>
在$sql执行查询语句的时候,发现$name[$n]中,只有n=4的时候(试了多次,都是只能查出数组的最后一个值),能查出来数据。
而实际数据库中,$name数组的各个值都是存在的。
找不到原因,请各位大神指点,谢谢。
然后array格式是我发帖的时候随意写上去的,实际数组是没有问题的。
但是我在数据库里执行的时候,其他几个都是可以找到数据的。
我现在也感觉是哪里语法的问题。但是找不到。。
$name = array_values($name);
这个函数能满足你的需求PS:
你可以直接把0~3的sql语句select * from xmyz where `Name` like '%".$name[$n]."%'打印出来,看看有没有问题
没问题的话放到mysql中查一下,看有没有数据。