自分でかなり昔に作ったPHPのコードをまとめてみました。
何かの参考になれば幸いです。
php mysql データベーステーブル 一覧表示
php mysqlを使い、データベーステーブルの一覧を表示させるソース。
ロリポップレンタルサーバーを使用しています。
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>アドレス登録</title> </head> <body> <table border="1"> <tr><th>NO</th><th>名前</th><th>誕生日</th><th>メルアド</th></tr> <?php $dsn = 'mysql:dbname=LAXXXXXXX-XXXXXXXXXX;host=XXXXXXXX.phy.lolipop.lan';//データベース名,ホスト名 $user = 'LAXXXXXXXX';//ユーザーID $password = 'XXXXXXXXXX';//パスワード $pdo = new PDO($dsn, $user, $password); $pdo->query('SET NAMES utf8'); //この1行を入れないと文字化けをおこす場合があります。utf-8を使用 $st = $pdo->query("SELECT * FROM test_friends "); while ($row = $st->fetch()) { $no = htmlspecialchars($row['no']); $name = htmlspecialchars($row['name']); $birth = htmlspecialchars($row['birth']); $email = htmlspecialchars($row['email']); echo "<tr><td>$no</td><td>$name</td><td>$birth</td><td>$email</td></tr>"; } ?> </table> </body> </html>
php フォーム入力 mysql データベースPDO接続
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>テンプレート</title> </head> <body> <form action="test_insert.php" method="post"> NO<br> <input type="text" name="no"><br> 名前<br> <input type="text" name="name"><br> 誕生日<br> <input type="text" name="birth"><br> メルアド<br> <input type="text" name="email"><br> <input type="submit"> </form> </body> </html>
-------------------------
test_insert.php
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>テンプレート</title> </head> <body> <?php $pdo = new PDO("mysql:dbname=LAAXX-XXXX;host=myXXX.phy.lolipop.lan", "ID", "パス");//ロリポサーバー接続 $pdo->query('SET NAMES utf8'); //この1行を入れないと文字化けをおこします場合があります。 $st = $pdo->prepare("INSERT INTO test_friends VALUES(?,?,?,?)");//?数は文字列投入数です $st->execute(array($_POST['no'], $_POST['name'],$_POST['birth'], $_POST['email'])); ?> レコードを追加しました。 </body> </html>
php フォーム内容 mysql データベース登録 ロリポップサーバー
phpを使用し、フォーム内容をmysqlを使用し、データベース登録する方法です。ロリポップレンタルサーバーでの例になります。
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>お客様情報登録</title> </head> <body> <form action="test5.php" method="post"> 登録番号:<br /> <input type="text" name="no" size="10" value="" /><br /> 氏名:<br /> <input type="text" name="name" size="30" value="" /><br /> 誕生日:<br /> <input type="text" name="birth" size="30" value=""><br /> <br /> メルアド:<br /> <input type="text" name="email" size="30" value=""><br /> <br /> <input type="submit" value="登録する" /> </form> </body> </html>
----------------------------------------------------------------------
test5.php
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>アドレス登録</title> </head> <body> <?php $con = mysql_connect('myXXXXXXX.phy.lolipop.lan', 'ユーザーID', 'パスワード');//左から、ホスト、ID、PASS if (!$con) { exit('データベースに接続できませんでした。'); } $result = mysql_select_db('LAAXXXXXXX-XXXXXXXXX', $con);//データベース名が入ります if (!$result) { exit('データベースを選択できませんでした。'); } $result = mysql_query('SET NAMES utf8', $con); if (!$result) { exit('文字コードを指定できませんでした。'); } $no = $_REQUEST['no']; //データベースに作成したテーブルどおりに記載 $name = $_REQUEST['name']; $birth = $_REQUEST['birth']; $email = $_REQUEST['email']; $result = mysql_query("INSERT INTO test_friends(no, name, birth, email) VALUES('$no', '$name', '$birth', '$email')", $con); if (!$result) { exit('データを登録できませんでした。'); } $con = mysql_close($con); if (!$con) { exit('データベースとの接続を閉じられませんでした。'); } ?> <p>登録が完了しました。<br /><a href="index.html">戻る</a></p> </body> </html>
phpフォーム入力後 phpmyadminだけ 日本語が文字化けする
phpのフォームからデータベースにデータを挿入したのですがphpmyadmin上だけ、日本語が文字化けしまする現象がおきました。サーバ接続の照合順序」はutf8_general_ciで、テーブルの設定も、個別でutf8_general_ciを指定していますが、どうしても文字化けがなおりません。その時の対象法ですが、phpファイルに
mysql_set_charset(“utf8”);
と入れたところすんなり解決しました。
PHP 環境変数の情報 取得の方法 $_SERVER
$_SERVER変数を使用し、環境変数の情報を取得することができます。ユーザーのブラウザの情報とIPアドレスの取得例です。
<?php $burauza = $_SERVER['HTTP_USER_AGENT']; $ipAddress = $_SERVER["REMOTE_ADDR"]; echo "あなたのブラウザ情報です<br />"; echo $burauza . '<br />'; echo "あなたのIPアドレスです<br />"; echo $ipAddress; ?>
";
echo $burauza . '
';
echo "あなたのIPアドレスです
";
echo $ipAddress;
?>