Javascript PHP:回显从表单提交的输入
我有一个表单,其中包含一个文本字段。现在,我正在尝试在表单提交后回显输入的内容。以下是我的代码:Javascript PHP:回显从表单提交的输入,javascript,php,html,forms,Javascript,Php,Html,Forms,我有一个表单,其中包含一个文本字段。现在,我正在尝试在表单提交后回显输入的内容。以下是我的代码: <script> function postResultss() { document.write("<?php echo ($_POST['tweet1']); ?>"); } </script> <form method = "POST"> <input type = "text" n
<script>
function postResultss()
{
document.write("<?php echo ($_POST['tweet1']); ?>");
}
</script>
<form method = "POST">
<input type = "text" name = "tweet1">
<br>
<input type = "submit" onclick = "postResultss()" />
</form>
函数postResultss()
{
文件。填写(“”);
}
上面的代码位于PHP文件中。然而,在提交表单时,没有得到任何回应。该函数确实会按预期调用,因为我在调试时已尝试回显自定义消息。但是,当我尝试回显$\u POST['tweet1']
的值时,不会回显任何内容,其中tweet1
是我尝试显示其内容的输入文本字段的名称
这里似乎出了什么问题?问题是在表单提交之前调用javascript函数(因此在php可以打印回显之前),并且由于页面更新了document.write,因此会被新请求覆盖 你为什么不试试这样的
<form method = "POST">
<?php echo ($_POST['tweet1']); ?>
<input type = "text" name = "tweet1">
<br>
<input type = "submit"/>
</form>
或:
var text=“”;
如果(文本!=“”){
警报(文本);
}
您执行提交并单击。这是错误的。此外,不要做文档。写
这样做是更好的选择(js中没有php):
在您的示例中,使用php生成响应供用户查看,而不是使用javascript编写无法工作的内容
<form method = "POST">
<input type = "text" name = "tweet1">
<br>
<input type = "submit" value='Submit' />
<div id='msgs'>
<?php
if( $_SERVER['REQUEST_METHOD']=='POST' && isset( $_POST['tweet1'] ) ){
echo $_POST['tweet1'];
}
?>
</div>
</form>
PHP内置JS。嗯,不。@HawasKaPujaari,为什么不呢?首先,因为按钮是一个提交按钮,所以附加的javascript函数postResultss()
不太可能被调用,除非js函数中有event.preventDefault()
。其次,点击按钮时,js函数将无法使用发布的var-只有在表单提交后,然后事件发生,这是显示发布值的错误方法。@RamRaider好吧,当我尝试回显类似echo(“felicity”)的内容时代码>在my JS函数中,确实会显示消息。这意味着在提交表单时确实会调用JS函数。好的,因此会调用JS函数,但在单击按钮时发布的变量将不可用,也不会使用文档写入而不是警报。这将起作用,但我需要在提交表单时调用一个函数,因此,此解决方案对我的情况可能没有帮助。请稍候,是否希望在提交表单之后或之前显示文本?提交表单之后。这就是我试图在提交字段中触发onclick
事件的原因。
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') // check if post
echo htmlentities($_POST['tweet1']);
?>
<form method="post">
<input type="text" name="tweet1">
<br>
<input type="submit" value="Tweet!">
</form>
<form method = "POST">
<input type = "text" name = "tweet1">
<br>
<input type = "submit" value='Submit' />
<div id='msgs'>
<?php
if( $_SERVER['REQUEST_METHOD']=='POST' && isset( $_POST['tweet1'] ) ){
echo $_POST['tweet1'];
}
?>
</div>
</form>