LoginSignup
1
0

More than 5 years have passed since last update.

AmazonLinux2のMariaDBをPHPで操作する

Posted at

ファイルの作成

AmazonLinux2にrootユーザーでログインします。

AmazonLinux2
login as: ec2-user

       __|  __|_  )
       _|  (     /   Amazon Linux 2 AMI
      ___|\___|___|

https://aws.amazon.com/amazon-linux-2/
[ec2-user ~]$ sudo -i
[root ~]#

ドキュメントルートに移動します。

AmazonLinux2
[root ~]# cd /var/www/html
[root html]#

フォルダを作成して、そこに移動します。

AmazonLinux2
[root html]# mkdir php
[root html]# cd php
[root php]#

phpファイルを作成します。

AmazonLinux2
[root php]# touch test.php

ファイルの編集

phpファイルを編集します。

AmazonLinux2
[root php]# vim test.php

これが編集画面です。

AmazonLinux2
~
~
~
"test.php" [New File]                                         0,0-1         All

[A]キーを押してINSERTモードに移行します。
このモード中だけファイルの中身を編集できます。

AmazonLinux2
~
~
~
-- INSERT --                                                  0,1           All

[ESC]キーでINSERTモードを終了します。

AmazonLinux2
~
~
~
"test.php" [New File]                                         0,0-1         All

[*][w][q]と入力して[Enter]で上書き保存します。

AmazonLinux2
~
~
~
:wq

編集画面:その他の操作方法

保存しないで終了

AmazonLinux2
:q

内容を全て削除

AmazonLinux2
:%d

SELECT文

Select.php
<?php
        //データベース情報
        $user = 'root';
        $pass = '';
        $dsn = 'mysql:dbname=test; host=127.0.0.1; port=3306; charset=utf8';
        //URLからパラメータを取得
        $id = $_GET["id"];

        try {
                //データベースに接続
                $pdo = new PDO($dsn, $user, $pass);
                //SQL文を用意
                $sql = "SELECT * FROM table1 WHERE id = ?";
                //SQL文をpStmtクラス変数に入れる
                $pStmt = $pdo->prepare($sql);
                //SQLを実行
                $pStmt->execute(array($id));
                //戻り値を取りだす
                foreach( $pStmt as $value )
                {
                        echo $value[id];
                        echo $value[name];
                }
        } catch(PDOException $e) {
                echo $e->getMessage();
                die();
        }
?>

UPDATE文

Update.php
<?php
        //データベース情報
        $user = 'root';
        $pass = '';
        $dsn = 'mysql:dbname=test; host=127.0.0.1; port=3306; charset=utf8';
        //URLからパラメータを取得
        $id = $_GET["id"];
        $name = $_GET["name"];

        try {
                //データベースに接続
                $pdo = new PDO($dsn, $user, $pass);
                //SQL文を用意
                $sql = "UPDATE table1 SET name = ? WHERE id = ?";
                //SQL文をpStmtクラス変数に入れる
                $pStmt = $pdo->prepare($sql);
                //SQLを実行
                $pStmt->execute(array($name,$id));
        } catch(PDOException $e) {
                echo $e->getMessage();
                die();
        }
?>

INSERT文

Insert.php
<?php
        //データベース情報
        $user = 'root';
        $pass = '';
        $dsn = 'mysql:dbname=test; host=127.0.0.1; port=3306; charset=utf8';
        //URLからパラメータを取得
        $id = $_GET["id"];
        $name = $_GET["name"];

        try {
                //データベースに接続
                $pdo = new PDO($dsn, $user, $pass);
                //SQL文を用意
                $sql = "INSERT INTO table1 (id, name) VALUES (?,?)";
                //SQL文をpStmtクラス変数に入れる
                $pStmt = $pdo->prepare($sql);
                //SQLを実行
                $pStmt->execute(array($id,$name));
        } catch(PDOException $e) {
                echo $e->getMessage();
                die();
        }
?>

DELETE文

Delete.php
<?php
        //データベース情報
        $user = 'root';
        $pass = '';
        $dsn = 'mysql:dbname=test; host=127.0.0.1; port=3306; charset=utf8';
        //URLからパラメータを取得
        $id = $_GET["id"];

        try {
                //データベースに接続
                $pdo = new PDO($dsn, $user, $pass);
                //SQL文を用意
                $sql = "DELETE FROM table1 WHERE id = ?";
                //SQL文をpStmtクラス変数に入れる
                $pStmt = $pdo->prepare($sql);
                //SQLを実行
                $pStmt->execute(array($id));
        } catch(PDOException $e) {
                echo $e->getMessage();
                die();
        }
?>
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0