cofter
Erfahrenes Mitglied
Hallo Tutorials.de
Ich arbeite derzeit an einer Seite wo der User verschiedene Daten im Profil angeben kann.
Die meisten Daten sind in Form von checkboxen im Formular.
Die Daten werden serialisiert und in einer SQL Datenbank gespeichert.
Soweit so gut.
Ich lese nun die Daten aus der SQL-Datenbank und mache unserialize.
Danach möchte ich die ausgewählten Checkboxen mit "checked" belegen.
Leider habe ich nun das Problem das wenn mehrere angewählt wurden das Formular auch dementsprechen oft wiederholt wird was so nicht gewollt ist. :-/
Nun hoffe ich ihr könnte mir einen Schups in die richtige Richtung geben.
Zur erkärung hier der Code:
Die Ausgabe ist bis jetzt das wenn 3 Checkboxen ausgewählt sind wird auch jede Checkbox 3 mal ausgegeben.
Ich komme einfach nicht auf die Lösung und hoffe auf Eure Hilfe.
mfg
Cofter
Ich arbeite derzeit an einer Seite wo der User verschiedene Daten im Profil angeben kann.
Die meisten Daten sind in Form von checkboxen im Formular.
Die Daten werden serialisiert und in einer SQL Datenbank gespeichert.
Soweit so gut.
Ich lese nun die Daten aus der SQL-Datenbank und mache unserialize.
Danach möchte ich die ausgewählten Checkboxen mit "checked" belegen.
Leider habe ich nun das Problem das wenn mehrere angewählt wurden das Formular auch dementsprechen oft wiederholt wird was so nicht gewollt ist. :-/
Nun hoffe ich ihr könnte mir einen Schups in die richtige Richtung geben.
Zur erkärung hier der Code:
PHP:
<?php
// das Array
$piercingValuesArr = array("keine" => 10869,"Brustwarze/n" => 10867,"Bauchnabel" => 10866,"Intim" => 10865,"Ohr" => 10864,"Nase" => 10863,"Lippe / Zunge"=> 10862,"Sonstige / Andere" => 11134);
// $profileArr['profilePiercing'] <= enthält die Daten aus der Datenbank welche mit unserialize wieder in ein Array umwandelt.
$unserialize = unserialize($profileArr['profilePiercing']);
foreach ($piercingValuesArr as $piercingArr => $value) {
foreach ($unserialize as $serialValue) {
?>
<label>
<input name="profilePiercing[]" value="<?php echo $value; ?>" type="checkbox" <?php if($serialValue == "$value"){ echo "checked"; }?>><?php echo $piercingArr;?>
</label><br>
<?php
}
}
?>
Die Ausgabe ist bis jetzt das wenn 3 Checkboxen ausgewählt sind wird auch jede Checkbox 3 mal ausgegeben.
Ich komme einfach nicht auf die Lösung und hoffe auf Eure Hilfe.
mfg
Cofter