繁体   English   中英

HTML和PHP:如何管理表单中的按钮

[英]HTML and PHP: how to manage a button in a form

我知道这可能是一个愚蠢的问题,但是我真的很生气。

我是PHP的新手,我想创建一个这样的表单

在此处输入图片说明

用户在其中输入他的名字和餐厅评论的位置,单击该按钮时,必须将数据添加到页面中其他评论的下方。 我尝试用HTML编写此代码以创建表单

<form action="aggRecensione.php" method="post">
    <p class="noIndent">Nome: <input type="text" name="nome"></p>
    <p class="noIndent">Recensione</p>
    <textarea name="recensione" rows="3" cols="40"></textarea>
    <input type="submit" value="Aggiungi recensione" name="pulsanteRecensione" onclick="location.href='aggRecensione.php';">
</form>

以及PHP中的这段代码(aggRecensione.php)

<?php
    $nome = $_POST('nome');
    $testo = $_POST('recensione');
    echo "<p class=\"noIndent\">Recensione di $nome:</p>";
    echo "<p>$testo</p>";
?>

但是PHP之一不起作用。 我以前从未管理过按钮,发现的所有教程都对我没有帮助。 我究竟做错了什么?

差不多不错,但也许您可以尝试

<?php
    $nome = $_POST['nome'];
    $testo = $_POST['recensione'];
    echo "<p class=\"noIndent\">Recensione di $nome:</p>";
    echo "<p>$testo</p>";
?>

那是因为$_POST的内容是一个数组,并且array keys由方括号[]

同时删除onclick="location.href='aggRecensione.php';"

并且要确保用户确实按下了按钮,您还可以添加此按钮

<?php
if ($_SERVER['REQUEST_METHOD'] == "POST") {
    $nome = $_POST['nome'];
    $testo = $_POST['recensione'];
    echo "<p class=\"noIndent\">Recensione di $nome:</p>";
    echo "<p>$testo</p>";
}
?>

http://php.net/manual/en/reserved.variables.post.php

删除这个

onclick="location.href='aggRecensione.php';"

这会将页面作为get方法调用。

并更改这两条线。

$nome = $_POST['nome'];
$testo = $_POST['recensione'];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM