我正在尝试将帖子详细信息插入到SQL表中,但只插入了id
和date
值,而其他所有列都保持空白。
这是我的表单的HTML代码:
<!DOCTYPE html>
<html>
<head>
<title>xmudios14285</title>
<link rel="stylesheet" type="text/css" href="../css/foundation.min.css">
</head>
<body>
<form action="chapter_exec.php" enctype="multipart/form-data">
<table>
<tr>
<td>Spear : </td>
<td><input type="text" name="spear"/></td>
</tr>
<tr>
<td>Chapter Name : </td>
<td><input type="text" name="cont_head"/></td>
</tr>
<tr>
<td>Documented from : </td>
<td><input type="text" name="doc_from"></td>
</tr>
<tr>
<td>Image address : </td>
<td><input type="text" name="img_add"></td>
</tr>
<tr>
<td>Photo Courtesy : </td>
<td><input type="text" name="photo_add"></td>
</tr>
<tr>
<td >
<textarea name="content"></textarea>
</td>
</tr>
<tr>
<td><input type="submit" ></td>
</tr>
</table>
</form>
</body>
</html>
这是带有SQL查询的PHP:
<?php
session_start();
include('connection.php');
$spear = mysql_real_escape_string($_POST['spear']);
$title = mysql_real_escape_string($_POST['cont_head']);
$docFrom = mysql_real_escape_string($_POST['doc_from']);
$imageAdd = mysql_real_escape_string($_POST['img_add']);
$photoCourt = mysql_real_escape_string($_POST['photo_add']);
$doc_at = mysql_real_escape_string(date("Y-m-d h:i:sa"));
$content = mysql_real_escape_string($_POST['content']);
if (!mysql_query("INSERT INTO chapters(spear, cont_head, doc_from, `enter code here`img_add, photo_add, doc_at, content) VALUES ('$spear', '$title', '$docFrom', '$imageAdd', '$photoCourt', '$doc_at', '$content')"))
{
die('Error: ' . mysql_error());
} else {
header("location: dashboard2.php?remarks=postSubmitSuccesfull");
mysql_close($con);
}
?>
答案 0 :(得分:2)
缺少表单方法。
表单的默认方法是“ GET ”并且您正在使用 $ _ POST 方法接收数据。使用 method =“post”<更正此问题< /强>
答案 1 :(得分:0)
您应该将POST
method
属性添加到表单中,如下所示:
<form action="chapter_exec.php" enctype="multipart/form-data" method="post">
答案 2 :(得分:0)
尝试用以下内容替换您的表单标记:
<form action="chapter_exec.php" enctype="multipart/form-data" method="post">
验证你发布的值是否正确得到,写哦php文件:
print_r($_POST);
答案 3 :(得分:0)
如前所述,将method = POST
放入<form>
标记,在php中为secure-checking
添加隐藏字段。
<form action="chapter_exec.php" method = "POST" enctype="multipart/form-data">
<!-- blah3 -->
<input type = "hidden" name = "check">
</form>
然后在php
中使用isset
之类的:
<?php
session_start();
include('connection.php');
if(isset($_POST['check']){
$spear = mysql_real_escape_string($_POST['spear']);
$title = mysql_real_escape_string($_POST['cont_head']);
$docFrom = mysql_real_escape_string($_POST['doc_from']);
$imageAdd = mysql_real_escape_string($_POST['img_add']);
$photoCourt = mysql_real_escape_string($_POST['photo_add']);
$doc_at = mysql_real_escape_string(date("Y-m-d h:i:sa"));
$content = mysql_real_escape_string($_POST['content']);
if (!mysql_query("INSERT INTO chapters(spear, cont_head, doc_from, `enter code here`img_add, photo_add, doc_at, content) VALUES ('$spear', '$title', '$docFrom', '$imageAdd', '$photoCourt', '$doc_at', '$content')"))
{
die('Error: ' . mysql_error());
} else {
header("location: dashboard2.php?remarks=postSubmitSuccesfull");
mysql_close($con);
}
?>
}