トップへ(mam-mam.net/)

PHPからmysqliでデータベースに接続する

検索:

「PHPからmysqliでデータベースに接続する」

PHPからmysqliでデータベースに接続するには

回答

以下のようなデータベースにテーブルがあるとします

CREATE DATABASE db_mytest DEFAULT CHARACTER SET utf8;

use db_mytest;

create table t_table(
  id serial PRIMARY KEY,
  name1 varchar(255),
  name2 varchar(255)
)  ENGINE=InnoDB DEFAULT CHARACTER SET utf8;

ユーザーの作成と権限の設定
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
GRANT ALL ON db_mytest.* TO 'username'@'localhost';

ソース

<?php

$mysqli = new mysqli(
  "localhost",  //ホスト名(接続サーバー)
  "username",   //ユーザー名
  "password",   //パスワード
  "db_mytest"   //DB名
);

if($mysqli->connect_error) {
  echo $mysqli->connect_error;
  exit();
}else{$mysqli->set_charset("utf8");}

//レコードの挿入
$stmt=$mysqli->prepare("insert into t_table(name1,name2) values(?,?)");
$name1="姓ほげ";
$name2="名ほげ";
$stmt->bind_param('ss',$name1,$name2);
$stmt->execute();

//SELECT文
$stmt=$mysqli->prepare("select id,name1,name2 from t_table where id = ?");
$id=1;
$stmt->bind_param('i',$id);
$stmt->execute();
$stmt->bind_result($id,$name1,$name2);
while($stmt->fetch()){
  echo $id.":".$name1.",".$name2;
}