例子是这样的,数据库结构如下id cons to2
1 10 20
2 20 30
3 30 61
4 10 61
5 8 61
我要获取相应to2的cons列表
function jfls($userid) //积分历史
{
$conzdy = mysql_connect("localhost","a0527232048","111111");
mysql_select_db("a0527232048",$conzdy);
$sql="select * from caifujifen where to2=".$userid."";
mysql_query("set names 'gbk'");
$jlj=mysql_query($sql,$conzdy);
while($row=mysql_fetch_array($jlj))
{
$jfls= $row[1];
}
return $jfls;
}
可 $this->assign('jfls',jfls($user_id));这样得到的值,只有一个,例如userid=61即to2=61时,明明结果有3个,但只输出一个。。请指教,谢谢。
1 10 20
2 20 30
3 30 61
4 10 61
5 8 61
我要获取相应to2的cons列表
function jfls($userid) //积分历史
{
$conzdy = mysql_connect("localhost","a0527232048","111111");
mysql_select_db("a0527232048",$conzdy);
$sql="select * from caifujifen where to2=".$userid."";
mysql_query("set names 'gbk'");
$jlj=mysql_query($sql,$conzdy);
while($row=mysql_fetch_array($jlj))
{
$jfls= $row[1];
}
return $jfls;
}
可 $this->assign('jfls',jfls($user_id));这样得到的值,只有一个,例如userid=61即to2=61时,明明结果有3个,但只输出一个。。请指教,谢谢。
具体结构不明,可以在return $jfls; 之前 print_r($jfls);exit;//设置个断点看看
但我想让这个函数返回一个列表;
(
'v1' => $v1,
'v2' => $v2,
....
);
return $row;这是return一个数组,但输出到smarty时,还是只能输出一个结果,实际应该有3个结果才对,,
$row=mysql_fetch_array($jlj);
return $row;php程序里边
$this->assign('jfls',$row);页面里边
<!--{foreach from=jfls item=data}-->
<p>{data.to2}</p>
<!-- {/foreach} -->
function jfls($userid) //积分历史
{
$conzdy = mysql_connect("localhost","a0527232048","111111");
mysql_select_db("a0527232048",$conzdy);
$sql="select * from caifujifen where to2=".$userid."";
mysql_query("set names 'gbk'");
$jlj=mysql_query($sql,$conzdy);
while($row=mysql_fetch_array($jlj))
{
$jfls[]= $row[1];//使用数组存储你的结果值
}
return $jfls;//返回数组
}
function jfls($userid) //积分历史
{
$conzdy = mysql_connect("localhost","a0527232048","111111");
mysql_select_db("a0527232048",$conzdy);
$sql="select * from caifujifen where to2=".$userid."";
mysql_query("set names 'gbk'");
$jlj=mysql_query($sql,$conzdy);
$jfls = array();//定义结果存储器
while($row=mysql_fetch_array($jlj))
{
$jfls= $row[1];//使用数组存储你的结果值
}
return $jfls;//返回结果数组}
将数组返回
2.将你要返回的值用特殊符号连接 :1_5_sd
再根据特殊符号拆分成数组 explode("_",return);
您好,我确实是这样做的,可只能调出一条来,不知为何。。函数function jfls($userid) //积分历史
{
$conzdy = mysql_connect("localhost","a0527232048","1111111");
mysql_select_db("a0527232048",$conzdy);
$sql="select * from caifujifen where to2=".$userid."";
mysql_query("set names 'gbk'");
$jlj=mysql_query($sql,$conzdy);
while($row=mysql_fetch_array($jlj))
{
return $row;
}
}程序里 $this->assign('jfls',jfls($user_id));smarty模板中{foreach from=$jfls item=jf }
{$jf}
{/foreach}只能调出一条
28
28
2
2
61
61
20
20
测试加分
测试加分
1111111111
1111111111而且还是重复的数据库结构如下图:其中user_id=61
应该调出
Array ( [0] => 28 [id] => 28 [1] => 2 [f1] => 2 [2] => 61 [to2] => 61 [3] => 20 [cons] => 20 [4] => 测试加分 [nr] => 测试加分 [5] => 1111111111 [thed] => 1111111111 )
Array ( [0] => 27 [id] => 27 [1] => 2 [f1] => 2 [2] => 61 [to2] => 61 [3] => 20 [cons] => 20 [4] => 测试加分 [nr] => 测试加分 [5] => 1111111111 [thed] => 1111111111 )
Array ( [0] => 25 [id] => 25 [1] => 2 [f1] => 2 [2] => 61 [to2] => 61 [3] => 10 [cons] => 10 [4] => 注册时系统赠送积分 [nr] => 注册时系统赠送积分 [5] => 1279174580 [thed] => 1279174580 ) 才算正常
while($row=mysql_fetch_array($jlj))
{
return $row;
}
当程序 $this->assign('jfls',jfls($user_id));模板:{foreach from=$jfls item=jf }
{$jf}<br>
{/foreach}时 还是只能调出一条,
您看我确实是这样写的,,while($row=mysql_fetch_array($jlj))
{
return $row;
}
while($row=mysql_fetch_row($jlj))
{
$arr[] = $row;//是$row[0], $row[1],这个你自己决定
}
//如果不知道结构,这里可以print_r($arr);exit;运行一下就明白了
return $arr;//返回数组