Avatar billede donslund Nybegynder
11. oktober 2006 - 09:00 Der er 15 kommentarer og
1 løsning

php og webservice, hvordan?

Jeg har en fomular der udover at smide en mail og noget i en database også skal kalde en webservice.

Jeg har fået noget SOAP kode et eller andet. Hvor skal det sættes ind? I samme phpfil som skriver til databasen?

Jeg ved ikke meget om det, men vil meget gerne lære.
Avatar billede coderdk Praktikant
11. oktober 2006 - 13:50 #1
Kører du PHP5? For så kan du bruge jool.nl's webservicehelper: http://www.jool.nl/new/
Avatar billede donslund Nybegynder
12. oktober 2006 - 10:11 #2
Jeg synes ikke jeg rigtig kan finde ud af at bruge denne hjælper. Jeg får en del fejl om manglende klasser.
Avatar billede donslund Nybegynder
01. november 2006 - 10:14 #3
Hvis jeg har de koder der skal bruges hvis jeg vil kalde en webservice fra c#, kan jeg så derudfra se hvordan man gør det via php?
Avatar billede coderdk Praktikant
01. november 2006 - 10:32 #4
Aaaah du skal KALDE en webservice?! WebserviceHelper er til at lave en Webservice selv :)

Tror du kan:

$client = new SoapClient( "https://brugernavn:kodeord@example.dk/din.wsdl", array(
  "login"      => "brugernavn",
  "password"  => "kodeord",
  "trace"      => 1,
  "exceptions" => 0));

$client->dinFunktion();
Avatar billede donslund Nybegynder
01. november 2006 - 14:38 #5
Jeps, det var jo det jeg skrev øverst ;-)

Men min Apache crasher hver gang jeg kalder noget som helst.
Avatar billede donslund Nybegynder
01. november 2006 - 14:47 #6
Jeg går ud fra, at de ting der findes i array, er værdier webservicen skal bruge for at smide noget tilbage.
Avatar billede coderdk Praktikant
01. november 2006 - 14:49 #7
Yeah, jeg kan ikke have læst efter :P Crasher?! Det lyder ikke godt :\ Nej, det der er i array'et er parametre til webserviceklienten, hvis du har en "login" metode f.eks. kalder du den bare:

$client->login($username, $password);

f.eks...
Avatar billede donslund Nybegynder
01. november 2006 - 15:14 #8
Hm. Det synes ikke rigtigt at ville fungere.

Måske dumt spørgsmål, men med dette: $client->dinFunktion();, skal jeg så kunne udskrive de data der er hentet?
Avatar billede coderdk Praktikant
01. november 2006 - 20:00 #9
$client->dinFunktion(); er en metode i webserviceobjektet. Hvis den returnerer noget, kan du da godt skrive det ud ;)
Avatar billede donslund Nybegynder
02. november 2006 - 14:01 #10
Kan ikke få det til at fungere. Har fået dette fra webserviceudbyderen. Giver det mening?

$handle = @fopen("http://webservice.atteno.dk/GetSubscriberData2", "username", "password", "(Emailadressen der søges på)", "fornavn");

print $handle;
if ($handle) {

  while (!feof($handle)) {

      $buffer = fgets($handle, 4096);

      echo $buffer;

  }

  fclose($handle);

} else {

    print "No handle";

}
Avatar billede coderdk Praktikant
02. november 2006 - 14:12 #11
Det giver INGEN mening, nej.
http://webservice.atteno.dk/GetSubscriberData2 er heller ikke en webservice? Jeg får i hvert tilfælde en 404 Not Found
Avatar billede donslund Nybegynder
02. november 2006 - 14:20 #12
Nej, jeg kan sgu heller ikke få det til at passe. fopen er da noget med tekstfiler.
Avatar billede coderdk Praktikant
02. november 2006 - 14:23 #13
Jeg tror de har puttet noget forkert noget i vandpiben ;) fopen kan også godt bruges til at læse fra URL'er, men resten er noget volapyk ;) Og den URL eksisterer som sagt ikke...
Avatar billede donslund Nybegynder
04. februar 2007 - 15:40 #14
Har fået det til at virke med noget SOAP kode.

Vil du have point?
Avatar billede coderdk Praktikant
04. februar 2007 - 15:46 #15
Nah, ellers tak, nap dem selv :)
Avatar billede donslund Nybegynder
04. februar 2007 - 16:17 #16
Tak, det gør jeg så.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester