php不会发布我的HTML表单

时间:2014-01-30 19:28:34

标签: php html html-form html-form-post

HTML:

<form method="post" action="create.php">
Job #: <input type="text" name="jobnum">
<br>
Program: <input type="text" name="program"><br />
Ship Date: <input type="text" name="shipdate"><br />
Description: <input type="text" style="height:100px; width:85%" name="description"><br /><br />
Proto Verified By: <input type="text" name="name"><br /><br />
Additional Notes: <input type="text" style="height:100px; width:85%" name="notes"><br />
<input type="submit" name="value" value="submit" />
</form>

PHP:

$savedata = $_REQUEST['savedata'];
if ($savedata == 1){

$data = $_POST['jobnum']  . "\r\n";
$data .= $_POST['program']  . "\r\n";
$data .= $_POST['description']  . "\r\n";
$data .= $_POST['name'] . "\r\n";
$data .= $_POST['notes']  . "\r\n";

$file = "YOURDATAFILE.txt"; 

$fp = fopen($file, "a") or die("Couldn't open $file for writing!");
fwrite($fp, $data) or die("Couldn't write values to file!"); 

fclose($fp); 
echo "Your Form has been Submitted!";

}

我不确定为什么我的php不会发布我的表单。我提交的是php页面,但它完全是空白的。我对代码有点新意,所以我可能需要一些详细的回复...

4 个答案:

答案 0 :(得分:1)

您需要添加隐藏表单字段设置将数据保存为1,以便完成if语句:

<input name="savedata" value="1" type="hidden" />

答案 1 :(得分:1)

试试这个,你还没有通过表单提交按钮传递或发布名称savedata,我使用如下

if(isset($_POST['value'])){

而不是

$savedata = $_REQUEST['savedata'];
if ($savedata == 1){

答案 2 :(得分:1)

表单中没有savedata个命名字段。所以我建议您使用提交按钮的名称来检查表单是否已提交。并且isset()用于检查php中的值。

$savedata = $_REQUEST['value'];
if (isset($savedata)){
   ...

答案 3 :(得分:0)

表单中没有定义savedata元素。

我还建议你在代码中保持一致,用$ _POST或$ _REQUEST获取所有元素。另外,为表单的name属性赋值。