我遇到了正确提交表单的问题。我已经成功地使用了几乎与此类似的代码,但我似乎无法找到问题。除了$subject=$_POST['subject'];
之外,它一直在我的表单页面上的每个索引上都说“未定义的索引”。我已经包含了我的表单和php脚本,任何人都可以看到这个问题吗?
<form name="support" id="support" method="post" action="process.php">
<input type="text" value="Name" name="name" id="name" /> <br/>
<select name="subject" name="subject" id="subject">
<option value="Suggestion">Suggestion</option>
<option value="Website Error">Website Error</option>
<option value="Forums">Forums</option>
<option value="Error 404">Error 404</option>
<option value="Other">Other</option>
</select> <br/>
<textarea rows="10" cols="40" name="content" id="Content">Please type your message here!</textarea> <br/>
<input type hidden value="<br/>" name="br" id="br" />
<input type hidden value="<p>" name="sp" id="sp" />
<input type hidden value="</p>" name="ep" id="ep" />
<input type hidden value='<link rel="stylesheet" type="text/css" href="/css/layout.css">' name="css" id="css" />
<input type hidden value="<h1>Support Ticket" name="head" id="head" />
<input type hidden value='<script src="/scripts/copyright.js"></script>' name="copy" id="copy" />
<input type hidden value="Status: Not View" name="stat" id="stat"/>
<input type="submit" name="s1" id="s1" value="Submit">
</form>
<?
$name=$_POST['name'];
$subject=$_POST['subject'];
$con=$_POST['content'];
$br=$_POST['br'];
$sp=$_POST['sp'];
$ep=$_POST['ep'];
$css=$_POST['css'];
$head=$_POST['head'];
$copy=$_POST['copy'];
$stat=$_POST['stat'];
$stamp=date("jS \of F Y h:i:s A");
$ran=rand(1000000,9999999);
$fp=fopen("tickets/$ran.html","a");
$savestring=$css.$head.$sp.$name." - ".$subject." - ".$con." - Ticket# ".$ran.$br.$stat.$br."Submitted: ".$stamp.$ep.$copy;
fwrite($fp,$savestring);
fclose($fp);
echo"<p>Thank you $name!</p>";
echo "<p>Your Ticket Number# $ran</p>";
echo "<p>Submitted: $stamp</p>"
?>
答案 0 :(得分:2)
您的代码很乱 - 如果您的格式正确,您可能会注意到,您的HTML代码有错误
即
<input type hidden value="</p>" name="ep" id="ep"/>
我认为,你的意思是
<input type="hidden" value="</p>" name="ep" id="ep"/>
您也应该使用<?php
而不是<?
,因为在许多服务器上禁用了短语法。
顺便说一下。你的代码在当前版本中工作,如果chrome - 所以我认为,因为你的html语法。如果你清理你的混乱,它应该适用于每个浏览器