2016-04-16 30 views
-2

文字列エスケープは:このエラーを修正するにはどうすればよいですか?私はこのエラーを得た

Fatal error: Uncaught Error: Call to undefined function mysqli_real_escape_string()

これは私が宣言する方法です:

$imageName=mysqli_real_escape_string($_FILES['image']['name']); 
$tmp_name=mysqli_real_escape_string($_FILES['image']['tmp_name']); 

私はphp.ini設定でその拡張子を見つけることを試みた、と私はそれがすでに含まれていると思いますが、なぜですそれ?なぜなら、エスケープ文字列を使用しないと、イメージを正しくアップロードできないからです。私を助けてくれた人の前にありがとう。

+0

どのPHPバージョンを使用しますか? – Andrew

+0

あなたはおそらく 'mysql_'接続を使用していますが、あなたはそのエスケープ機能にdb接続を渡していません。具体的な解決策を提供するのに十分なコード/情報がありません。 –

+0

あなたは以下の回答があります。コメントをチェックしていない可能性があるので、質問してください。幸運 –

答えて

-1

画像にはmysqli_real_escape_stringを書く必要はありません。

mysqli_real_escape_stringを使用すると、ユーザーが入力した特殊文字をSQL文で保存する文字列(テキスト形式)形式でエスケープできます。

イメージの場合は、FILESのようなさまざまな機能を使用できます。 is_uploaded_fileおよびgetimagesize

+0

実際に彼らはDBにバイナリとしてアップロードしようとしているのであればそれを必要とし、それは不明です。 –

+0

ok ... mysqli_real_escape_stringを正しく使用するためには、$ imageName = mysqli_real_escape_string($ db_conn、$ _ FILES ['image'] ['name'])を記述する必要があります。 $ tmp_name = mysqli_real_escape_string($ db_conn、$ _ FILES ['イメージ'] ['tmp_name']); $ db_connはデータベース接続パラメータです。 –

+0

その人はそこのコメントに反応していないので、彼はあなたに対処しなければならないでしょう。 –

関連する問題