質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

2回答

14938閲覧

Fatal error: Call to undefined function mysqli_connect()

lulu515

総合スコア7

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2017/04/27 05:45

PHPからMySQLへ接続しようと試みておりますが、connectでエラーになってしまいます。
PHPプログラムからMySQLへ接続するための環境設定について教えて頂けませんでしょうか。
php.iniの設定が必要でしたら、その設定も併せて教えて頂けますと幸いです。

###状況
・ブラウザでphpプログラムを呼び出すとconnectエラーになります。
・phpinfoではMySQL、mysqlndの項目が存在しております。
・PHPMyAdminからはデータベースのデータが見れております。
・プログラムは他のサーバー環境で動いていたものですので、プログラムは問題ないと思います。

###環境
サーバーは、お名前.comのVPSを使用しております。
CENTOS 6.8 x86_64
MySQL バージョン 5.6.35
PHP バージョン 5.5.27

###エラーメッセージ

Fatal error: Call to undefined function mysqli_connect()

###該当のソースコード

$con = mysqli_connect($DBHOST, $DBID, $DBPASS, $DBNAME); if ($con !== FALSE) { //正常終了(ここにははいってきません) }

###試したこと
ググってみるとphp-mysqliが無いのではないかと思い、yumを実行してみましたがインストールできませんでした。

まずは確認

yum list installed php*

Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile

  • cpanel-addons-production-feed: xxx.xxx.xxx.xxx
  • base: ftp.iij.ad.jp
  • epel: ftp.riken.jp
  • extras: ftp.iij.ad.jp
  • updates: ftp.iij.ad.jp

Error: No matching Packages to list

インストール

yum -y install php-mysqli

Loaded plugins: fastestmirror, security
Setting up Install Process
Loading mirror speeds from cached hostfile

  • cpanel-addons-production-feed: 216.12.197.42
  • base: ftp.iij.ad.jp
  • epel: ftp.riken.jp
  • extras: ftp.iij.ad.jp
  • updates: ftp.iij.ad.jp

No package php-mysqli available.
Error: Nothing to do

phpはある程度経験があるのですが、サーバーとMySQLについては詳しくないため、
何をどうすればよいか躓いております。
大変恐縮ですがご教授頂けませんでしょうか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

mysqli_関数でエラーがでているのでmysqli_系のモジュールをインストールしてないだけかと
きちんとインストールできていればphpinfoでmysqliのセクションが表示されます

投稿2017/04/27 06:00

yambejp

総合スコア114784

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

lulu515

2017/04/27 06:15

ご回答ありがとうございます。 確かに現在phpinfoにはmysqliが存在しておりません。。。
guest

0

ベストアンサー

yum search php-mysql

で見てみてください。
多分あると思うので、

yum -y install php-mysql

でインストールしてください。
php.iniでMySQLi系のコメントアウトを外す必要もあるかも知れません。
詳細はPHPマニュアルを参照ください

http://php.net/manual/ja/mysqli.installation.php

投稿2017/04/27 06:04

kunai

総合スコア5405

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

lulu515

2017/04/27 06:14

早速にありがとうございます。 インストールに失敗いたしました。 # yum search php-mysql Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile * cpanel-addons-production-feed: * base: ftp.iij.ad.jp * epel: ftp.riken.jp * extras: ftp.iij.ad.jp * updates: ftp.iij.ad.jp ================== N/S Matched: php-mysql ========================= rh-php56-php-mysqlnd.x86_64 : A module for PHP applications that use MySQL databases rh-php70-php-mysqlnd.x86_64 : A module for PHP applications that use MySQL databases Name and summary matches only, use "search all" for everything. # yum -y install php-mysql Loaded plugins: fastestmirror, security Setting up Install Process Loading mirror speeds from cached hostfile * cpanel-addons-production-feed: * base: ftp.iij.ad.jp * epel: ftp.riken.jp * extras: ftp.iij.ad.jp * updates: ftp.iij.ad.jp No package php-mysql available. Error: Nothing to do
kunai

2017/04/27 06:16

searchで見つかったモノをinstallしないとエラーになるのは当然かと思います。 「rh-php56-php-mysqlnd.x86_64」と「rh-php70-php-mysqlnd.x86_64」が見つかったと言っているので、そのどちらか、PHPのバージョンに合うモノをインストールしてください。
lulu515

2017/04/27 06:29

失礼しました。 phpは5.5なので、どちらも該当しないという認識で良いのでしょうか? としますと、phpのバージョンを上げるしか手が無いのでしょうか?
kunai

2017/04/27 06:50

その結果を見るとそうなりそうですが、多分5.6でも動くんじゃないでしょうか。 心配でしたら、Remiリポジトリを登録すれば色々なバージョンのパッケージが取れると思います。 http://qiita.com/inakadegaebal/items/b57cf10339978d638305 ↑など参照してやってみてください。 それにしても、標準の「php-mysql」がHitしないのは不思議な感じですね。。
lulu515

2017/04/27 07:11

ありがとうございます。 他のシステムも動いているので、phpは上げたくないので5.6を入れる方向で考えてみます。 ど素人なので標準と聞くと、標準を入れたくなりますが・・・(笑 お名前サーバーは、なんかよくわからない所で躓くことが多いです。
kunai

2017/04/27 07:18

いや、PHPのバージョンを上げるという事ではなく(それも出来ますが)、php-mysql自体が色々なバージョンでパッケージを用意してあるという事です。 ちなみに、私の開発環境もRemiリポジトリを登録してありますが、searchの結果は以下のようなモノになっています。 [kunai@private ~]$ sudo yum search php-mysql 読み込んだプラグイン:fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: ftp.iij.ad.jp * epel: ftp.jaist.ac.jp * extras: ftp.iij.ad.jp * remi-safe: mirror.innosol.asia * updates: ftp.iij.ad.jp =================================================================================================== N/S matched: php-mysql ==================================================================================================== php-mysql.x86_64 : A module for PHP applications that use MySQL databases php-mysqlnd.x86_64 : A module for PHP applications that use MySQL databases php54-php-mysqlnd.x86_64 : A module for PHP applications that use MySQL databases php55-php-mysqlnd.x86_64 : A module for PHP applications that use MySQL databases php56-php-mysqlnd.x86_64 : A module for PHP applications that use MySQL databases php70-php-mysqlnd.x86_64 : A module for PHP applications that use MySQL databases php71-php-mysqlnd.x86_64 : A module for PHP applications that use MySQL databases これを見ると、5.6用のphp-mysqlがあるように見えますね。
KiyoshiMotoki

2017/04/27 07:19 編集

横ら失礼します。 lulu515様 共用サーバーSDをお使いでしたら、php.ini に以下を記述すれば mysqli を使用できるようになるかもしれません。 https://help.onamae.com/app/answers/detail/a_id/9137 ---------------------- extension_dir = "/usr/local/lib/php/extensions" extension = mysqli.so ---------------------- php.ini の場所は、phpinfo で確認できます。
lulu515

2017/04/27 07:46

KiyoshiMotoki様 情報ありがとうございます。 また、情報を提供しておらずスミマセン。 vpsを利用しております。 試しにphp.iniに入れてみましたが、ダメでした。
lulu515

2017/04/27 08:25

kunai様 あ、すみません。書き方が悪かったです。 kunaiさんのご指摘と認識は同じです。 php55-php-mysqlnd.x86_64 がこちらのサーバーにも出れば迷うことも無くインストールするのですが・・・。 Remiリポジトリを登録するか、rh-php56-php-mysqlnd.x86_64をインストールするかの選択でしょうかね。(Remiの方がよいかな?) お名前のサポートにも投げているので、その回答を待って判断したいと思います。
kunai

2017/04/27 08:29

サポートに聞けるのであればその方が良いですね。 普通はbaseリポジトリから「php-mysql」が見えるはずだと思うんですが、それがないという事は入れさせない意図がるように思えます。
lulu515

2017/04/27 08:40

なるほど。。。 今回はご親切にいろいろ教えて頂きありがとうございました。 結果は改めて記載致します。また何かありましたらご教授頂けますと幸いです。 kunai様、KiyoshiMotoki様 ひとまずありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問