这篇文章主要介绍“php修改数据库数据不成功如何解决”,在日常操作中,相信很多人在php修改数据库数据不成功如何解决问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php修改数据库数据不成功如何解决”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
php修改数据库数据不成功的解决办法:1、打开相应的PHP文件;2、获取用户账号和密码并连接数据库;3、用username变量修改数据表中的数据;4、查看错误信息;5、检查$db是否正确连接并修改;6、检查prepare方法中sql所涉及的表字段名是否有误并修改正确即可。
php修改数据库数据不成功怎么办?
问题描述:
PHP无法修改数据库数据
卡在ERROR报错一整天了,求大佬们帮帮忙
核心报错如图所示:
完整代码在此:
<?php
header('Content-Type:textml;charset=utf-8'); $username='游客';
//获取用户输入的账号和密码并连接数据库
$account=$_POST['account']; $password=$_POST['password'];
$db=new mysqli('localhost','root','12345678','newsmanage');
//查询数据库是否已经有相同账号
$query1=$db->prepare("SELECT account FROM user");
$query1->bind_result($theaccount); $query1->execute();
while($query1->fetch()) { if ($account == $theaccount) { echo '<script>alert("该账号已被注册!");
location.href="register.html"</script>'; exit(); } }
//将用户输入的账号和密码写入数据库
$add=$db->prepare("INSERT INTO user VALUES (null,'general',null,?,?)");
$add->bind_param('ss',$account, $password); $add->execute();
//数据库对添加的新用户自动生成唯一ID,查寻此ID并赋值变量
$query2=$db->prepare("SELECT userid FROM user WHERE account='$account'");
$query2->bind_result($userid); $query2->execute(); $query2->fetch();
//用username变量修改数据表中的数据
$edit=$db->prepare("UPDATE user SET username=? WHERE account=?");
$edit->bind_param('ss',$username,$account); $edit->execute();
//报错提示:Call to a member function bind_param() on boolean in echo '<script>alert("恭喜您,注册成功!");
location.href="../login/login.html"</script>';
问题分析:
错误信息已经说的很清楚了,说你对一个bool值使用了成员函数。这个错误信息说明你的$db->prepare()方法执行失败了,返回了false,而不是mysqli_stmt对象。请确认$db是否正确连接,prepare方法中的sql所涉及的表字段名是否有误。以及其他我暂时想不到的问题。
到此,关于“php修改数据库数据不成功如何解决”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。