Seite 1 von 2
soap client
Verfasst: Mo 13. Mär 2006, 14:06
von rene04
hi,
ich möchte über soap einen server ansteuern.
Code: Alles auswählen
<?php
$client = new SoapClient('https://support.sieda.com/TrackStudio/services/User?method=authenticate&p1=xxx&p2=xxx');
?>
leider bekomme ich folgende fehlermeldung:
Code: Alles auswählen
Fatal error: Cannot instantiate non-existent class: soapclient in /var/www/web1/html/contenido-4.6.4/cms/soap.php on line 2
was kann ich tun damit das funktioniert? auf dem server(debian) ist pear::soap installiert.
gruesse rene
Verfasst: Mo 13. Mär 2006, 16:39
von emergence
du solltest die klasse schon mittels include laden...
Verfasst: Mo 13. Mär 2006, 16:40
von rene04
das problem ist: welche klasse. der name der klasse welche ich includen soll is mir schon klar, aber.... woher bekomme ich die? ich habe keine erstellt.
gruesse rene
Verfasst: Mo 13. Mär 2006, 16:50
von emergence
vielleicht solltest du dir die pear dokumentation für diese klasse mal ansehen...
Verfasst: Mo 13. Mär 2006, 16:52
von rene04
das werde ich wohl mal tun, bei gelegenheit.
danke erstmal.
gruesse rene
Verfasst: Do 16. Mär 2006, 14:46
von rene04
so,
die klassen habe ich nun gefunden. scheint als wäre meine installation von SOAP ok.
die client class liegt nun unter /usr/share/php/SOAP/client.php
wie müsste das include nun aussehen?
???
gruesse rene
Verfasst: Do 16. Mär 2006, 14:57
von emergence
innerhalb von contenido... (cInclude ist eine contenido funktion)
ansonsten wie bei pear üblich
ist natürlich abhängig davon ob include_path seitens php korrekt konfiguriert wurde...
könnte auch funktionieren...
Verfasst: Do 16. Mär 2006, 15:07
von rene04
also cInclude muss ich nehmen da ich es aus contenido heraus aufrufen will, oder?
wie finde ich heraus ob der pfad richtig gesetzt ist?
ich habs mal mit bsp 1 von dir versucht:
Code: Alles auswählen
Fatal error: Call to undefined function: cinclude() in /var/www/web1/html/contenido-4.6.4/cms/soap.php on line 2
wenn ichs mit bsp 3 versuche bekomme ich diesen fehler:
Code: Alles auswählen
Warning: main(): open_basedir restriction in effect. File(/usr/share/php/SOAP/client.php) is not within the allowed path(s): (/var/www/web1/:/var/www/phpmyadmin/:/var/www/confixx/html/gesperrt/) in /var/www/web1/html/contenido-4.6.4/cms/soap.php on line 2
Warning: main(/usr/share/php/SOAP/client.php): failed to open stream: Operation not permitted in /var/www/web1/html/contenido-4.6.4/cms/soap.php on line 2
Warning: main(): Failed opening '/usr/share/php/SOAP/client.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/web1/html/contenido-4.6.4/cms/soap.php on line 2
Fatal error: Cannot instantiate non-existent class: soapclient in /var/www/web1/html/contenido-4.6.4/cms/soap.php on line 3
gruesse rene
Verfasst: Do 16. Mär 2006, 15:16
von emergence
rene04 hat geschrieben:also cInclude muss ich nehmen da ich es aus contenido heraus aufrufen will, oder?
nein, muss ist es nicht... es funktioniert nur innerhalb von contenido...
rene04 hat geschrieben:wie finde ich heraus ob der pfad richtig gesetzt ist?
blöde frage -> woher weisst du eigentlich das SOAP installiert ist ?
hat der provider gesagt das es in der server seitigen pear installation vorhanden ist ?
zum include_path
innerhalb von contenido unter administration - system ersichtlich...
wenn dort
/usr/share/php/ eingetragen funktioniert ein einbinden der klasse mittels
Verfasst: Do 16. Mär 2006, 15:18
von rene04
blöde frage -> woher weisst du eigentlich das SOAP installiert ist ?
hat der provider gesagt das es in der server seitigen pear installation vorhanden ist ?
ne, ich habs selbst installiert. habe uneingeschränkten root zugriff auf die mühle. und die installation lief ohne fehler durch.
gruesse rene
Verfasst: Do 16. Mär 2006, 15:23
von emergence
na wenn du root zugriff hast -> in der php.ini des servers...
wie die genau syntax dort zu lauten hat -> doku bemühen...
änderung wird vermutlich nach einen neustart des apache servers aktiv...
Verfasst: Do 16. Mär 2006, 15:24
von rene04
hmmm,
geht immernoch net

habs gemacht wie du sagtest. der path ist da.
Code: Alles auswählen
Warning: main(SOAP/client.php): failed to open stream: No such file or directory in /var/www/web1/html/contenido-4.6.4/cms/soap.php on line 2
Warning: main(): Failed opening 'SOAP/client.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/web1/html/contenido-4.6.4/cms/soap.php on line 2
Fatal error: Cannot instantiate non-existent class: soapclient in /var/www/web1/html/contenido-4.6.4/cms/soap.php on line 3
wenn es case-senitive ist, was man von linux kisten sagen kann sollte es Cient.php sein. Aber auch das geht nicht:
Code: Alles auswählen
Warning: main(): open_basedir restriction in effect. File(/usr/share/php/SOAP/Client.php) is not within the allowed path(s): (/var/www/web1/:/var/www/phpmyadmin/:/var/www/confixx/html/gesperrt/) in /var/www/web1/html/contenido-4.6.4/cms/soap.php on line 2
Warning: main(SOAP/Client.php): failed to open stream: Operation not permitted in /var/www/web1/html/contenido-4.6.4/cms/soap.php on line 2
Warning: main(): Failed opening 'SOAP/Client.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/web1/html/contenido-4.6.4/cms/soap.php on line 2
Fatal error: Cannot instantiate non-existent class: soapclient in /var/www/web1/html/contenido-4.6.4/cms/soap.php on line 3
gruesse rene
Verfasst: Fr 17. Mär 2006, 11:37
von rene04
ich habe nun mal auf dem server open_basedir auf none gesetzt.
jetzt ist die fehlermeldung schon wesentlich kürzer:
Code: Alles auswählen
Fatal error: Cannot instantiate non-existent class: soapclient in /var/www/web1/html/contenido-4.6.4/cms/soap.php on line 3
was ist hier noch nicht in ordnung? ich verzweifel bald ;(
gruesse rene
Verfasst: Fr 17. Mär 2006, 11:45
von mvf
rene04 hat geschrieben:
Code: Alles auswählen
Fatal error: Cannot instantiate non-existent class: soapclient in /var/www/web1/html/contenido-4.6.4/cms/soap.php on line 3
hättest du nach
'Cannot instantiate non-existent class'
gesucht, hättest du nicht verzweifeln müssen

da fehlt wohl irgendwo noch ein
cInclude('classes', ' .....
für soapclient
Verfasst: Fr 17. Mär 2006, 11:49
von rene04
ne, eben nicht.
Code: Alles auswählen
<?php
include("SOAP/Client.php");
$client = new SoapClient('https://support.sieda.com/TrackStudio/services/User?method=authenticate&p1=xxx&p2=xxx');
?>
die klasse für den soapclient ist includiert. deswegen bin ich auch so verwundert.
gruesse rene