在开始之前,不是this的副本。这对我没有任何帮助。
我试图从html表单的输入创建一个php变量。 这是我的代码,我粗略地从某个网站复制了某地,大概是
<form method="post">
Word: <input type="text" name="name"><br>
<input action="welcome.php" type="submit">
</form>
<audio src="http://ssl.gstatic.com/dictionary/static/sounds/de/0/"<?php echo $_POST["name"]; ?>".mp3" loop="1" autoplay="1"></audio>
另外一件事,因为我点击了复制然后粘贴,我不知道welcome.php
实际上是什么。由于这个可怕的网站实际上没有指示我。我试过没有这条线,但遗憾的是,无济于事。
如果您想了解我的意思,请点击here。
PS:请不要问为什么我这样做。这是一个内心的笑话,将秘密放置在许多地方。
非常感谢提前,
我
答案 0 :(得分:1)
<form method="post" action=''>
Word: <input type="text" name="name"><br>
<input value='submit' type="submit">
</form>
<?php if(isset($_POST['name'])) { //Isset checks if $_POST['name'] exists (has been posted) ?>
<audio src="http://ssl.gstatic.com/dictionary/static/sounds/de/0/"<?php echo htmlentities($_POST["name"]); ?>".mp3" loop="1" autoplay="1"></audio>
<?php } ?>
如果您想将name
的值分配给变量,请在页面上执行以下操作:
if(isset($_POST['name'])) //If the value has been posted, assign it to a variable.
{
$myvariable = $_POST['name'];
}
操作将回发到主页面,在表单上使用操作将帖子定向到特定页面(不输入任何内容并将其发布到当前页面)并且不在输入上使用。确保你也在任何帖子输入上使用htmlentities,否则它将容易受到XSS的攻击。一旦有名字发布,这也只有音频文件。
让我们逐行分解:
<form method="post" action=''>
该表单使用POST
方法posts the data到下一页抓取$_POST
。
Word: <input type="text" name="name"><br>
这是$_POST['name']
来自的地方。名称是输入的名称,它会发布到下一页,可以使用$_POST
抓取。
<input value='submit' type="submit">
单击提交按钮后,数据将发布到下一页。
</form>
关闭表格
<?php if(isset($_POST['name'])) { ?>
Isset检查$ _POST ['name']是否存在(已发布)
<?php echo htmlentities($_POST["name"]); ?>
将名称回显到页面上。
答案 1 :(得分:0)
你快到了。表单操作属性需要放在<form>
标记中,而不是其输入标记之一。如果您希望在用户点击提交按钮时将其返回到同一页面,请将php文件的名称放在action属性中,如下所示:
<form method="post" action=" nameOfThisFile.php ">
Word: <input type="text" name="name"><br>
<input type="submit" value="Submit">
</form>