PHP MySQL接続方法
作成日時:2019/05/05
更新日時:2019/05/05
スポンサーリンク
この記事の確認環境
phpversion() : 7.2.7
mysql_connect
https://www.php.net/manual/ja/function.mysql-connect.php
PHP 5.5.0 で非推奨、PHP 7.0.0 で削除された関数
mysqli
「オブジェクト指向型」と「手続き型」の2通り用意されています。
以下のサンプルは「オブジェクト指向型」
https://www.php.net/manual/ja/class.mysqli.php
クエリ結果取得関連
https://www.php.net/manual/ja/class.mysqli-result.php
https://www.php.net/manual/ja/mysqli-result.fetch-assoc.php
https://www.php.net/manual/ja/mysqli-result.free.php
文字セット関連
https://www.php.net/manual/ja/mysqli.set-charset.php
接続関連
https://www.php.net/manual/ja/mysqli.close.php
mysqli接続〜データ取得
<?php define('DB_NAME', 'database_name'); define('DB_USER', 'database_user'); define('DB_PASSWORD', 'database_pass'); define('DB_HOST', 'database_host'); $mysqli = new mysqli( DB_HOST, DB_USER, DB_PASSWORD, DB_NAME ); if ( $mysqli->connect_error ) { echo '<pre>' . $mysqli->connect_error . '</pre>'; } else { $mysqli->set_charset( "utf8" ); $sql = "SELECT * FROM table_name"; if ( $result = $mysqli->query( $sql ) ) { echo '<table>'; while ( $row = $result->fetch_assoc() ) { echo '<tr>'; echo '<td>' . $row["id"] . '</td>'; echo '<td>' . $row["name"] . '</td>'; echo '</tr>'; } echo '</table>'; $result->free(); } $mysqli->close(); } ?>
https://www.php.net/manual/ja/mysqli.prepare.php
https://www.php.net/manual/ja/mysqli-stmt.error.php
https://www.php.net/manual/ja/mysqli-stmt.bind-param.php
$name = "Name"; $detail = "Detail"; if($stmt = $mysqli->prepare("INSERT INTO table_name ( name, detail ) VALUES ( ?, ? )")) { if($stmt->bind_param( "ss", $name, $detail )) { if(!$stmt->execute()) { error_log('Error : ' . $stmt->error); } } $stmt->close(); }