PHP7に更新したらMysqlに接続できなくなった
php5からphp7へサーバー環境を移行すると、問題発生するプログラムが出てきた。
なにしろ10年以上前に作成されたPHPのプログラムなどが、まだ現役で動作しているのでありがちな話です。
PHPからのDB接続方法が、古いプログラムだとPEAR::DBが使用されている為です。
PHP7ではPEAR::DBが使用できないようです。
PEAR::DBからMysqliかPDOか
PEAR::DBから変更といってもmysqliやPDOなど、またいろいろと種類があり悩みます。
処理速度の点と他のDBへの乗せ換えも将来無い事から、今回はmysqliを選択しました。
mysqliコーディング例 | |
---|---|
接続 | $strDBUser = “user” ; $strDBPass = “password” ; $strDBHost = “localhost” ; $strDBName = “dbname” ; $mysqli = new mysqli($strDBHost, $strDBUser, $strDBPass, $strDBName); if ($mysqli->connect_error){ echo $mysqli->connect_error; exit(); } |
読込 | $strSQL = ‘select id,user_name from user_table’; if ($result = $mysqli->query($strSQL)) { または(Smartyなどを使う時) $strSQL = ‘select id,user_name from user_table’; $result = $Mysqli->query($strSQL) or die($Mysqli->error); $smarty->assign(“data”, $rows) ; |
切断 | $mysqli->close(); |
コメント