簡體   English   中英

致命錯誤:調用未定義函數mysql_connect()

[英]Fatal error: Call to undefined function mysql_connect() in

當我調用此命令時:

php.exe Connection.php

我收到此錯誤:

Fatal error: Call to undefined function ...\mysql_connect() in Connection.php on line x.

但是,如果我在同一服務器上的瀏覽器中運行它,則不會有問題。 是的,我的服務器上啟用了mysql

[編輯]完整錯誤:

"C:\Program Files (x86)\EasyPHP-5.3.6.0\php\php.exe" "C:\Program Files (x86)\EasyPHP-5.3.6.0\www\MusicSite\Php\Devtron\Exemples\NewsTable.php"

Fatal error: Call to undefined function Devtron\Database\mysql_connect() in C:\Program Files (x86)\EasyPHP-5.3.6.0\www\MusicSite\Php\Devtron\Database\Connection.php on line 108

命令行解釋器不一定加載與您在Web服務器中配置的任何SAPI相同的配置文件。 運行此命令以找出:

<?php

var_dump( php_ini_loaded_file() );
var_dump( php_ini_scanned_files() );

聽起來幾乎就像服務器上有兩個PHP實例。 如果您安裝PHP(默認情況下可從外殼程序獲得),然后安裝了xampp之類的軟件包,則可能會發生這種情況。 我將瀏覽服務器的文件系統(也許是find / -name "php.exe" )以找到所有實例。

聽起來好像在Web服務器上運行的一個啟用了mysql,但是在shell中運行的卻沒有。

嘗試這個

$ php -m

檢查mysql是否在列表中列出。

$ php --ini 

如果這樣放

Configuration File (php.ini) Path: /usr/local/lib

Loaded Configuration File:         (none)

Scan for additional .ini files in: (none)

Additional .ini files parsed:      (none)

$ locate php.ini然后您的系統上就有php5。

 /etc/php5/apache2/php.ini
 /etc/php5/cli/php.ini
 .....................
 .....................

現在什么也不做,像這樣用php5代替php。

$ php5 test.php

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM