PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : PHP - $xyz=TRIM($xyz)?


daflow
2007-10-27, 16:58:24
Hallo zusammen,

hab mal wieder eine kleine php Frage. Ich würde gerne die trim() Funktion verwenden um sicherzustellen, das die Eingabe aus einem zuvor ausgefüllten Formular keine Leerezeichen mehr enthält.

selbiges wollte ich über $übergebenesFeld=trim($übergebenesFeld) realisieren... scheint aber so nicht zu funzen laut echo $übergebenesFeld; ;(

Gast
2007-10-27, 18:13:08
Ist $übergebenesFeld ein String oder ein Array?

Wenn es ein String ist, sollte es eigentlich funktionieren.

Keine Ahnung ob du die Hilfe angeschaut hast, hier (http://at2.php.net/trim) nochmal der Link.

daflow
2007-10-27, 18:16:10
Ist $übergebenesFeld ein String oder ein Array?

Wenn es ein String ist, sollte es eigentlich funktionieren.

Keine Ahnung ob du die Hilfe angeschaut hast, hier (http://at2.php.net/trim) nochmal der Link.

Ist ein string z.b. wie folgt definiert:
[...]
<form method="post" action="addsys.php">

<tr>
<td align="right" valign="top"><div align="left">Hostname:</div></td>
<td><input name="hname" id="hname" title="hname" type="text" size="30" /></td>
</tr>
[...]

daflow
2007-10-27, 18:27:05
Hm grad gesehn im Link werden die Variablen nicht überschrieben sondern einer neuen Variable zugeordnet, klappt evtl. nur
$hostnametrim=trim($hostname);

und

$hostname=trim($hostname);
nicht? ;(

Gast
2007-10-27, 18:37:37
Hm grad gesehn im Link werden die Variablen nicht überschrieben sondern einer neuen Variable zugeordnet, klappt evtl. nur
$hostnametrim=trim($hostname);

und

$hostname=trim($hostname);
nicht? ;(

Eigentlich sollten beide Versionen korrekt sein.
Hast du dir die Variable hostname vor und nach dem Trim anzeigen lassen?

Ist $hostname wie folgt definiert?


$hostname=$_POST["hname"];

daflow
2007-10-27, 18:48:24
Eigentlich sollten beide Versionen korrekt sein.
Hast du dir die Variable hostname vor und nach dem Trim anzeigen lassen?

Ist $hostname wie folgt definiert?


$hostname=$_POST["hname"];


Ju hab zum testen davor und danach ausgeben lassen und

nein ist nicht über $_POST[hostname] aufgerufen (sry hab oben fälschlicherweise $hostname geschrieben... sollt $hname heissen) sondern lediglich

über $hname
globals steht auf on... das evtl. das Problem?

Gast
2007-10-27, 19:59:51
globals ist murks³, du solltest immer $_POST bzw $_GET verwenden.

Gast
2007-10-27, 21:40:11
sollte zwar eigentlich nicht das problem sein, aber grundsätzlich kann ich dem Gast über mir nur zustimmen ;)

bist du sicher, dass du verstanden hast was trim macht? es entfernt die leerzeichen am anfang und am ende des Strings, nicht mitten drin. mit einem normalen echo sieht man diesen effekt in der regel nicht wirklich.

falls dir das allerdings bewusst ist, wäre es nicht schlecht, wenn du mal beschreiben würdest was nicht funktioniert. ist der string weg, unverändert oder was auch immer ?

aus dieser zeile
...
scheint aber so nicht zu funzen laut echo $übergebenesFeld
...
ist das nicht erkenntlich.

Sephiroth
2007-10-28, 01:35:33
Hallo zusammen,

hab mal wieder eine kleine php Frage. Ich würde gerne die trim() Funktion verwenden um sicherzustellen, das die Eingabe aus einem zuvor ausgefüllten Formular keine Leerezeichen mehr enthält.

selbiges wollte ich über $übergebenesFeld=trim($übergebenesFeld) realisieren... scheint aber so nicht zu funzen laut echo $übergebenesFeld; ;(
trim entfernt nur Leerzeichen am Anfang und am Ende des Strings. (siehe Doku (http://de.php.net/manual/de/function.trim.php))

Alle Leerzeichen entfernst du z.B. über
$foo = str_replace(' ', '', $foo);

$foo = trim($foo);
Zuweisungen der Art funktionieren