$db=mysql_connect($sql_class->host,$sql_class->user,$sql_class->password);
mysql_select_db($sql_class->dbname);
mysql_query("SET NAMES GBK", $db);
$result=mysql_query("select g_name,g_pass,g_type,collname from mygame_users",$db);
while ( $a = mysql_fetch_array($result))
{
$tpl->set_var('gname',$a[g_name]);
$tpl->set_var('gpass',$a[g_pass]);
$tpl->set_var('gtype',$a[g_type]);
$tpl->set_var('cname',$a[collname]);
$tpl->parse('L','list',true);
}
从数组中读出来数据 的显示 要和上面代码读出来的效果一样
mysql_select_db($sql_class->dbname);
mysql_query("SET NAMES GBK", $db);
$result=mysql_query("select g_name,g_pass,g_type,collname from mygame_users",$db);
while ( $a = mysql_fetch_array($result))
{
$tpl->set_var('gname',$a[g_name]);
$tpl->set_var('gpass',$a[g_pass]);
$tpl->set_var('gtype',$a[g_type]);
$tpl->set_var('cname',$a[collname]);
$tpl->parse('L','list',true);
}
从数组中读出来数据 的显示 要和上面代码读出来的效果一样
假设数据库表中有3行数据 直接用while在index.php里调用数据库查询 就可以 在前台 现显示3条
但是用foreach只能现实最后一条 不知道 代码改怎么写
如果你了解php 模版 并且仔细看下我的 帖子就应该能明白什么意思!
include("./myclass.php");
include("./template.inc");
$sql_class=new main_class();
$tpl = new Template; //创建一个新模板
$tpl->set_file('index', 'fist.html');
$tpl->set_block('index', 'list', 'L');
$arr=$sql_class->user_array();
//这里我要如何写才能得到像下面 代码实现一样功能?
foreach($arr as $key=>$value)
{
foreach($arr[$key] as $k=>$v)
{
$tpl->set_var($key,$arr['gname'][$k]);
//下面这句应该是放在这里,如果不是,楼主把这句话放到循环外部
$tpl->parse('out','index'); // //完成替换
}
}
$tpl->p('out'); // //输出替换的结果
include("./myclass.php");
include("./template.inc");
$sql_class=new main_class();
$tpl = new Template; //创建一个新模板
$tpl->set_file('index', 'fist.html');
$tpl->set_block('index', 'list', 'L');
$arr=$sql_class->user_array();
//这里我要如何写才能得到像下面 代码实现一样功能?
foreach($arr as $key=>$value)
{
foreach($arr[$key] as $k=>$v)
{
$tpl->set_var($key,$arr[$key][$k]);//修改了的代码
//下面这句应该是放在这里,如果不是,楼主把这句话放到循环外部
$tpl->parse('out','index'); // //完成替换
}
}
$tpl->p('out'); // //输出替换的结果
print出来是这样的
gname admin
gname testuser
gname testuser2
gpass admin888
gpass test123
gpass test456
gtype 1
gtype 0
gtype 0
cname 极乐
cname 测试机器人
cname test3条数据没错~~~~我改成
foreach($arr as $k1=>$v1)
{
foreach($v1 as $k2=>$v2)
{
print("$k1 ".$arr[$k1][$k2]."</br>");
$tpl->set_var($k1,$arr[$k1][$k2]);
}
$tpl->parse('L','list',true);
}
现实出4条 "用户名是testuser2密码是test456类型是0. 昵称:test "
奇怪数据一共3条 却执行了4次
还有$tpl->parse('out','index'); 方不方 循环里面我发现都一样
Array
(
[gname] => Array
(
[0] => admin
[1] => testuser
[2] => testuser2
) [gpass] => Array
(
[0] => admin888
[1] => test123
[2] => test456
) [gtype] => Array
(
[0] => 1
[1] => 0
[2] => 0
) [cname] => Array
(
[0] => 极乐
[1] => 测试机器人
[2] => test
))
{
$tpl->set_var('gname',$arr['gname'][$key]);
$tpl->set_var('gpass',$arr['gpass'][$key]);
$tpl->set_var('gtype',$arr['gtype'][$key]);
$tpl->set_var('cname',$arr['cname'][$key]);
}
include("./template.inc");
$sql_class=new main_class();
$tpl = new Template; //创建一个新模板
$tpl->set_file('index', 'fist.html');
$tpl->set_block('index', 'list', 'L');
$arr=$sql_class->user_array();
//这里我要如何写才能得到像下面 代码实现一样功能?
foreach($arr['gname'] as $key=>$value)
{
$tpl->set_var('gname',$arr['gname'][$key]);
$tpl->set_var('gpass',$arr['gpass'][$key]);
$tpl->set_var('gtype',$arr['gtype'][$key]);
$tpl->set_var('cname',$arr['cname'][$key]);
}
$tpl->p('out'); // //输出替换的结果
要善用调试嘛。
看执行sql查询后,数组是什么样子。