Slim / Twig删除撇号和文字后呢?

时间:2015-08-17 00:18:37

标签: php twig slim html-escape-characters

所以我使用twig和slim以及你的普通PHP来做一些分页。 pre-pagination,slim并没有删除链接中的空格/撇号,但现在却是。任何帮助都是值得赞赏的,希望它不是一个明显的愚蠢。

相关代码如下所示。问我是否需要更多。

路线

$results = $mysqli_conn->query("SELECT * FROM businesses ORDER BY id ASC LIMIT $page_position, $item_per_page");

//Display records fetched from database.
while($row = $results->fetch_assoc()) {
  $name = $row['name'];
  $link_bprofile = $app->urlFor('business.profile', array('name' => $name));
  $link_adminedit = $app->urlFor('admin.business.edit', array('business' => $name));
  $link_admindelete = $app->urlFor('admin.business.delete', array('business' => $name));

  $endResult .= '<tr>';
  $endResult .=  "<td>[<a href='$link_bprofile'>Profile</a>]</td>";
  $endResult .=  "<td>$name</td>";
  $endResult .=  "<td>[<a href='$link_adminedit'>Edit</a>]</td>";
  $endResult .=  "<td>[<a href='$link_admindelete'>Remove</a>]</td>";
  $endResult .=  "<td>$name</td>";
  $endResult .= '</tr>';
}
## End displaying Records ##

$app->render('/business/all.php', [
  'businesses' => $businesses,
  'business' => $app->business,
  'pagination' => $endResult,
  'links' => $app->business->pagination($total_pages, $item_per_page, $currentPage, $page_url)
]);

查看

<div class="container-fluid main-container">
<div class="col-md-12 content">
    <div class="panel panel-default">
        <div class="panel-heading"> Businesses </div>
        <div class="panel-body text-center">
          <table class="table table-striped table-hover" style="text-align: center;" name="businesses_tab" id="businesses_tab">
                <thead>
                    <tr>
                <th style="text-align: center;"></th>
                        <th style="text-align: center;">Name</th>
                        <th style="text-align: center;">Upvotes</th>
                        <th style="text-align: center;">Downvotes</th>
                        <th style="text-align: center;">Reviews</th>
                    </tr>
                </thead>
                <tbody>
              {{ pagination | raw }}
                </tbody>
            </table>
          <ul class="pagination">
            {{ links | raw }}
          </ul>
        </div>
    </div>
</div>

修改

我做了一些复习,发现了一些有趣的东西; Slim正在输出链接(当被视为纯文本时)为“/ dev / website / public / b / McDonald's”,但链接本身正在被查看而没有撇号和“s”。这有帮助,但我仍然找不到解决这个问题的方法。

1 个答案:

答案 0 :(得分:0)

我为我的问题创建了一个简单的解决方案...将业务ID作为参数而不是其名称。这使得链接不会被发布用于转义字符或任何类型的链接。

感谢所有这些人提供了很好的信息并试图提供帮助。 :d