php指令碼命令列執行正確,瀏覽器執行錯誤

2021-07-31 21:44:08 字數 1928 閱讀 6564

在window環境下搭建php+mysql環境(xampp整合安裝),搭建完畢後嘗試在php中連線mysql資料庫。

在呼叫mysql_connect()函式時,在瀏覽器中執行一直報錯顯示該函式未定義,但用命令列呼叫則正確執行。

php指令碼如下(資料庫為自己定義的):

<?php 

// phpinfo();

$link=mysql_connect("localhost","root","") or

die(mysql_error());

mysql_set_charset('utf8');

mysql_select_db('shopcenter');

$result = mysql_query("select * from imooc_admin",$link) or

die(mysql_error());

while($row = mysql_fetch_array($result))

mysql_close($link);

?>

命令列中執行結果:

瀏覽器中執行結果

隨後新建乙個 test1.php,寫入內容<?php phpinfo();?>,分別列印出php相關的配置資訊。

命令列中執行結果:

瀏覽器中執行結果

對比發現瀏覽器輸出結果中,loaded configuration file這一項為空,而命令列中為php安裝目錄下的配置檔案(php.ini)。

查詢資料發現,載入php.ini檔案順序是:如果在loaded configuration file目錄找不到php.ini檔案,

就會預設載入configuration file (php.ini) path這裡的配置預設資訊。所以一旦loaded configuration file為none時,不管如何修改php配置檔案,都是不起作用的。

因此,當命令列可以執行的命令,瀏覽器無法執行的話應該就是配置檔案設定不同導致的。

1.修改apache的配置檔案

我的環境是用xampp配置的,因此配置檔案是httpd-xampp.conf。網上好多數據說的是修改 apache的httpd.conf,在 loadmodule php5_module 之前 ,新增php.ini所在的路徑),將php5模組的載入路徑更換為php.ini所在的路徑。

2.重啟apache。

再次執行test1.php指令碼,在瀏覽器中可以看到loaded configuration file的路徑顯示正常了。

執行test.php查詢資料庫,就可以得到正確的結果了。

php命令列執行出錯

windows 問題描述 提示是找不到模組php oci.dll等等 問題分析 應該是沒有裝oracle就開了這個擴充套件.問題解決 關掉相關oracle的擴充套件 linux 問題描述 whereis php 沒有內容 問題分析 應該是沒有裝php,但是apache能執行,就是說明安裝了.只是少了...

ccl命令列執行lisp指令碼

最近在學習lisp,lisp作為傳說中最古老的語言之一,fp的經典語言之一,對我這種喜歡瞎研究的人來說,是很有吸引力滴。不過,我要說的是,lisp可不像python這麼方便快捷,不同dialect之間差別還是挺大的,就執行乙個lisp指令碼,似乎都不是那麼簡單的事情。對於被python慣壞了了的我來...

Jmeter命令列執行jmx指令碼

簡介 使用非 gui 模式,即命令列模式執行 jmeter 測試指令碼能夠大大縮減所需要的系統資源。本文介紹windows下以命令列模式執行jmeter指令碼的方法。1.1.命令介紹 jmeter壓力測試命令列啟動指令碼 安裝路徑 jmeter n t 指令碼路徑 九牧登入.jmx l log路徑 ...