PHP插入18列数据库数据失败,仅15列可正常插入问题求助
PHP插入18列数据库数据失败,仅15列可正常插入问题求助
大家好,我碰到了一个百思不得其解的问题:我的数据库表一共设置了18列,当我只插入其中15列的数据时,整个流程完全正常;可一旦尝试把剩下3列的数据也加进去,插入操作就直接失效了。更奇怪的是,如果我单独写一段代码只插入那3列数据,确实能成功写入,但原来的15列会变成空值。
我有点懵,难道phpMyAdmin对外部输入到数据库的数据量有什么限制吗?按理说既然表能建好18列,就应该能一次性插入所有对应的数据才对,有没有大佬能帮我分析下问题出在哪?
以下是我的PHP代码:
if(isset($_POST['submit'])) { $host = ""; $username = ""; $password = ""; $dbname =""; $conn = mysqli_connect($host, $username, $password, $dbname); $nck = $_POST['nck']; $CTB = $_POST['ctbn']; $CBB = $_POST['ctrbn']; if (!$conn) { die("Connection failed: " . mysqli_connect_error()); } $sql = "INSERT INTO personal_information (first, last,nickname,dob,id,gender,mar_sts,address,country,province,zip_code,city_born,country_born,citzen_sts,position,q,phone,email) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"; $stmt = mysqli_stmt_init($conn); mysqli_stmt_prepare($stmt, $sql); mysqli_stmt_bind_param($stmt, "ssssssssssssssssss", $FN,$LN,$nck,$dte,$ID,$OP,$MS,$AD,$CT,$PF,$ZC,$CTB,$CBB,$CK,$PA,$q,$P,$EL); mysqli_stmt_execute($stmt); mysqli_close($conn); }
现在的情况是,用这段代码执行插入的话,数据库里对应的行全是空的;但如果我把q、phone、email这三个字段从SQL语句和绑定参数里去掉,就能正常插入15列的数据。这三个字段到底哪里出问题了?
备注:内容来源于stack exchange,提问作者Loopy Momy
相关产品推荐
相关产品推荐

