ホームページ > バックエンド開発 > PHPの問題 > PHP がデータベース データの変更に失敗した場合はどうすればよいですか?

PHP がデータベース データの変更に失敗した場合はどうすればよいですか?

藏色散人
リリース: 2023-03-17 06:40:01
オリジナル
1544 人が閲覧しました

php でのデータベース データの変更に失敗した場合の解決策: 1. 対応する PHP ファイルを開きます; 2. ユーザー アカウントとパスワードを取得してデータベースに接続します; 3. ユーザー名変数を使用して、データテーブル; 4. エラーメッセージの表示; 5. $db が正しく接続されているか確認し、修正する; 6. prepare メソッドの SQL に関わるテーブルのフィールド名が間違っていないか確認し、正しく修正する

PHP がデータベース データの変更に失敗した場合はどうすればよいですか?

このチュートリアルの動作環境: Windows 7 システム、PHP バージョン 8.1、Dell G3 コンピューター。

php がデータベース データの変更に失敗した場合はどうすればよいですか?

問題の説明:

PHP はデータベース データを変更できません

丸 1 日エラーから立ち往生しています。助けてください。
コア エラー レポートは次の図に示されています:

PHP がデータベース データの変更に失敗した場合はどうすればよいですか?

完全なコードはここにあります:

<?php 
header(&#39;Content-Type:textml;charset=utf-8&#39;); $username=&#39;游客&#39;; 
//获取用户输入的账号和密码并连接数据库 
$account=$_POST[&#39;account&#39;]; $password=$_POST[&#39;password&#39;]; 
$db=new mysqli(&#39;localhost&#39;,&#39;root&#39;,&#39;12345678&#39;,&#39;newsmanage&#39;); 
//查询数据库是否已经有相同账号 
$query1=$db->prepare("SELECT account FROM user"); 
$query1->bind_result($theaccount); $query1->execute(); 
while($query1->fetch()) { if ($account == $theaccount) { echo &#39;<script>alert("该账号已被注册!");
location.href="register.html"</script>&#39;; exit(); } } 
//将用户输入的账号和密码写入数据库 
$add=$db->prepare("INSERT INTO user VALUES (null,&#39;general&#39;,null,?,?)"); 
$add->bind_param(&#39;ss&#39;,$account, $password); $add->execute(); 
//数据库对添加的新用户自动生成唯一ID,查寻此ID并赋值变量 
$query2=$db->prepare("SELECT userid FROM user WHERE account=&#39;$account&#39;"); 
$query2->bind_result($userid); $query2->execute(); $query2->fetch(); 
//用username变量修改数据表中的数据 
$edit=$db->prepare("UPDATE user SET username=? WHERE account=?"); 
$edit->bind_param(&#39;ss&#39;,$username,$account); $edit->execute(); 
//报错提示:Call to a member function bind_param() on boolean in echo &#39;<script>alert("恭喜您,注册成功!");
location.href="../login/login.html"</script>&#39;;
ログイン後にコピー

問題分析:

エラー メッセージは、ブール値に対してメンバー関数を使用したことを示しています。このエラー メッセージは、$db->prepare() メソッドが実行に失敗し、mysqli_stmt オブジェクトの代わりに false を返したことを示します。 $dbが正しく接続されているか、prepareメソッドのSQLに含まれるテーブルのフィールド名が間違っていないか確認してください。など、現時点では思いつかないその他の質問。 。 。

推奨学習: 「PHP ビデオ チュートリアル

以上がPHP がデータベース データの変更に失敗した場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート