【问题标题】:Smarty php variables outputSmarty php 变量输出
【发布时间】:2013-12-12 15:50:35
【问题描述】:

使用realestate script 3,它使用smarty 3

我设法创建了从数据库中获取信息的循环。

<?php
function smarty_function_my_plugin($params,&$smarty)
{
    $con=mysqli_connect("localhost","root","","res3");

    // Check connection
    if (mysqli_connect_errno()) {
      echo "Failed to connect to MySQL: " . mysqli_connect_error();
    } else {
       $result = mysqli_query($con,"SELECT * FROM res3_listings WHERE listing_type_id=5 ORDER BY views DESC");
       while($row = mysqli_fetch_array($result)) {
           $title=$row['title_1'];
           $price=$row['price'] ;
           $id=$row['listing_id'];
           $result = mysqli_query($con,"SELECT listing_photo_file FROM res3_listing_photos WHERE listing_photo_id=1");
           while($row = mysqli_fetch_array($result)) {
              $picture=$row['listing_photo_file'];
           }
           echo $title. "<br/>".$price."<br/>".$picture;
           $smarty->assign('naslov', $title);
           echo "<br>";
       }
    }

    mysqli_close($con);
    echo '<h1>Test</h1>';
}
?>

所以我将脚本放在插件文件夹中,并在脚本末尾返回 TEST echo 和 3 个变量 $title、$price、$picture。在模板 {my_plugin}

中使用命令

但我想访问这些变量,以便可以在 *.tpl 文件中调用它们,例如:{$title}

这样我可以将 HTML 部分放入 .tpl 文件中,然后插入该函数中我需要的变量。

它应该在模板文件上循环 10 个结果;)

【问题讨论】:

    标签: php smarty


    【解决方案1】:

    理论上,您的代码已将最后一个标题分配给naslov smarty 变量。 如果您要访问所有这些,您可以将其更改为附加。 这种方式理论上在{my_plugin} 调用后可以访问{$naslov} 变量中的标题。

    或者您可以在模板中返回 $smarty-&gt;fetch('othertemplate.tpl') 并且您可以在 othertemplate.tpl 中使用这些变量。

    为了将结果限制为最多 10 个,可能是将limit 10 附加到您的数据库查询的最简单方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多