Отсутствуют функции при запуске скрипта из командной строки

colver

Новичок
Отсутствуют функции при запуске скрипта из командной строки

Есть файл mysql.php
PHP:
<?php
error_reporting(2047);
mysql_connect($DBHost, $DBLogin, $DBPassword) OR die(mysql_error());
?>
При запуске из командной строки:
Код:
# /usr/local/bin/php mysql.php >file.log
В файле file.log вижу следующее

Fatal error: Call to undefined function mysql_connect() in /var/www/htdocs/mysql.php on line 3

При запуске из браузера все без ошибок. В чем проблема? Как ее решить?
 

Zetruger

ivan.chistyakov.name
ну очевидно php собран без mysql

посмотри phpinfo (также из командной строки)
а также

get_defined_functions
get_loaded_extensions

а вообще такие вопросы надо задавать в support хостинга, а не здесь
 

Sokil.Dmytro

Новичок
если коммандная строка то рядом с кли-пхп надо ложить дллку / сошку с мускульными библиотеками и прописать их в конфиге. ты ж не думаешь что одна экзешка весь функционал перекроет
 

colver

Новичок
Автор оригинала: Zetruger
ну очевидно php собран без mysql

посмотри phpinfo (также из командной строки)
а также

get_defined_functions
get_loaded_extensions
Если php был собран без mysql, то в браузере возникла бы ошибка!
get_defined_functions() не показывает mysql_connect() при запуске из коммандной строки.
Вот что показывает phpinfo() при запуске из командной строки
Код:
Configure Command =>  ./configure --with-apxs=/usr/local/apache/bin/apxs --prefix=/usr/local 
--with-xml --with-mm --enable-bcmath --enable-calendar --with-curl --with-dom --with-dom-xslt 
--with-dom-exslt --enable-exif --with-swf=/usr/local/flash --enable-ft
А при запуске из браузера показывает
Код:
./configure --with-apxs=/usr/local/apache/bin/apxs --prefix=/usr --with-xml
--with-mime-magic --with-mm --enable-bcmath --enable-calendar --with-curl --with-dom 
--with-dom-xslt --with-dom-exslt --enable-exif --enable-ftp --with-gd --with-jpeg-dir=/usr/local 
--with-png-dir=/usr --with-xpm-dir=/usr/X11R6 --with-gettext --with-iconv 
--with-imap=/usr/local/imap-2004g --enable-mbstring --enable-mbstr-enc-trans 
--enable-mbregex --with-mcrypt --enable-memory-limit --with-mhash --with-mm --with-mysqli 
--with-mysql=/usr --with-openssl --enable-discard-path --with-pear --with-pgsql=/usr 
--enable-safe-mode --enable-sockets --enable-track-vars --with-ttf --with-freetype-dir=/usr 
--enable-gd-native-ttf --enable-versioning --enable-wddx --with-xmlrpc --with-zip --with-zlib
Что за причина? Как тогда собрать с поддержкой mysql в командной строке? Или может, надо указывать в одном из параметров запуска?
 

Lazarius

Новичок
найди конфиг для php-cli и там либо разкомментируй строку типа
extension=mysql.so
или если её там нет - допиши
 

Wicked

Новичок
открою страшный секрет :)
Это могут быть вообще 2 разных пхп, каждый со своим конфигом, параметрами билда и т.д. и т.п.
 

colver

Новичок
Автор оригинала: Wicked
открою страшный секрет :)
Это могут быть вообще 2 разных пхп, каждый со своим конфигом, параметрами билда и т.д. и т.п.
Да, оказалось, это разные php. Сделал как надо, все работает.

PS: Sokil.Dmytro, между прочим, Lazarius более понятно объяснил и не стремится набирать посты бесполезными сообщениями.
 

Sokil.Dmytro

Новичок
[off]
colver
ну вопервых на кол-во постов мне глубоко пофиг, я помочь хотел. а во вторых че именно в моем ответе было непонятно? если ты со второго раза понимаешь то это не мои проблемы
[/off]
 
Сверху