解决方案 »
- 关于父类列表显示所有递归子类文章的设计
- 请教webstorm下,进行断点调试的疑问,求解,谢谢
- 这几句话是什么意思,帮忙解释一下哈
- 如何获取这段的值?
- 請大俠幫我看看這個段代碼,不知道為什么本地機可以,到服務囂就出錯。在線等!!!!
- mb_substr($string,1,5); 函数截取字符串的问题
- php中如何實現asp.net中的datagrid?
- 在php4.32里面,上传文件怎么判断阿?我用if($file=="none")怎么不起作用了阿??着急阿???
- 子栏目数据库表结构如何建立?
- 请高手们,谁用PHP编过远程访问程序。
- PHP 截取字符串写入json问题(在线等分就这么多了)
- 求助
最好在 while 外赋值吧。
$db->query 是用的一个类。
mysql_query 用这个的之前,我用$db->query发现前一个查询被中断了。然后就用了这个。可能我哪里弄错了。然后就没再用那个类。直接用了这个。不过数据库查询结果都正常。各位大哥,麻烦帮我改一下代码吧。我实在弄不出来了。
$db=new mysql()
在这次db链接的其中还要链接的话可以声明$db2=new mysql()$tpl->assign('indexContent',$arrArticle);这句话在循环里面 最后你得到的是最后一个值 你是这样的需求吗?另外你的图看不见
嗯。那个实例化的类我记下了。下次重新实例一个。
我想得到的效果是:
比如我现在有4个栏目a b c d,每个栏目里分别有一篇文章1 2 3 4,也就是说,在数据库里现在a栏目有一篇文章1,b栏目有一篇文章2,c栏目有一篇文章3,d栏目我想在首页显示出这4个栏目,并且栏目a里显示文章1,栏目b里显示文章2,栏目c里显示文章3.。就是这个意思。
http://dd.a.5d6d.com/userdirs/5/5/hackpro/attachments/month_1007/1007191219a2907cbee041bfc1.jpg
你的数据结构应该类似这样
$yourarray1[类别id]=$yourclass
$yourclass->title=类别标题
$yourclass->indexContent=文章内容
就是在每个栏目下显示这个栏目的文章的时候,出了问题。
我现在的数据库中,就是a栏目有一条数据1,b栏目有一条数据2
但是显示出来却是 数据1和2在每个栏目中都显示了。
我觉得很可能是
$tpl->assign('indexContent',$arrArticle); //显示文章
和
$tpl->assign('Variable',$arr); //显示栏目
用法不对。但是不知道该怎么修改。那个数据结构,具体怎么输出呢
就是在循环内每次都实例一个新class,取出你要的值 赋值给class的成员变量,在每次循环的最后 把这个类加到数组里,此数组在循环外声明
大体就是这思路
$db=new mysql(DB_HOST,DB_USER,DB_PW,DB_NAME,"conn","gbk");
$db2=new mysql(DB_HOST,DB_USER,DB_PW,DB_NAME,"conn","gbk");
$SQL="select catid,fid,catName,url from gen_category";
$rs=$db->query($SQL);
$i=0;
$myarray = array();
while($row = $db->fetch_array($rs))
{
$myclass = new stdClass;
if ($row[fid]==0){
$myclass->catName = $row["catName"];//类别title
}else{
continue;
}
$SQL="select ctitle,ccontent from gen_info where cid=".$row["catid"];
$rs1=$db2->query($SQL);
while($row1 = mysql_fetch_array($rs1))
{ $myclass->catName = $row1["ccontent"];//内容
}
$myarray[$row["catid"]]=$myclass;
}
$tpl->assign('Variable',$arr);
$tpl->display('index.html');
$tpl->assign('myarray',$myarray);
$tpl->display('index.html');
$db=new mysql(DB_HOST,DB_USER,DB_PW,DB_NAME,"conn","gbk");
$db2=new mysql(DB_HOST,DB_USER,DB_PW,DB_NAME,"conn","gbk");
$SQL="select catid,fid,catName,url from gen_category";
$rs=$db->query($SQL);
$i=0;
$myarray = array();
while($row = $db->fetch_array($rs))
{
$myclass = new stdClass;
if ($row[fid]==0){
$myclass->catName = $row["catName"];//类别title
$myclass->url = $row["url"];//类别url
}else{
continue;
}
$SQL="select ctitle,ccontent from gen_info where cid=".$row["catid"];
$rs1=$db2->query($SQL);
while($row1 = mysql_fetch_array($rs1))
{ $myclass->ccontent = $row1["ccontent"];//内容
}
$myarray[$row["catid"]]=$myclass;
}
$tpl->assign('myarray',$myarray);
$tpl->display('index.html');/************************/
<div id="main">
<div id="main_left"> </div>
<div id="main_right"> <{foreach from=$myarray item=$myclass}>
<div id="cat">
<div id="catTitle">
<a href="<{$myclass->url}>"><{$myclass->catName}></a>
</div> <{$myclass->ccontent}><br> </div>
<{/foreach}>
</div>
</div>也许错误很多 你将就一下
smarty手册关于section这一节也看过了。尝试了其它的几个方法。虽然有一点改观,例如不会把所有文章显示在所有栏目里了,但是还没解决。
不知道哪位可以直接在我代码的基础上修改一下。可以不用嵌套section。