SOAP немогу понять что я не делаю не так?

Mit2

Новичок
SOAP немогу понять что я не делаю не так?

Создал файл client.php со следующим кодом
PHP:
 <?php
// Использование Web-сервиса
// "Currency Exchange Rate" от xmethods.com
// Создание SOAP-клиента по WSDL-документу
$client = new SoapClient("http://www.xmethods.net/sd/2001/CurrencyExchangeService.wsdl");

// Поcылка SOAP-запроса и получение результата
$result = $client->getRate("us", "russia");

echo ‘Текущий курс доллара: ', $result, ‘ рублей';
?>
Запускаю выдает ошибку: Fatal error: Class 'SoapClient' not found in C:\Program Files\Apache Group\Apache2\htdocs\soap\client1.php
Посмотрел phpinfo там написано в разделе HTTP Headers Information
soap
Soap Client enabled
Soap Server enabled
что я делаю не так?

-~{}~ 18.09.06 12:34:

up
 

Gorynych

Посетитель PHP-Клуба
проверьте в php.ini подключение библиотек (и их наличие в <PHP_path>/ext):

extension=php_openssl.dll
extension=php_soap.dll

не забудьте перезапустить Апач :)
 

Alexandre

PHPПенсионер
Gorynych еслибы библиотеки были бы отключены, то Soap Client и Soap Server были бы дисаблед, вернее раздел соап вообще не показывался бы.
 

Mit2

Новичок
extension=php_soap.dll
это есть.
а extension=php_openssl.dll это обязщательно?
 

Alexandre

PHPПенсионер
extension=php_openssl.dll это обязщательно?
я могу ошибаться, но мое мнение нет,
php_openssl используется если если только используешь защищенное соединение.
попробуй тестовый код
PHP:
$module = 'soap';
$functions = get_extension_funcs($module);
echo "Functions available in the test extension:<br>\n";
foreach($functions as $func) {
    echo $func."\n";
}


 $sc =  new SoapClient ($uri);

 var_dump($sc);

 $methods = get_class_methods($sc);
 var_dump($methods);
 

Gorynych

Посетитель PHP-Клуба
Alexandre
сообственно, php_openssl.dll действительно необязательно

Mit2
а Вы скрипт запускаете через браузер (запросом к серверу) или из командной строки? Возможно, что при вызове phpinfo() и запуске скрипта из командной строки используются разные файлы php.ini
 

Mit2

Новичок
я начинающий в php и не могу понять куда ваш кусок кода сунуть :(
 

phprus

Moderator
Команда форума
Ну напиример сунь в файл 1.php. А после этого запусти его на сервере. Только не забудь разместить этод код между <?php и ?>
 

Mit2

Новичок
phprus
засунул
выдает
$module = 'soap'; $functions = get_extension_funcs($module); echo "Functions available in the test extension:
\n"; foreach($functions as $func) { echo $func."\n"; } $sc = new SoapClient ($uri); var_dump($sc); $methods = get_class_methods($sc); var_dump($methods);
 

Franzusow

Новичок
у меня такая же проблема. исползую XAMPP.
при проверке имеюсчихся функцый получаю толко 2

use_soap_error_handler и is_soap_fault

PHP Version 5.1.4 Windows
Phpinfo:
Soap Client: enabled
Soap Server: enabled
soap.wsdl_cache_dir= "D:\Programme\xampp\tmp"
soap.wsdl_cache_enabled =1
soap.wsdl_cache_ttl =86400
странно то, что в Loaded Modules soap не показан
 

Mit2

Новичок
даже не думаю издеваться. я просто для того чтобы понять как работает soap увидел пример на php.
Теперь по существу:
сделал файл test.php
Написал в него как говорили
<?php
$module = 'soap';
$functions = get_extension_funcs($module);
echo "Functions available in the test extension:<br>\n";
foreach($functions as $func) {
echo $func."\n";
}
$sc = new SoapClient ($uri);
var_dump($sc);
$methods = get_class_methods($sc);
var_dump($methods);
?>

При запуске выдает просто текст между <?php и ?>

-~{}~ 19.09.06 10:20:

а вообще как то странно после перезагрузки сервака все заработало ...
 
Сверху