Windows10のXAMPPにあるphpMyAdminでデータベース「test」テーブル「test_chara」を作り、PHPからアクセスするテストプログラムを作っています。
paizaラーニングWebアプリ開発入門 PHP+MySQL編1: 掲示板を作ろう
上記のコードを参考に、testへ接続し、test_charaテーブルのデータを取得するプログラムを書きましたが、上手く動きません。
そこで、接続だけのテストにコードを最小化してみましたが、この段階で動かず、接続が上手くいっていない状態だと認識しています。
PHP
1<!DOCTYPE html> 2<html> 3<head> 4 <meta charset="utf-8"> 5 <title>test1.php</title> 6</head> 7<body> 8 <h1>testテーブル</h1> 9 <?php 10 try{ 11 //http://localhost:81/work/db_test/test1.php 12 // データベースへ接続 13 $pdo = new PDO("mysql:host=127.0.0.1;port=81;dbname=test;charset=utf8", "root", ""); 14 }catch (PDOException $e){ 15 print('Error:'.$e->getMessage()); 16 die(); 17 } 18 19 echo "テスト<br>"; 20 21 ?> 22</body> 23</html>
(※hostは127.0.0.1とlocalhostの両方で試してみましたが、どちらもダメでした)
上記のtest1.phpをブラウザから実行すると、アクセス中のアイコン表示?(ぐるぐる回るアニメーション)が数分続いた後、以下のような表記が出てきました。
testテーブル
Warning: PDO::__construct(): MySQL server has gone away in C:\xampp\htdocs\work\db_test\test1.php on line 13
Warning: PDO::__construct(): Error while reading greeting packet. PID=8272 in C:\xampp\htdocs\work\db_test\test1.php on line 13
Warning: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] [2006] MySQL server has gone away' in C:\xampp\htdocs\work\db_test\test1.php:13 Stack trace: #0 C:\xampp\htdocs\work\db_test\test1.php(13): PDO->__construct('mysql:host=127....', 'root', '') #1 {main} thrown in C:\xampp\htdocs\work\db_test\test1.php on line 13
Fatal error: Maximum execution time of 30 seconds exceeded in C:\xampp\htdocs\work\db_test\test1.php on line 12
また、必要な情報かどうかわかりませんが、XAMPPコントロールパネルの画面も添付します。
DB初心者でpaizaで学習した後、PHPからのDBアクセスに初挑戦しています。基礎的な部分で何か間違い、勘違いをしているのか、見当がつかない状態ですので「ここが怪しいのでは?」など、ご助言をいただければと思います。
よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/03/09 08:08
2017/03/09 08:10