ERLEDIGT
JA
JA
ANTWORTEN
5
5
ZUGRIFFE
1389
1389
EMPFEHLEN
-
Hallo!
ich beziehe mich auf: http://www.tutorials.de/tutorials77346.html
Ich habe das früher auf meiner lokalen Maschine perfekt mit AppServ am laufen gehabt. Leider ist mir die Festplatte abgeraucht und ich musste neu installieren. Als WAMPP habe ich diesmal statt Appserv XAMPP gewählt und konnte die alten Daten wieder herstellen.
Aber: seit dem ich XAMPP laufen habe, erhalte ich statt des Titels nur den HTTP-Response-Code in der Ausgabe:
Wenn ich mit folgender Funktion den Titel abfrage...
... erhalte ich den folgenden Response-Code, statt ein "vernünftiges" Ergebnis:PHP-Code:function httpQ($command, $arg)
{
$pass = "test";
$port = 4800;
$fp = fsockopen("127.0.0.1", $port, &$errno, &$errstr);
if(!$fp)
{
echo "$errstr($errno)\n";
}
else
{
if(($arg == ""))
{
$msg = "GET /$command?p=$pass HTTP/1.0\r\n\r\n";
}
else
{
$msg = "GET /$command?p=$pass&a=$arg HTTP/1.0\r\n\r\n";
}
fputs($fp, $msg);
while(!feof($fp))
{
return fgets($fp,128);
}
}
fclose($fp);
}
Code :1
HTTP/1.0 200 OK
Als Argumente schicke ich folgendes an die Funktion:
Ich finde das recht merkwürdig - kann das mit der PHP-Konfiguration zusammenhängen?PHP-Code:$titel = "";
$titel = httpQ(getcurrenttitle, $titel);
echo $titel;
$titel = explode(".", $titel);
$titel = explode("-", $titel[1]);
$titel[0] = trim($titel[0]);
$titel[1] = trim($titel[1]);
Nachtrag: Ich habe spasseshalber mal folgendes gemacht:Und siehe da: es klappt. Nur kann ich das auf meinem "richtigen" Webserver so natürlich nicht laufen lassen.Ich kapier das nicht....PHP-Code:include("http://localhost:4800/getcurrenttitle?pass=test");
-
Das sollte es tunPHP-Code:
$antwort = file_get_contents('http://localhost:4800/getcurrenttitle?pass=test');

Ich kann mir ehrlich gesagt nicht vorstellen, dass die Funktion httpQ mal geklappt haben sollte. Normalerweise wird als erste Zeile immer der Antwortheader zurückgegeben. Kann natürlich sein, dass am Winamp-Plugin was geändert wurde.„Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
“For every complex problem, there is an answer that is short, simple and wrong.”
“Pessimism is safe, but optimism is a lot faster!”
Aktuelles Coding Quiz: #17 - Wörter kreuz und quer
-
Doch sie hat es.
Nach dem ersetzen erhalte ich folgenden Fehler:
Wobei die letzte Zeile vom include() herstammt.Code :1 2 3 4 5 6
Warning: fsockopen() [function.fsockopen]: php_network_getaddresses: gethostbyname failed in F:\apachefriends\xampp\htdocs\www\mssparty\index.php on line 47 Warning: fsockopen() [function.fsockopen]: unable to connect to http://127.0.0.1:4800 in F:\apachefriends\xampp\htdocs\www\mssparty\index.php on line 47 Der Vorgang wurde erfolgreich beendet. (0) Warning: fclose(): supplied argument is not a valid stream resource in F:\apachefriends\xampp\htdocs\www\mssparty\index.php on line 70 Turbonegro - Are You Ready (For Some Darkness)
Ich raff es nicht. Kann man in der Apache- oder PHP-Konfig irgendwo was dementsprechendes einstellen? Ich kann mir nicht erklären, warum es mit dem Appserv-Paket ging und jetzt nicht. Komisch...
-
Mh? Was hast du wo ersetzt?
Zitat von Moritz123
„Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
“For every complex problem, there is an answer that is short, simple and wrong.”
“Pessimism is safe, but optimism is a lot faster!”
Aktuelles Coding Quiz: #17 - Wörter kreuz und quer
-
Uhh.. hab mal wieder nicht richtig gelesen! Manchmal könnt ich mir echt mit der flachen hand voll vor die Stirn schlagen... danke-es geht.
-
Fragt mich jetzt bitte nicht woran das liegt, aber so sollte das nun gehen:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
[COLOR=Blue]function httpQ($command)[/COLOR] { $pass = "pass"; $port = 4800; $fp = fsockopen('localhost', '4800', $errno, $errstr, 30); if(!$fp) { echo "$errstr ($errno)\n"; } else { [COLOR=Blue]$msg = "GET /$command HTTP/1.0\r\n\r\n";[/COLOR] fputs($fp, $msg); while(!feof($fp)) { [COLOR=Blue]$var[] = fgets($fp,128);[/COLOR] } [COLOR=Blue]return $var[4];[/COLOR] } fclose($fp); } [COLOR=Blue]echo httpQ("getid3tag?p=pass&tags=t,a,y,g,l&delim=<br>");[/COLOR]
Die änderungen im Folgendem:
Bei der Funkton httpQ habe ich $arg rausgenommen. Stattdessen muss nun der komplette Query String (im Beispiel "getid3tag?p=pass&tags=t,a,y,g,l&delim=<br>") beim Aufruf übergeben werden. Diesen kann man in der httpQ Referenz nachlesen.
Desweiteren wird das ergebniss in ein Array gesteckt, und das 5. Element ($var[4]) zurückgegeben. Dieses enthält nämlich die gewünschten Daten. Sollte das nicht der fall sein, einfach ne andere Zahl ausprobieren. $var[0-3] sind einfach nur Response Codes wie "HTTP/1.0 200 OK".
Villeicht kann der Tutorial Schreiber ja sein Tutorial ergänzen oder wie auch immer.
Ähnliche Themen
-
LaTeX macht Probleme mit "listings"-Paket
Von g-a-s-t im Forum Sonstige SprachenAntworten: 12Letzter Beitrag: 19.08.10, 14:01 -
Probleme beim "Atompilz-Tutorial"
Von Teaser im Forum Cinema 4DAntworten: 5Letzter Beitrag: 25.02.09, 17:33 -
PHP "require()" macht Probleme
Von 3000volt im Forum PHPAntworten: 2Letzter Beitrag: 14.04.07, 22:47 -
"Rotate tool" macht Probleme
Von grashupfa im Forum Autodesk Maya (ehemals Alias)Antworten: 1Letzter Beitrag: 26.07.05, 12:07





Zitieren

Login






[PHP][Snippet] Array zu XML konvertieren