Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用php在mysql数据库中保存复选框(布尔)值_Php_Mysql_Checkbox_Boolean - Fatal编程技术网

使用php在mysql数据库中保存复选框(布尔)值

使用php在mysql数据库中保存复选框(布尔)值,php,mysql,checkbox,boolean,Php,Mysql,Checkbox,Boolean,我正在尝试保存复选框值。。我正在做一个带有复选框表单的注册系统。它的功能是知道学生是否通过了要求,因此我将其指定为布尔类型。如果选中,则必须保存值“1”,如果未选中,则必须保存值“0” 错误是: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '')' at line 2 如果

我正在尝试保存复选框值。。我正在做一个带有复选框表单的注册系统。它的功能是知道学生是否通过了要求,因此我将其指定为布尔类型。如果选中,则必须保存值“1”,如果未选中,则必须保存值“0”

错误是:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '')' at line 2
如果我取消选中其中一项要求,则会发生以下情况:

Notice: Undefined index: brigada_form in C:\xampp2\htdocs\es\add_newstud.php on line 12
Notice: Undefined index: two_picture in C:\xampp2\htdocs\es\add_newstud.php on line 18
我真的需要一些帮助。这是密码

示例表单:1将值设置为“1”,并且我的数据库中的默认值为“0”

<input type="checkbox" name="two_picture" id="two_picture" value="1" />

首先,MySQL扩展在PHP5.5.0中被弃用,在PHP7.0.0中被删除。相反,应该使用MySQLi或PDO_MySQL扩展

如果您必须使用MySQL,我建议:

$insert_req = sprintf("INSERT INTO es_req_newstud (requirement_id,enrollment_form,report_card,brigada_form,physical_inspection_form,agreement_upon_enrollment,nso,good_moral,1x1_picture,2x2_picture) VALUES ('%d','%s','%s','%s','%s','%s','%s','%s','%d','%d');",
    $_POST['requirement_id'],
    mysql_real_escape_string($_POST['enrollment_form']),
    mysql_real_escape_string($_POST['report_card']),
    mysql_real_escape_string($_POST['brigada_form']),
    mysql_real_escape_string($_POST['physical_inspection_form']),
    mysql_real_escape_string($_POST['agreement_upon_enrollment']),
    mysql_real_escape_string($_POST['nso']),
    mysql_real_escape_string($_POST['good_moral']),
    $_POST['one_picture'],
    $_POST['two_picture']
);
mysql_query($insert_req) or die(mysql_error());

这将有助于确保不发生SQL注入。同样,我强烈建议您转到MySQLi或PDO。

您好,在您的查询结束时,您缺少了一个“(图片后面)。----->,”$两张图片)“哦,谢谢。但是仍然有一个错误。您的SQL语法中有一个错误;请检查与MySQL服务器版本对应的手册,以了解在第2行附近使用的正确语法。我不知道有什么问题。
为什么这样包装?我建议只:
插入到es_req\u newstud中(要求id、入学表格、报告卡、报告卡、体检表格、入学协议、nso、良好道德、1x1图片、2x2图片)值(“$requirement\u id”、“$inclusion\u form”、“报告卡”、“brigada\u form”、“体检表格”、“入学协议”、“nso”、“良好道德”、“一张图片”、“两张图片”)
$insert_req = sprintf("INSERT INTO es_req_newstud (requirement_id,enrollment_form,report_card,brigada_form,physical_inspection_form,agreement_upon_enrollment,nso,good_moral,1x1_picture,2x2_picture) VALUES ('%d','%s','%s','%s','%s','%s','%s','%s','%d','%d');",
    $_POST['requirement_id'],
    mysql_real_escape_string($_POST['enrollment_form']),
    mysql_real_escape_string($_POST['report_card']),
    mysql_real_escape_string($_POST['brigada_form']),
    mysql_real_escape_string($_POST['physical_inspection_form']),
    mysql_real_escape_string($_POST['agreement_upon_enrollment']),
    mysql_real_escape_string($_POST['nso']),
    mysql_real_escape_string($_POST['good_moral']),
    $_POST['one_picture'],
    $_POST['two_picture']
);
mysql_query($insert_req) or die(mysql_error());