あべゴブログがgoogle newsで配信されることになりました!

フォローよろしくお願いします!

フォロー!

【手続き型】mysql_real_escape_stringを置き換えよう!【php】

web
スポンサーリンク

皆さんこんばんわ!AbeGoblinです!
 

はい今回なのですが、これまでのhtml/cssではなく、phpについて少し紹介させていただきます。
今回紹介させていただくのは、mysql_real_escape_string()っていう関数なんですけれども、
この関数はphp7で削除されてしまった関数なのです。php5から公開されているサイトとかだと割と残っていたりしますね!
今回はそれをphp7でも正常に動かす方法をご紹介します。

そもそもいつ使う??

はい、ぼくが使用したのは、データベースに添付データを送る際のSQLインジェクション対策用として文字列をエスケープするために使用しました!

すごい簡単に言うと、「変な奴に好き勝手されないように、文字列をデータベースにだけわかるように送った」って感じですかね!

データベース関連の知識はあまり持っていないので、詳しくはわかりませんが、ある程度機密性の高い情報とかをデータベースに格納する場合に使用されるのではないのかなと思っています。(合ってる??)

ズバリこう!

はい、正常に動かすといっても、関数そのままでは動きません。削除されていますからね!
正常に動かすためには、mysqli_real_escape_string()を使用します。早い話が置き換えですね!こんな感じにします!

php
$new_escape_string = mysql_real_escape_string( $myfile_name );
          ↓
$link = mysqli_connect("db_hosts", "db_user", "db_pass", "db_name");
$new_escape_string = mysqli_real_escape_string( $link, $myfile_name );

はい、置き換えましたね!
これはいわゆる手続き型といわれる方法になります。僕はwordpressでの対応だったのでこの方法でうまく対応できました。

簡単に解説すると、まず引数が2つになっていますね!単純に置き換えただけだと、引数2つになったからやり直し!って怒られます。前はデータベースに勝手に接続してやってたけど、もうしないぜ!って印象ですかね!
なので$linkにmysqli_connect()でしっかりとデータベース情報を入力します。
wordpressの場合ですと、この辺の情報はwp-configにがっちり記載してあるので、そこを参考にすればいいのかなと思います!

オブジェクト指向型の場合もあるんですけど、それは使ったことないので、わかりません!
つか、そういう人は僕のブログ見る必要ない気がします!(笑)

最後に

はい!色々調べましたが手続き型は、比較的簡単だと思います!でも初心者向けとは言えないと思います。
webデザイナーにとってはhtml,cssの先にphpやjsがあるものですしね!
ただ、そうも言ってられません。webデザイナーに求められる技術は日々どんどん高度になっています!なので今回のコードも万が一に備えて覚えていて損はないと思います!

はい、それでは今日はこのあたりにしておこうと思います!さようならー(^q^)ノシ