我有这个文本框,文本区域和PHP代码,用于在表格中发送它。当我试图提交表格时,它变得空白,甚至其他部分也无效。
代码 -
<form action="" method="post" class="niceform">
<fieldset>
<dl><dd> </dd></dl>
<dl>
<dt>
<label for="service">Service Name:</label>
</dt>
<dd><input type="text" name="service_name" id="" size="39" /></dd>
</dl>
<dl>
<dt><label for="comments">Comments:</label></dt>
<dd>
<textarea name="comments" id="comments" rows="5" cols="36"></textarea>
</dd>
</dl>
<dl class="submit">
<input type="submit" name="submit" id="submit" value="Submit" />
<br />
<br />
</dl>
<?php
$service_name = $_POST['service_name'];
$comment = $_POST['comments'];
mysql_connect("localhost","root","");
mysql_select_db("easylaw");
$query = "INSERT INTO service_cat VALUES('','$service_name','$comment')";
mysql_query($query);
$result = mysql_affected_rows();
if($result==1)
{
?>
<div class="valid_box">Your Record Submitted. </div>
<?php
}
else
{
?>
<div class="warning_box">Something is Wrong.</div>
}
<?php
?>
</fieldset>
</form>
任何人都可以告诉我这可能是什么问题,这样它就不会出现,也没有任何东西出现......
谢谢:)
答案 0 :(得分:1)
<div class="warning_box">Something is Wrong.</div>
应该是
<div class="warning_box">Something is Wrong.</div><?php
以及
<?php
必须删除。
答案 1 :(得分:0)
评论字段在数据库中有哪种列类型?这应该是varchar或(long | medium)文本。
将此更改:mysql_query($sql);
更改为mysql_query($sql) or die(mysql_error());
以产生某种错误消息,这使得调试变得更加容易!
此外,您的脚本易受sql注入攻击;使用mysql_real_escape_string()函数转义用户输入。或者像PDO一样使用数据库抽象层。
虽然您没有义务说出列名,但我仍然建议您这样做。这是mysql insert-statement的完整语法。
INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE]
[INTO] tbl_name [(col_name,...)]
{VALUES | VALUE} ({expr | DEFAULT},...),(...),...
[ ON DUPLICATE KEY UPDATE
col_name=expr
[, col_name=expr] ... ]
答案 2 :(得分:0)
将此代码用于if -else
if($result==1)
{
echo"<div class='valid_box'>Your Record Submitted. </div>";
}
else
{
echo"<div class='warning_box'>Something is Wrong.</div>";
}