2

我有以下表格:

HTML

<form id="myForm" action="" method="post">
<div id="edit-box">
<INPUT type="submit" name="save-text" id="save-text" value="Save">
<textarea id="editor" name="editor">
<?php echo $content; ?>
</textarea>
</div>
</form>

PHP

if ($_POST["save-text"]){
    // get form data and do stuff here
}

如何确保仅在单击提交按钮时才运行 PHP 脚本,而不是其他时间?

4

2 回答 2

2

在页面开头的 HTML 标记之前添加它。
也不要忘记将页面扩展名从更改.html.php

if (isset($_POST['save-text'])) {
    // get form data and do stuff here
}
于 2012-09-20T05:21:45.090 回答
1

问题是if($_POST["save-text"])返回 false ,因此您的代码没有被执行。您将需要$_POST["save-text"]isset()函数包装 。isset()可用于检查某个变量的存在,并返回TRUE变量是否存在并且具有除NULLor以外的值FALSE

正确的代码如下所示:

if (isset($_POST['save-text'])) {
    //Do something
}

您还应该确保您的提交按钮具有“值”属性。如果他们不这样做,$_POST 数组中就不会有值,因此 isset($_POST["submit"]) 将返回 false。

例子:

<input type="submit" name="submit">

isset($_POST["submit"])   // returns false

<input type="submit" name="submit" value="submit">

isset($_POST["submit"])   // returns true.
于 2012-07-31T03:50:09.873 回答