PDA

Просмотр полной версии : socket_create() в PHP


jutky
22.10.2003, 01:47
У меня на локальной тачке бежит PHP, и вроде нормально раборает.
Но вот надо мне с сокетами написать кое-чо так он мне как выдал:

Fatal error: Call to undefined function: socket_create() in D:\proj\testing \socket.php on line 3

может мне надо какуюто библиотеку подключить :confused:

кто знает , помогите плз.

RaZEr
22.10.2003, 02:07
Да, нужно подключить расширение php_sockets.

jutky
22.10.2003, 11:42
а как это сделать?

З.Ы. если ты про php.ini то я пробовал раскоментировать строчку
extention=php_sockets.dll
и потом когда попробовал запустить сайт получил такое сообщение

Fatal error: Call to undefined function: socket_create() in D:\proj\testing \socket.php on line 3
PHP Warning: Unknown(): Unable to load dynamic library './php_sockets.dll' - The specified module could not be found. in Unknown on line 0
:(

cyprezz
22.10.2003, 11:54
Когда создаешь сокет, что указываешь в качестве параметров?
socket_create (AF_INET, SOCK_STREAM, TCP); - что-то вроде этого должно быть.

попробуй
fsockopen(hostname, port); - открывает соединение сокета TCP

Добавлено через 2 минуты:
да и еще можно юзать pfsockopen() - устойчивое соединение.
Обе функции возвращают указатель, который в дальнейшем может быть использован для файловых функций fputs() , fgets() , fclose()

jutky
22.10.2003, 12:14
Ура , заработало вроде.
Надо было скопировать php_sockets.dll в C:\PHP\extensions
(php_sockets.dll я у себя нашел в php-4.2.3-Win32.zip архиве)

и потом написать в php.ini вот такие строчки

; Directory in which the loadable extensions (modules) reside.
extension_dir = C:\PHP\extensions

и всё, вроде ошибок не выдает,
насчет как работает еще не проверял время щас нет, потом напишу или всё нормально.

Добавлено через 2 минуты:
2 cyprezz
проблема была не в програмировании а в настройках PHP,
но всё равно спасибо, когда пириступлю ближе к телу я попробую твои советы

cyprezz
22.10.2003, 12:16
эт хорошо, что у тебя полная zip версия, а не простая, корявая инсталяшка, в которую даже модули поленились засунуть :)

jutky
22.10.2003, 13:48
у меня как раз корявая инсталяшка, поэтому модулей не было на месте,
а про етот zip я и не знал, просто запустил поиск на php_sockets.dll
и он нашелся на харде гдето валялся. :)

jutky
03.11.2003, 17:21
ещё вопрос про установку модулей в PHP,
мне тут надо PHP заставить работать с mssql,
ну я добавил этот экстеншн нашел файл "php_mssql.dll",
переписал куда надо, и получаю я такой вот глюк:
каждый раз когда я делаю рефреш не страничке появляется
сообщение от винды что мол PHP сделал там какуюто ошибку
ну и его соответственно надо закрыть,
цитирую: "PHP Script Interpreter has encountered a problem and needs to close."

а на страничке я вижу после этого вот такое:
"CGI Error
The specified CGI application misbehaved by not returning a complete set of HTTP headers. The headers it did return are:"

кто встречался с подобной проблемой помогите плиз.

jutky
03.11.2003, 23:11
целый день промучался с этой проблемой,
потом переставил MSSQL с людьми которые в этом шарят
и заработало, с первого раза.
так что это MSSQL криво стоял наверное :(