Php 不同页面中的For循环
我会尽力把情况解释清楚。 我已经有了一个系统,可以显示到事件的链接,为那些熟悉Joomla的人创建了JEvents 在管理员中创建事件时,该事件的类别视图将显示一个小表格,其中包含事件的日期、名称和指向事件页面的链接。一切都很好。现在,该链接是在一个单独的php文件上调用的,而不是在一个为其呈现html视图的文件上调用的。 使用以下命令调用该链接:Php 不同页面中的For循环,php,sql,for-loop,Php,Sql,For Loop,我会尽力把情况解释清楚。 我已经有了一个系统,可以显示到事件的链接,为那些熟悉Joomla的人创建了JEvents 在管理员中创建事件时,该事件的类别视图将显示一个小表格,其中包含事件的日期、名称和指向事件页面的链接。一切都很好。现在,该链接是在一个单独的php文件上调用的,而不是在一个为其呈现html视图的文件上调用的。 使用以下命令调用该链接: <a class="ev_link_row" href="<?php echo $rowlink; ?>" <?php ec
<a class="ev_link_row" href="<?php echo $rowlink; ?>" <?php echo $args;?> style="font-weight:bold;color:<?php echo $fgcolor;?>;" title="<?php echo JEventsHTML::special($row->title()) ;?>"><?php echo $tmpTitle ;?></a>
它包含在上面的for循环中,用各种信息填充$row变量
for( $r = 0; $r < $num_events; $r++ ){
$row = $data['rows'][$r];
等等
现在来回答问题。我有一个存储图像文件名的表。我很容易创建一个forloop,它遍历行并将路径名返回到图像,如下所示:
$db = & JFactory::getDBO();
$query2 = "SELECT `c`.`filename` AS `iname` , `c`.`filetitle` AS `ititle` , `c`.`ev_id` AS `eventid` FROM `#__jev_files` AS `c` ";
$db->setQuery($query2);
$imagelist = $db->loadObjectList();
?>
<?php foreach($imagelist as $row) : ?>
<img src="/images/stories/jevents/<?php echo $row->iname; ?>" />
<?php endforeach; ?>
现在一个明显的问题是,我如何分配此图像以包含在链接中。我尝试将for循环包装在链接本身上,但它显然打破了地狱,因为它在循环中被重用在循环中创建循环并破坏我的布局
如果我在html呈现页面中使用查询,那么我的问题本质上是我不知道如何在不破坏其余功能的情况下将上述内容附加到$row变量
非常感谢能在这方面指导我的人。如果我能更好地理解这个问题,我想我可以给出你想要的答案。也许你说的有些话是针对乔姆拉的,所以我不太明白
但一般来说,面向对象编程是一种很好的方法,可以将一个相关事物的信息保存在一起,例如与一个事件相关的所有日期、描述和图像集合。如果可以循环使用一组id,并且每个id都可以用于创建事件对象,那么可以使每个事件对象检索自己的信息和相关图像。它使代码像这样更干净 如果我能更好地理解这个问题,我想我可以给出你想要的答案。也许你说的有些话是针对乔姆拉的,所以我不太明白
但一般来说,面向对象编程是一种很好的方法,可以将一个相关事物的信息保存在一起,例如与一个事件相关的所有日期、描述和图像集合。如果可以循环使用一组id,并且每个id都可以用于创建事件对象,那么可以使每个事件对象检索自己的信息和相关图像。它使代码像这样更干净 你是对的,我提到的大部分内容都与Joomla有关,而我不能像通常那样简单地做这件事的原因是Joomla中有太多的事情相互依赖,所以我基本上必须爬上一棵多层次的树,了解整件事的真正开始。我希望有一个简单的答案,但事实证明事件组件实际上有一个非常接近我需要的功能,所以我将使用它!你会因为尝试而得到一张答案票;你是对的,我提到的大部分内容都与Joomla有关,而我不能像通常那样简单地做这件事的原因是Joomla中有太多的事情相互依赖,所以我基本上必须爬上一棵多层次的树,了解整件事的真正开始。我希望有一个简单的答案,但事实证明事件组件实际上有一个非常接近我需要的功能,所以我将使用它!你会因为尝试而得到一张答案票;
$db = & JFactory::getDBO();
$query2 = "SELECT `c`.`filename` AS `iname` , `c`.`filetitle` AS `ititle` , `c`.`ev_id` AS `eventid` FROM `#__jev_files` AS `c` ";
$db->setQuery($query2);
$imagelist = $db->loadObjectList();
?>
<?php foreach($imagelist as $row) : ?>
<img src="/images/stories/jevents/<?php echo $row->iname; ?>" />
<?php endforeach; ?>