php mysql 插入表格 post 问题
php mysql insert form post issue
我的 mysql 插入语句在我手动插入时会通过,但是,表单不会 post。感谢任何帮助。
形式
<form method="post" action="">
<h4>Title</h4>
<input type="text" id="post_title" />
<h4>Location</h4>
<input type="text" id="post_location" />
<h4>My Tale</h4>
<textarea id="post_content" ></textarea>
<input type="submit" value="Share"/><br />
</form>
表单处理器
<pre>
if (isset($_GET['success']) === true) {
echo 'Your journal entry has been added';
} else {
if (empty($_POST) === false && empty($errors) === true) {
$post_data = array(
'post_title' => $_POST['post_title'],
'post_location' => $_POST['post_location'],
'post_content' => $_POST['post_content']
);
add_post($user_id, $post_data);
header('Location: settings.php?success');
exit();
} else if (empty($errors) === false) {
echo output_errors($errors);
}
?>
</pre>
处理post进程的函数
<pre>
function add_post($blog_author, $post_data) {
$post = array();
array_walk($post_data, 'array_sanitize');
foreach($post_data as $field=>$data) {
$post[] = '`' . $field . '` = \'' . $data . '\'';
}
mysql_query("INSERT INTO user_blog (`post_author`,`post_title`,`post_location`,`post_content`) VALUES ('$blog_author','post_title','post_location','post_content')");
}
</pre>
没有错误,只是检查空白表单域。 post 和函数之间似乎有问题,但我无法确定问题所在。
textarea 中没有名称属性,因此不会获取内容
在 add_post()
中 $post
已准备好但未在对 mysql_query
的最终调用中使用。
您准备在 INSERT INTO user_blog SET
语句中使用 $post
,但您正在使用 INSERT INTO user_blog () VALUES()
进行最终调用。
在值中只会插入`$blog_author,其余为字符串文字。
我的 mysql 插入语句在我手动插入时会通过,但是,表单不会 post。感谢任何帮助。
形式
<form method="post" action="">
<h4>Title</h4>
<input type="text" id="post_title" />
<h4>Location</h4>
<input type="text" id="post_location" />
<h4>My Tale</h4>
<textarea id="post_content" ></textarea>
<input type="submit" value="Share"/><br />
</form>
表单处理器
<pre>
if (isset($_GET['success']) === true) {
echo 'Your journal entry has been added';
} else {
if (empty($_POST) === false && empty($errors) === true) {
$post_data = array(
'post_title' => $_POST['post_title'],
'post_location' => $_POST['post_location'],
'post_content' => $_POST['post_content']
);
add_post($user_id, $post_data);
header('Location: settings.php?success');
exit();
} else if (empty($errors) === false) {
echo output_errors($errors);
}
?>
</pre>
处理post进程的函数
<pre>
function add_post($blog_author, $post_data) {
$post = array();
array_walk($post_data, 'array_sanitize');
foreach($post_data as $field=>$data) {
$post[] = '`' . $field . '` = \'' . $data . '\'';
}
mysql_query("INSERT INTO user_blog (`post_author`,`post_title`,`post_location`,`post_content`) VALUES ('$blog_author','post_title','post_location','post_content')");
}
</pre>
没有错误,只是检查空白表单域。 post 和函数之间似乎有问题,但我无法确定问题所在。
textarea 中没有名称属性,因此不会获取内容
在 add_post()
中 $post
已准备好但未在对 mysql_query
的最终调用中使用。
您准备在 INSERT INTO user_blog SET
语句中使用 $post
,但您正在使用 INSERT INTO user_blog () VALUES()
进行最终调用。
在值中只会插入`$blog_author,其余为字符串文字。