【发布时间】:2014-03-11 11:04:08
【问题描述】:
我正在尝试创建一个将 textarea 数据发送到数据库的 php 表单。数据库表 uploads 有 3 个需要的数据项:
- user_id
- 类别
- 内容
HTML:
<form id="myform" action="php/savetext.php" method="POST" enctype="multipart/form-data">
<p><strong>Add your story here.</strong></p>
<input type="hidden" name="fbid" id="fbid">
<input type="hidden" name="category" id="category">
<textarea cols="50" rows="10" name="usertext" id="storyArea"></textarea>
<input type="submit" name="submit" value="Saada" />
<script type="text/javascript">
$( "#fbid" ).val( "sdf88d99sd" );
$( "#category" ).val( "texts" );
</script>
</form>
保存文本.php:
include_once('config.php');
if (isset($_POST['user_id']) && isset($_POST['category']) && isset($_POST['usertext'])) {
$user_id = mysql_real_escape_string($_POST['fbid']);
$category = mysql_real_escape_string($_POST['category']);
$content = mysql_real_escape_string($_POST['usertext']);
addUser($user_id, $category, $content);
}
else {
echo 'Upload failed! Try again.';
}
function addUser($user_id, $category, $content) {
$query = "SELECT id FROM uploads WHERE user_id = '$fbid' LIMIT 1";
$result = mysql_query($query);
$rows = mysql_num_rows($result);
if ($rows > 0) {
$query = "UPDATE uploads SET user_id = '$user_id', category = '$category' WHERE content = '$content'";
}
else {
$query = "INSERT INTO uploads (user_id, category, content) VALUES ('$user_id', '$category', '$content')";
}
mysql_query($query);
echo 'Upload was succesful. Thank you!';
}
但这不起作用。关于如何纠正这个问题的任何想法?
【问题讨论】:
-
更新应该在 where 条件而不是长文本中使用主键。
-
第二件事该函数必须有权访问连接字符串!!
-
你在使用文本区域的任何编辑器
-
忠告...不要使用 PHP mysql_* 函数,它们已被弃用,您应该使用 PDO 或 mysqli 代替它们。
-
@Karthick Kumar Ganesh - 不对文本区域使用任何编辑器。
标签: javascript php html mysql forms