PHP Übergibt nur 1 Wort

uaah122

New Member
Hallo Zusammen,

ich bin ein keiner PHP Neuling und hab bis jetzt mit ein paar Snippets folgendes zusammen gebastelt:
PHP:
$gp = @fsockopen($stream_host, $stream_port, $errno, $errstr, 3);
fwrite ($gp, "GET /admin.cgi?pass=".$stream_pass."&mode=updinfo&song=".$interpret." - ".$title." php HTTP/1.0\r\nUser-Agent:Mozilla/4.0\r\n\r\n");

So jetzt wird das zwar alles an den Server weiter gegeben aber leider nur 1 Wort von beiden Inhalten, Beispielsweise ich habe als Interpret: Test1 Test2 und als Title Test3 (Remix ABC) dann wird nur folgendes weiter gegeben: Test1.

Woran kann das liegen?
Vielen Dank!

Gruß,
uaah122
 
Es gibt keine Leerzeichen in URLs. Auch wenn manche Browser es so darstellen, müssen Leerzeichen (und einige andere spezielle Zeichen auch) URL-Encoded dargestellt werden.
In PHP geht es recht einfach:

PHP:
$song = urlencode($interpret.' - '.$title);

$gp = @fsockopen($stream_host, $stream_port, $errno, $errstr, 3);
fwrite ($gp, "GET /admin.cgi?pass=".$stream_pass."&mode=updinfo&song=".$song." php HTTP/1.0\r\nUser-Agent:Mozilla/4.0\r\n\r\n");

Damit verhinderst du auch, dass eventuell im Interpret oder Titel vorhandene Sonderzeichen (Umlaute, &, ?, usw.) ebenfalls maskiert werden und somit nicht stören.
 
Danke für die schnelle Antwort!!
Jetzt kommt folgendes an: Marlon+Roudette+-+New+Age wenn ich Marlon Roudette - New Age angegeben habe :)

uaah122

edit: habs mit rawurlencode gelöst :)
 
Last edited by a moderator:
Back
Top