Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Array über Formular übergeben

0 views
Skip to first unread message

Stefan Becker

unread,
Dec 27, 2009, 1:26:49 PM12/27/09
to
Hallo,

ich habe ein Array mit Rufnummern ($gruppennummern), dieses m�chte ich zur
Weiterverarbeitung �bergeben:

<form name="rufnummer_hinzufuegen" action="<?php echo $_SERVER['PHP_SELF'];
?>" accept-charset="UTF-8" method="post">
Rufnummer: <input name="rufnummer" type="text" size="20" maxlength="20" />
<input type="hidden" name="gruppe" type="text" size="20" value="<?php echo
"$gewaehlteGruppe";?>" />
<input name="gruppenummern" type="text" size="20" value="<?php
$gruppennummern_string = serialize($gruppennummern); echo
"$gruppennummern_string";?>" />
<input type="submit" name="rufnummer_hinzufuegen" value="Rufnummer
hinzuf�gen" class="button" />
</form>
</p>
<?php}
if($_POST['rufnummer_hinzufuegen']=="Rufnummer hinzuf�gen"){
echo "Rufnummer wird hinzugef�gt"; //Test
$gruppenummern = unserialize($_POST['gruppenummern']);
var_dump($gruppenummern);
}

Doch ich erhalte folgenden Fehler Notice: unserialize()
[function.unserialize]: Error at offset 9 of 14 bytes in ....

Woran k�nnte das liegen?

Stefan

Renè Walther

unread,
Dec 27, 2009, 2:26:30 PM12/27/09
to
Am Sun, 27 Dec 2009 19:26:49 +0100, Stefan Becker schrieb:

> echo "$gruppennummern_string";


>
> Doch ich erhalte folgenden Fehler Notice: unserialize()
> [function.unserialize]: Error at offset 9 of 14 bytes in ....
>

> Woran könnte das liegen?

Möglicherweise daran das Du keine Zeichen maskierst die in HTML bzw
Argumentwerten eine spezielle Bedeutung haben. Schau Dir einfach mal das
resultierende HTML an das wird ungültig sein.

z.B.: htmlentities() kann helfen:
http://de2.php.net/htmlentities

MfG, Ulf

Markus Malkusch

unread,
Dec 29, 2009, 6:06:20 AM12/29/09
to
Stefan Becker:

> <form name="rufnummer_hinzufuegen" action="<?php echo
> $_SERVER['PHP_SELF']; ?>" accept-charset="UTF-8" method="post">
> Rufnummer: <input name="rufnummer" type="text" size="20" maxlength="20" />
> <input type="hidden" name="gruppe" type="text" size="20" value="<?php echo
> "$gewaehlteGruppe";?>" />
> <input name="gruppenummern" type="text" size="20" value="<?php
> $gruppennummern_string = serialize($gruppennummern); echo
> "$gruppennummern_string";?>" />
> <input type="submit" name="rufnummer_hinzufuegen" value="Rufnummer

> hinzufügen" class="button" />
> </form>

Das ist mal wirklich lesbar.

> Doch ich erhalte folgenden Fehler Notice: unserialize()
> [function.unserialize]: Error at offset 9 of 14 bytes in ....

Da wird halt irgendwo ein " im serialize() drinn sein. htmlspecialchars würd
das reparieren. Aber vielleicht überlegst Du Dir das Array einfach in der
Session abzulegen.
--
<http://bav.malkusch.de/de/> - Mit PHP Kontonummern auf Gültigkeit prüfen
<http://php-autoloader.malkusch.de/de/> - PHP Autoload Implementierung

Stefan Scholl

unread,
Dec 30, 2009, 12:39:49 PM12/30/09
to
Stefan Becker <stefan...@stefanshome.com> wrote:
> $gruppenummern = unserialize($_POST['gruppenummern']);

Potentielles Einfallstor.


--
Web (en): http://www.no-spoon.de/ -*- Web (de): http://www.frell.de/

0 new messages