# Leerzeichen in $_GET Variable



## mrsatx (1. März 2004)

Hallo,

will über die URL mehrere Wörter in einer Variable übergeben.

Bei IE klappts mal wieder ab in Netscape mal wieder nix.

Wenn ein Leerzeichen in der Variable ist die ich mit $_GET aus der URL hole wird das Script nicht richtig ausgeführt.

Ich kann zwar das Leerzeichen durch ein anderes Zeichen austauschen und später wieder ersetzen lassen aber es gibt doch wahrscheinlich n einfacheren Weg oder?

Danke!


----------



## loki2002 (1. März 2004)

Guckst Du Hier und HIER


----------



## mrsatx (1. März 2004)

Hm weiß nich ob das das richtige ist.

Netscape hat glaub ich schon Probleme mit den Leerzeichen in der URL und nicht im Code. Also habe zum Beispiel stehen:

index.php?test1=Nun ist gut&test2=Jetzt reicht es

Wenn ich die Leerzeichen durch andere Zeichen ersetzte und diese im nachhinein austausche klappt es aber das is n bischen umständlich 

Weiß jetzt nicht ob mir da urldecode() helfen würde da Netscape ja schon die Variable nicht komplett rüberholt mit $_GET.


----------



## Kerwin (2. März 2004)

für soetwas würde ich rawurlencode nehmen, wobei glaube net alzu große Unterschiede gibt.

Dieser Befehl bewirkt folgendes

Mit urldecode() kann man einen String (str), der über eine URL übermittelt oder
mit der Funktion urlencode() kodiert wurde, wieder dekodieren.
Bei der Dekodierung werden alle Prozentzeichen(%), gefolgt von zwei
Hexzeichen, wieder in ihre alphanumerische Entsprechung umgewandelt.
Weiterhin werden alle Pluszeichen (+) in Leerzeichen umgewandelt.

Folgende alphanumerischen Zeichen werden nicht dekodiert:
- - Bindestrich
_ - Unterstrich
. - Punkt


```
<?PHP
$var = "Der Wald ist voller Bäume";
echo $var . "<br>";
$var_encode = rawurlencode($var);
echo $var_encode . "<br>";
echo '<A HREF="index.php?text=' . $var_encode . '">Senden</A>';
?>
```

Die Ausgabe dazu wäre

Der Wald ist voller Bäume
Der%20Wald%20ist%20voller%20B%E4ume
Senden 


Sprich, du hast nun keine leerzeichen mehr in der URL und somit würde es dann gehen. 
Musst dann nur noch rawurldecode machen auf der neuen seite

```
$var_decode=rawurldecode($_GET['text']);
```

habs aber nicht getestet


----------

