умаялся... PHP5&mysqli не дружат...

Sfagnum

Новичок
умаялся... PHP5&mysqli не дружат...

как оно устанавливается? что треба для того чтоб оно работало...
что называется сдох на перелопачивании нэта...

в php.ini изменил:
extension_dir = "c:\php5\ext"
и добавил
extension=php_mysqli.dll
о системе:
winXP
Apache 2.2.2
PHP 5.1.4
MySQL 5.0.21

Apache 2.2.2 и PHP 5.1.4 - дружат.
но пилин при запуске примера из статьи
Использование ext/mysqli: Часть I - Обзор и подготовленные выражения вылетает на строке $link = mysqli_connect( ... с ошибкой Fatal error: Call to undefined function mysqli_connect() in D:\www\test.php on line 4...

чего я ему не додал? чего ему раскоментить то?
 

zevs5

Новичок
Re: умаялся... PHP5&mysqli не дружат...

Автор оригинала: Sfagnum
как оно устанавливается? что треба для того чтоб оно работало...
что называется сдох на перелопачивании нэта...

в php.ini изменил:
extension_dir = "c:\php5\ext"
и добавил
extension=php_mysqli.dll
о системе:
winXP
Apache 2.2.2
PHP 5.1.4
MySQL 5.0.21

Apache 2.2.2 и PHP 5.1.4 - дружат.
но пилин при запуске примера из статьи
Использование ext/mysqli: Часть I - Обзор и подготовленные выражения вылетает на строке $link = mysqli_connect( ... с ошибкой Fatal error: Call to undefined function mysqli_connect() in D:\www\test.php on line 4...

чего я ему не додал? чего ему раскоментить то?
Ты загружаешь не ту библиотеку
раскоментируй

extension=php_mysql.dll

она рядом.
 

Gorynych

Посетитель PHP-Клуба
zevs5
- с чего это? Ему ж как раз нужен доступ к MySQL старше 4.1.0 (потому что 5-ка)
 

Gorynych

Посетитель PHP-Клуба
1.

Sfagnum ну и что озадачило?

могу привести как примеры:

_SERVER["SERVER_SOFTWARE"] Apache/1.3.34 (Win32) PHP/5.1.2

или

_SERVER["SERVER_SOFTWARE"] Apache/1.3.33 (Unix) PHP/5.0.5 FrontPage/3.0.4.2 mod_perl/1.26 AuthMySQL/2.20

в обоих случаях PHP установлен как модуль Апача

вот что в вашем случае озадачило, так это то, что нет сведений о MySQL'е

кстати, в каком конфигурационном файле Вы настраиваете подключение библиотек? Судя по http://sfagnum.land.ru/test.php.htm ваша система читает

Configuration File (php.ini) Path C:\WINDOWS

правки extensions делались там или в файле php.ini из каталога, в который установлен PHP?

2. Не надо "все равно то же грузить" и слушать неверные советы!

http://www.php.net/manual/ru/ref.mysql.php
Расширение работает с MySQL версий >= 4.1.0, но не эксплуатирует всю возможную функциональность этих версий. Для этого используйте MySQLi
http://www.php.net/manual/ru/ref.mysqli.php
 

Sfagnum

Новичок
Gorynych

1.
конкретно - PHP/5.2.0-dev вроде 5.1.4 вставлял...

хммм.... а вот MySQL'ом... хз... процесс висит.... ставил mysql-essential-5.0.21-win32.msi с этого файла.

да-да именно там.

2. да уж сообразил что ф-я mysqli_connect() вряд ли реализована в php_mysql.dll :D

>
http://www.php.net/manual/ru/ref.mysqli.php а вот тут для меня китайская грамота...
To install the mysqli extension for PHP, use the --with-mysqli=mysql_config_path/mysql_config configuration option where mysql_config_path represents the location of the mysql_config program that comes with MySQL versions greater than 4.1.
к чему это и куда его пихать...

ЗЫ как понятно из вопросов всё таки новичёк в PHP :)
 

Gorynych

Посетитель PHP-Клуба
Sfagnum

"процесс висит" - это что означает, что запущен и работает MySQL или что?

дело не в этом, дело в том, что у Вас НЕ подключилось расширение. Дело не в проблеме соединения с сервером MySQL, а в том, что у вас не подключено (судя по phpinfo()) нужное расширение. Вы правите php.ini который расположен в каталоге C:\WINDOWS или как?

Ой, стоп! Если вы его правите именно там, а PHP подключен как модуль Апача, сделайте милость - перезагрузите Апач после внесения правок в php.ini и еще ре посмотрите, что там с phpinfo()?
 

Sfagnum

Новичок
Gorynych
ага... запущен. в смысле висит в памяти :)

ну я так и понял.

кхм...кхм... как бы после того как запостил phpinfo() никаких более изменений не вносил. ибо не знаю что и как вносить :)
php.ini
 

zevs5

Новичок
Автор оригинала: Sfagnum
Gorynych
ага... запущен. в смысле висит в памяти :)

ну я так и понял.

кхм...кхм... как бы после того как запостил phpinfo() никаких более изменений не вносил. ибо не знаю что и как вносить :)
php.ini
Скидываю тебе свой php.ini подкоректируй пути к папкам, у меня на 5 мускуле работало только я на 4 вернулся. Мне показалось что 5 не коректно с кодировками работает.

http://www.zevs5.pp.ru/php.tgz
 

Sfagnum

Новичок
zevs5
спасибо за ини файл....
но! после тупого перебивания путей ситуёвина координально не поменялась :(, скажу прямо осталась прежней с тем же сообщением.
вот что у меня получилось из твоего php.ini и на всякий случай phpinfo() вдогонку.
 

zevs5

Новичок
Автор оригинала: Sfagnum
zevs5
спасибо за ини файл....
но! после тупого перебивания путей ситуёвина координально не поменялась :(, скажу прямо осталась прежней с тем же сообщением.
вот что у меня получилось из твоего php.ini и на всякий случай phpinfo() вдогонку.
Терерь давай с этого места поподробней.
Была у меня проблемма. Поставил мускул чуть чтото не коректно получилось, короче в службах висит, а сам не работает удаляться не хочет, пришлось ставить его поверх именно этого, а потом удалять через панель установки удаления.
Вобщем как я понял Апач при старте на длл-ки загружаемые в PHP не матюкается значит дело всё в мускуле, а если матюкается то иди на php.net и бери Pecl к твоему PHP, значит твои dll что то покосило.
Короче переставь мускула, а дальше будем смотреть.

Если что вот линк на мой phpinfo http://www.zevs5.pp.ru/phpinfo.php

а здесь я кидаю Pecl к PHP 5.1.4 и MySQL5 ftp://ftp.zevs5.pp.ru/publik_ftp/PHP

-~{}~ 02.07.06 04:03:

Решил проблемму? Или так и не получается?
 

Sfagnum

Новичок
нет... к сожалению... тут что то тип отпуска было... не трогал...

но вроде локализовал проблему.
у меня в phpinfo()
extension_dir C:\php5 C:\php5
а в php.ini
extension_dir = "C:\php5\ext\"

вот откуда оно берёт такое значение?!?! и что самое главное... его не переубедить :(
 

Сергей Тарасов

Профессор
Короче у меня была такая проблема: решение - кинуть dll в C:\php5
Он туда кстати инсталлятором по умолчанию заливается
 

Сергей Тарасов

Профессор
Для решения проблемы только mysqli

-~{}~ 04.07.06 14:59:

Посмотри, может ты юзаешь не тот php.ini
В том же самом phpinfo помотри путь к своему php.ini файлу, совпадает ли он с тем, по которому находится твой файл?
 

Sfagnum

Новичок
1. не решилась.
2. Configuration File (php.ini) Path C:\WINDOWS
там оно и лежит что берёт я не в курсе... в принципе по ссылке, приведённой выше, описана полностью аналогичная трабла.
 

zevs5

Новичок
Автор оригинала: Sfagnum
1. не решилась.
2. Configuration File (php.ini) Path C:\WINDOWS
там оно и лежит что берёт я не в курсе... в принципе по ссылке, приведённой выше, описана полностью аналогичная трабла.
Слушайте я таких проблемм сам нигде не встречал.
Сделай в httpd.conf ниже AddModule вставь строчку PHPIniDir "C:/твой_каталог_пхп"


Типа такого:

ScriptAlias /cgi-bin/ "C:/usr/Apache2/cgi-bin/"


<Directory "C:/usr/Apache2/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>

PHPIniDir "C:/usr/php"

Чтобы полностью отвязаться от системного каталога.
И ещё вопрос ты ПХП через инсталятор ставил или .zip качал
И подкинь ещё раз свои php.ini и httpd.conf.

Ещё одно пришло в голову,
посмотри по этому пути: C:\Documents and Settings\Administrator\WINDOWS\php.ini.
Только обрати внимание на пользователя(У меня Administrator, а у тебя возможно Твоё имя пользователя )
 

Sfagnum

Новичок
в принципе всё что в апаче так и был0.

zip. но сперва инсталером савил - снёс, а потом zip.

phpinfo()
 

zevs5

Новичок
Автор оригинала: Sfagnum
в принципе всё что в апаче так и был0.

zip. но сперва инсталером савил - снёс, а потом zip.

phpinfo()
Смотрю у тебя все модули из ext/ в ПХП директории лежат, а зачем, востанови структуру .zip архива ничего не кидай в системный каталог и дай мне php.ini ещё раз.

После восстановления структуры каталогов PHP в Апаче поставь PHPiniDir в свой каталог PHP

zip Архив PHP не требует каких либо добавлений в системную директорию.

-~{}~ 04.07.06 20:34:

Поставь PHP в C:\php
 
Сверху