【发布时间】:2014-11-09 23:20:34
【问题描述】:
我试图通过此处的搜索功能寻求帮助,但对类似问题的所有答案都过于详尽,我无法理解,即示例代码太复杂,我无法提取可能与我相关的部分问题:(
我有一个 html 表单,它通过 ajax 请求将数据表中特定行上的用户输入发送到 php 文件,输入被插入到我的 sqldb 中。 我可以发送用户输入的文本输入并传输其他信息,例如他们所在的特定行或用户的网络帐户。但我现在想添加一个复选框,以便用户可以选择他们的评论是私人的还是公开的。但是我不知何故无法从复选框传输值,没有错误,也没有将复选框数据插入数据库。 我必须以不同于文本区域的方式处理复选框吗?非常感谢您的帮助!
我的代码如下所示: html:
function insertTextarea() {
var boardInfo = $( "<form id='boardComment'><textarea rows='2' cols='30'>Notizen? Fragen? Kommentare?</textarea>Privat:<input type='checkbox' name='privatcheckbox' value='private'><input type='submit' value='Submit'><input type='reset' value='Cancel'></form>");
$( this ).parent().append(boardInfo);
$("tbody img").hide();
$("#boardComment").on( "submit", function( event ) {
event.preventDefault();
var change_id = {};
change_id['id'] = $(this).parent().attr("id");
change_id['comment'] = $(this).find("textarea").val();
change_id['privatecheckbox'] = $(this).find("checkbox").val();
if( $(this).find("textarea").val() ) {
$.ajax({
type: "POST",
url: "boardinfo.php",
cache: false,
data: change_id,
success: function( response2 ) {
alert("Your comment has been saved!");
$("tbody img").show();
$("#" + change_id['id']).find("form").remove();
}
});
};
});
这是php部分:
$id = mysql_real_escape_string($_POST['id']);
$comment = mysql_real_escape_string($_POST['comment']);
$privatecheckbox = mysql_real_escape_string($_POST['privatecheckbox']);
$sql="INSERT INTO cerberus_board_info (BOARD_INFO_COMMENTS, BOARD_INFO_USER, BOARD_INFO_CHANGE_ID, BOARD_INFO_ENTRY_CHANNEL, BOARD_INFO_PRIVACY_LEVEL) VALUES ('$comment', '$ldapdata', '$id', 'Portal', '$privatecheckbox')";
【问题讨论】:
-
不,没有!一切正常,只有复选框值没有提交到列中..