著者:柏岡秀男
「PHP」(PHP: Hypertext Preprocessor)は、Webアプリケーションの開発によく使われているプログラミング言語です。本特集では、WindowsやmacOSにPHPプログラムの実行環境やWebサーバー、DBMSサーバーをインストールできる「MAMP」というソフトウエアを使って、PHPプログラミングを手軽に体験する方法を紹介します。これを機会にぜひPHPプログラミングを始めてみてください。
シェルスクリプトマガジン Vol.60は以下のリンク先でご購入できます。
1 2 3 4 5 6 7 8 9 10 |
<!DOCTYPE html> <head> <meta charset="UTF-8"> <title> 現在時刻</title> </head> 現在時刻は <?php echo date("H:i:s") ?> です |
1 2 3 4 5 6 |
<!DOCTYPE html> <head> <meta charset="UTF-8"> <title>Hello world</title> </head> <?php echo "Hello, World!"; ?> |
1 2 3 4 5 6 |
<!DOCTYPE html> <head> <meta charset="UTF-8"> <title>Hello world</title> </head> Hello, World! |
1 2 3 4 5 |
<?php $a = 1; $b = 2; echo $a + $b; ?> |
1 2 3 4 5 |
<!DOCTYPE html> <head> <meta charset="UTF-8"> <title><?php echo __FILE__; ?></title> </head> |
1 2 3 4 5 |
<?php $a = " シェルスクリプト"; $b = " マガジン"; echo $a . $b; ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
<pre> <?php $a = array(1,2,3,4,5); $b = array("a" => 1,"b" => "abc","c" => "123"); $c[0] = 123; $c[1] = $b; var_dump($a); var_dump($b); var_dump($c); echo $a[1]; echo "\n"; echo $b["c"]; echo "\n"; ?> </pre> |
1 2 3 4 5 6 |
<?php $a = 1; if($a > 10) { echo "a は10 より大きい"; } ?> |
1 2 3 4 5 6 7 8 |
<?php $a = 1; if($a > 10) { echo "a は10 より大きい"; } else { echo "a は10 以下"; } ?> |
1 2 3 4 5 6 7 |
<form method="post" action="input.php"> <input type=text name="a"> <input type=submit> </form> <?php var_dump($_POST); ?> |
1 2 3 4 5 6 7 |
<form method="post" action="sample_input.php"> <input type=text name="a"> <input type=submit> </form> <?php if($_POST["a"] > 10 ) echo "10 より大きい"; ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
<form method="post" action="sample_input2.php"> <input type=text name="a" > <input type=submit> </form> <?php if (isset($_POST["a"])) { if($_POST["a"] > 10 ) { echo "10 より大きい"; } else { echo "10 以下"; } } else { echo " 数字を入力してください"; } ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<?php try { $dbh = new PDO( "mysql:host=localhost;dbname=sampledatabase;charset=utf8", "phpuser","testpassword" ); $dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch (Exception $e) { die(" データベース接続失敗 ".$e->getMessage()); } echo " 接続できました"; ?> |
1 2 3 4 5 6 7 8 9 |
<!DOCTYPE html> <head> <title>TODO データの入力画面</title> </head> <form method="post" action="add.php"> <input type=text name="todo"> <input type=submit> </form> TODO データを入力してください |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
<?php var_dump($_POST); try { $dbh = new PDO( "mysql:host=localhost;dbname=sampledatabase;charset=utf8", "phpuser","testpassword" ); $dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $sql = "INSERT INTO sample (todo) VALUES (:todo_value)"; $stmt = $dbh->prepare($sql); $todo = urldecode($_POST["todo"]); $stmt->bindValue(":todo_value", $todo, PDO::PARAM_STR); $stmt->execute(); echo " データを登録しました"; } catch (Exception $e) { die(" データベース接続失敗 ".$e->getMessage()); } ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
<?php try { $dbh = new PDO( "mysql:host=localhost;dbname=sampledatabase;charset=utf8", "phpuser","testpassword" ); $dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $sql = "SELECT * FROM sample WHERE status IS NULL"; $res = $dbh->query($sql); foreach($res as $row) { echo htmlspecialchars($row["todo"], ENT_QUOTES); echo "<br />"; } } catch (Exception $e) { die(" データベース接続失敗 ".$e->getMessage()); } ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
<?php try { $dbh = new PDO( "mysql:host=localhost;dbname=sampledatabase;charset=utf8", "phpuser","testpassword" ); $dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $sql = "SELECT * FROM sample WHERE status IS NULL"; $res = $dbh->query($sql); foreach($res as $row) { $id = htmlspecialchars($row["id"], ENT_QUOTES); echo htmlspecialchars($row["todo"], ENT_QUOTES); echo "<a href='update.php?id=" . $id . "'> 完了</a><br />"; } } catch (Exception $e) { die(" データベース接続失敗 ".$e->getMessage()); } ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
<?php try { $dbh = new PDO( "mysql:host=localhost;dbname=sampledatabase;charset=utf8", "phpuser","testpassword" ); $dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $sql = "UPDATE sample SET status = 1 WHERE id = :id_value"; $stmt = $dbh->prepare($sql); $id = (int) $_GET["id"]; $stmt->bindValue(":id_value", $id, PDO::PARAM_INT); $stmt->execute(); echo " データを更新しました"; } catch (Exception $e) { die(" データベース接続失敗 ".$e->getMessage()); } ?> |