1. mysqli を使用してデータベースにアクセスします
$db = new mysqli("localhost", "username", "password", "databaseName");或者:@ $db = mysqli_connect("localhost", "username", "password", "databaseName");
$db->close();或者:mysqi_close($db);
$db->select_db(databaseName);或者:mysqli_select_db(databaseName);
$query = "SELECT * from dbName";$result = $db->query($query);或者:mysqli_query($db, $query);
(2) クエリ結果の各行の内容:
$num_results = $result->num_rows;或者:$num_results = mysqli_num_rows($result);
$row = $result->fetch_assoc();或者:$row = mysqli_fetch_assoc($result);
$row["books"]
6. 結果セットを解放します
2. PDO を使用してデータベースにアクセスします
$row = $result->fetch_object();或者:$row = mysqli_fetch_object($result);
Ruru :
$mysql = new PDO("mysql:host=localhost", $user, $password);$mysql = new PDO("mysql:host=localhost;port=8090", $user, $password);$mysql = new PDO("mysql:host=localhost;port=8090;dbname=android", $user, $password);// 连接到一个本地MySQL服务器$mysql = new PDO("mysql:unix_socket=/tmp/mysql.sock", $user, $password);
$dbhost = "localhost";$dbdatabase = "android";$username = "android";$userpass = "android";$dsn='mysql:host='.$dbhost.';dbname='.$dbdatabase;try { $dbh = new PDO($dsn,$username,$userpass); foreach($dbh->query('SELECT * from test') as $row) { print_r($row); } // 关闭数据库连接 $dbh = null;} catch (PDOException $e) { print "Error!: " . $e->getMessage() . "<br/>"; die();}
$conn = null;
errorInfo() | |
---|---|
exec() | |
getAttribute() | |
lastInsertId() | |
prepare() | |
query() | |
quote() | |
setAttribute() | |
PDOStatement の一般的なメソッド: | |
メソッド名 | 説明 |
bindColumn() | 列を PHP 変数にバインドします。 |
bindValue() | |
---|---|
closeCursor() | |
columnCount() | |
debugDumpParams() | |
errorCode() | |
errorInfo() | |
execute() | |
fetch() | |
fetchAll() | |
fetchColumn() | |
fetchObject() | |
getAttribute() | |
getColumnMeta() | |
nextRowset() | |
rowCount() | |
setAttribute() | |
setFetchMode() | |
記録: 遭遇したいくつかの落とし穴
(1) 問題: データが中国語の場合、データベースでは正常に表示できますが、フォアグラウンドで呼び出すと文字化けが表示されます。 解決策: 1) まず、php ファイルに header('CONtent-Type:text/html;charset=utf-8'); などのエンコード形式宣言ヘッダー ファイルがあるかどうかを確認します。 HTML ファイルの場合、 などのメタ ステートメントがあるかどうかを確認してください 2) php ファイルのエンコード形式に問題がない場合、問題はデータのエンコード形式により文字化けが発生する可能性があります。 $db->query("SET NAMES 'UTF8'"); のように、データベース クエリの前にエンコード形式の明示的な定義を挿入してみてください。 原文 http://www.dengzhr.com/others/backend/750 |