###前提・実現したいこと
サーバー構築しているものです。何度も質問申し訳ありません。
クライアントPCでwebサイトに入力された情報をPHPのPDOを使ってサーバー側PCのDBに送ろうとしているところで問題が発生しております。
###発生している問題・エラーメッセージ
問題は二つありまして、
一つ目は最初に表示させるページ(以下ログインページ)にログイン情報を入力して、ログインボタンを押すとサーバーのMySQLに接続されてログインされるというものです。
ログインボタンを押した際に、ブラウザ上では
「IPアドレス」ページは機能していません。「IPアドレス」では現在このリクエストを処理できません。HTTP ERROR 500
サーバー上のエラーログは、
PHP Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' in var/www/html/log-in.php:10\nStack trace;\n#0 /var/www/html/log-in.php(10):: PDO->_construct('mysql:host=loca...', '「MySQLでDBを作ったユーザー名」', 'MySQL Pass', Array)\n#1 {main}\n thrown in /var/www/html/log-in.php on line 10, referer: http://「IPアドレス」/
と出ます。
また、log-in.phpの10行目は
$pdo = new PDO('mysql:host=localhost;dbname=users;charset=utf8','root','NLCpotenz@0902',←9行目
array(PDO::ATTR_EMULATE_PREPARES => false)); ←10行目
二つ目は、ログインページに新規登録へというボタンがあってそのボタンを押すと新規登録画面へ繊維し、新規登録画面で必要な情報を入力し新規登録ボタンを押すと、仕様では新規登録され、ログイン後のトップページに飛ぶようにしているのですが、ブラウザ上で
データベース接続失敗。could not find driver とエラーが出ます。
サーバー上のエラーログは、
AH00170: caught SIGWINCH, shutting down gracefully
AH01232: suEXEC mechanism enabled (wrapeer: /usr/sbin/suexec)
AH01757: generating secret for digest authentication ...
AH02282: No slotmem from mod_heartmonitor
AH00163: Apache/2.4.6 (CentOS) PHP/5.4.16 configured -- resuming normal operations
AH00094: Command line: '/usr/sbin/httpd -D FOREGROUND'
と出ます。
###試したこと
前回質問させていただいた際に、PDOが組み込まれていない可能性がありますと言われたので、yum -y install php-pdo のコマンドを入力してみたところ、入れる前は2つ目の問題も1つめと同じように、HTTP ERROR 500と出ていたのですが、入れた後は上記のようなエラーになりました。
また、htmlファイルを作成したPCでのPHPは5.6...なのですが、サーバー上でのPHPは上にも書いてありますように、5.4.16となっているのでバージョンの違いが原因かもしれないと思い、
http://urashita.com/archives/7715
こちらのサイト様を参考にバージョンアップしようとしたのですが、
rpm -qa | grep remi
を打ったところ何も出なかったので、
yum install remi-release
を打ったところ
No package remi-release available.
Error: Nothing to do
と出たところでお手上げになりました。
###補足情報(言語/FW/ツール等のバージョンなど)
サーバー側PC
CentOS7.2
Apache 2.4.6
PHP 5.4.16
MySQL 5.7.16
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。