使用post和get在url中传输表单数据

时间:2011-10-13 09:42:39

标签: php url url-routing

我有问题。我需要将用户键入的消息传输到同一页面(因为我需要将其保存到数据库中)。我有一个表单和一个“提交按钮”。

如果我使用命令'post',我可以保存将数据传输到同一页面并在提取后变量后保存它。

问题是我不在网址中发送page_id(我可以使用GET方法实现它,但是我无法使用它,导致用户消息可能太长而无法进入网址)。

我尝试做一些javascript代码,将“提交”按钮转移到简单按钮并进行重定向..:

<script type="text/javascript">
document.getElementById('messageSent').addEventListener('click', function () {
    window.location = 'article.php?articleID=<?php echo $_REQUEST['pageID']; ?>';
}, false);
</script>

然后POST变量丢失了。

基本上,我想要的是实现post和get的效果,我想在编码url时发布变量,如下所示:

home.php?pageID=<?php echo $_REQUEST['pageID']; ?>

页面应该作为post请求重新发布给自己,并设置了pageID ..

我如何实现这一目标?!?

2 个答案:

答案 0 :(得分:1)

您必须动态构建表单,使用POST值填充表单,然后使用JavaScript提交表单:

<form id="myform" action="target.php" method="post">
 <input type="hidden" value="<?php echo $_POST['pageID']; ?>">
</form>

<script>
 // ... eventually.... 
 document.getElementById("myform").submit();
</script>

答案 1 :(得分:0)

您应该使用包含表单操作中的页面ID的URL。例如:

<form action="home.php?pageID=<?php echo $_REQUEST['pageID']; ?>" method="post">
</form>