我试图使用GET从我的视图向我的控制器方法发送2个参数。
我不确切知道如何将第二个参数添加到操作URL。
这里我只发送一个参数。
action="/MVC/teacher/lookspecificMessage/<?= $details['person_receive_id']; ?>" method="GET">
但是,我想添加此<?= $details['related_message']; ?>
我尝试过使用lookspecificMessage/<?= $details['person_receive_id']; ?>&<?= $details['related_message']; ?>
,但它不起作用。
答案 0 :(得分:1)
如果使用URL重写,则url应遵循声明的模板。
在你的情况下,它可以是
行动=#&34; / MVC /教师/ lookspecificMessage /的 $ person_receive_id 强> / <强> $ related_message 强>&#34;
或
行动=#&34; / MVC /教师/ lookspecificMessage /的 $ person_receive_id 强> / lookrelaredMessage /的 $ related_message 强>&#34;
或任何其他形式 您应该检查重写规则以找到url的正确模板。
答案 1 :(得分:0)
使用URL重写,您可以在主URL结构中使用参数。虽然,通常情况下,GET
参数会在问号之后传递到最后:
example.com/path/to/page?param=1
如果您需要多个参数,请使用&符号将它们分开:
example.com/path/to/page?param=1&foo=bar
在您的情况下,看起来您的.htaccess
文件正在进行一些URL重写,或者您的框架正在做一些魔术,这会自动提取参数并将其设置在$_GET
数组中。
要明确的是,你可以做到这一点:
<?php
// Get params
$receiveId = (int) $details['person_receive_id'];
$message = (string) $details['related_message'];
// Build URL
$url = "/MVC/teacher/lookspecificMessage/$receiveId?related_message=$message";
// Encode URL (in case message has weird values)
$url = urlencode($url);
?>
<form method="GET" action="<?php echo($url); ?>">
<!-- REST OF FORM HERE -->
</form>