[解決済み] mysql_real_escape_string が動作しない [duplicate].
2022-02-14 17:36:17
質問
を行おうとすると
mysql_real_escape_string
ログインシステムの場合、フォームから変数が記録されません。もし私が
$username = $_POST['username'];
と入力してechoすると、表示される。
$username = mysql_real_escape_string($_POST['username']);
と入力してechoしても、表示されません。また、データベース接続のテストも行いましたが、動作しています。これは私のコードです。
session_start();
$db = mysqli_connect($connection, $user, $pass, $database);
if (isset($_POST['submit'])) {
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
echo $username;
$sql = "SELECT * FROM users WHERE username='$username' AND password='$password'";
echo $sql;
$result = mysqli_query($sql, $db);
以前は動作していたのですが、なぜか急に動作しなくなりました。 何かありましたら、よろしくお願いします :)
解決方法を教えてください。
まず、クエリを作成するためにデータをエスケープしてはいけません。プリペアドステートメントを使用する必要があります。参照 PHPでSQLインジェクションを防ぐには?
とはいえ、あなたの問題は、あなたが
mysql_real_escape_string()
がありますが、あなたは
mysqli
(ただし
mysql
)接続になります。
mysqli
と
mysql
は異なる拡張子です。お願い
を使用しないでください。
mysql_*
を使用します。
mysql_*
の機能は古くなっています。
非推奨
これらは、最新の PHP (バージョン 7.0 以降) からは完全に削除されています。使用方法
MySQLi
または
PDO
の代わりに
問題を解決するには
一時的に
を使用します。
mysqli_real_escape_string()
の代わりに
mysql_real_escape_string()
. これを修正するには
永続的かつ正確に
プリペアド・ステートメントを使用し、エスケープしないこと。
関連
-
[解決済み】Notice: 非オブジェクトのプロパティを取得しようとしているエラー
-
[解決済み】接続の取得に失敗しました: php_network_getaddresses: getaddrinfo failed: 名前またはサービスが不明
-
[解決済み】Weird PHP error: 'Can't use function return value in write context'.
-
[解決済み】php, mysql - データベースへの接続数が多すぎるエラー
-
[解決済み】foreach()に与えられた引数が無効です。)
-
[解決済み] 入力ファイルが指定されていない
-
[解決済み】Fatal error: mysqli_result 型のオブジェクトは使用できません [終了] 。
-
[解決済み] PHPの配列を別の配列にコピーする関数はありますか?
-
[解決済み] PHP product.php?id=1 のような URL を作成する方法
-
[解決済み] mysql_real_escape_string() を回避する SQL インジェクション
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】PHP - 構文エラー、予期しないT_CONSTANT_ECAPSED_STRING [閉店].
-
[解決済み】メンバ関数をnullで呼び出す?
-
[解決済み】DateTimeクラスのオブジェクトを文字列に変換できない
-
[解決済み】 $_SERVER['DOCUMENT_ROOT'] と $_SERVER['HTTP_HOST'] の違いについて]
-
[解決済み】子テーマのCSSが親テーマをオーバーライドしない
-
[解決済み] [Solved] Fatal error: 非オブジェクトのメンバ関数fetch_assoc()の呼び出し [重複]。
-
[解決済み】書き込みコンテキストでメソッドの戻り値を使用することができない
-
[解決済み】phpのシンタックスエラー、予期しないT_IFエラーを修正する方法は?[クローズド]。
-
[解決済み] PHP 未定義関数への呼び出し
-
[解決済み] PHPでSQLインジェクションを防ぐにはどうしたらいいですか?