私は自分のプロジェクトでチャット機能を作っています。そのチャット機能は人々がメッセージをお互いに送ることができますが、問題は何かを送ることです。問題は、私が度記号や記号を送信しているときに、何も挿入しないということです。データベースにデータを正しく挿入する方法
私のコード(これは私が試したものの一例です):
<?php
$message = htmlspecialchars($_POST['message']);
$message = mysqli_real_escape_string($con, $message);
//Here i am inserting everything
mysqli_query($con, "INSERT INTO message (message) VALUES ('$message')");
?>
は、あなたたちは私の問題を理解していホープ、私は助けを必要とする、私を助けてください。
を...はhtmlspecialchars($詐欺、$ _POST [ 'メッセージ']);'間違っています。 'htmlspecialchars()'関数は接続ハンドラを引数として取っていません。 RTM、[http://php.net/manual/en/function.htmlspecialchars.php](http://php.net/manual/en/function.htmlspecialchars.php) –
クエリはSQLインジェクションの影響を受けやすいです。 mysqliを使っているなら、['prepared statements'](http://php.net/manual/en/mysqli.quickstart.prepared-statements.php)について学んでください。 [これはPHPでのSQLインジェクションを防ぐ方法です](http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php)。 –
* if-else *ブロックにクエリを挿入すると、次のようになります: 'if(mysqli_query($ con、INSERT INTO message(message)VALUES( '$ message'))){echo" success "; } else {"エラー:" $ con-> error; } '。また、エラー報告を有効にし、これらの行を追加してください。 'error_reporting(E_ALL); ini_set( 'display_errors'、1); 'をPHPスクリプトの先頭に置き、エラーが発生するかどうかを確認します。 –