1

Slim PHP フレームワークを使用してフォーラムを作成しようとしています。ただし、フォーラムの各セクションにパラメーターを割り当てるという問題に遭遇しました。トピックのトイレのカテゴリごとにIDを取得したい。これは、URL が次のようになることを意味します。

http://website.com/forum?catID=1

それに基づいて、ページはそのカテゴリのトピックをレンダリングします。私はurlFor()関数を使用していますが、それを渡す方法がわからないようです。

これが私の現在のルートコードです:

$app->get('/forum', function() use($app) {

$categories = $app->categories->get();
$topics = $app->topics->get();


$app->render('forum/forumCat.php', ['categories' => $categories, 'topics' => $topics]);
})->name('forumCategories');

カテゴリを表示するために使用するコードについては、次のとおりです。

{% for category in categories %}
<br>
<p><a href="#">{{category.category_title}}<a><br>{{category.category_description}}</p>
<br>
<br>
{% endfor %}

ありがとう

4

1 に答える 1

2

定義した変数はcategoriesありますか? topicsの値を取得したいだけの場合はcatID、次のようにアクセスできます。

$catID = $app->request->get()['catID'];

のように、URL 自体に catID を入れることも検討してくださいhttp://website.com/forum/category/1

次に、次のように取得できます。

$app->get('/forum/category/:cat_id/?', function($cat_id) use($app) {

    $topics = functionToLookUpTopicsByCategoryID($cat_id);

    $app->render('forum/forumCat.php', [
        'topics' => $topics
    ]);
})->name('forumCategories');

リクエストからカテゴリ ID をキャッチしたい場合はPOST、次のようにすることができます。

$app->post('/forum/category/?', function() use($app) {
    $id = $app->request->post()['id'];
    ...
});
于 2015-06-05T20:30:40.463 に答える