nodde Skrevet 7. juli 2012 Skrevet 7. juli 2012 Jeg har kommet til ett lite problem som jeg ikke får helt til. echo "<input type='hidden' name='score[]' value='|' /><br />"; echo "<input type='number' name='score[]' value='1' min='1' max='20' /><br />"; foreach ($score as $value) if ($mysqli->query("INSERT INTO score (score,uke,dato,sted,bruker_id) VALUES ('$value','$uke','$dato','$sted','$bruker_id')")) Det kan feks være 10 score[] fra $_POST['score'] og jeg skal legge den inn i databasen som en linje og ikke bare første tallet. Tallet skal bli slik feks: |1|2|3|4|5|6
Sono Juventino Skrevet 7. juli 2012 Skrevet 7. juli 2012 (endret) En vanlig løsning er å skjøte sammen strenger så du slipper å gjøre flere spørringer mot databasen: $query = 'INSERT INTO score (score, uke, dato, sted, bruker_id) VALUES '; foreach ($score as $value) { $query .= "('{$value}', '{$uke}', '{$dato}', '{$sted}', '{$bruker_id}'), "; } Det er også mulig å sjekke ut funksjonalitet som MySQLi::multi_query(). Den tillater deg å gjøre flere CRUD-operasjoner i motsetning til MySQLi::query(). Endret 7. juli 2012 av Sono Juventino
nodde Skrevet 7. juli 2012 Forfatter Skrevet 7. juli 2012 Men vill han ikke loop den der og legge til 1 og 1 der?
Thomas. Skrevet 7. juli 2012 Skrevet 7. juli 2012 Men vill han ikke loop den der og legge til 1 og 1 der? Du kan blandt annet bruke implode funksjonen. Her er et eksempel som passer til oppsettet ditt: <?php $score = $_POST['score']; $score = implode('|', $score); echo 'Du valgte: ' . $score . '<br>'; ?> <br> <form method="post"> <?php /** gennerer noen random checkboxer **/ for($i = 1; $i <= mt_rand(5,15); $i++) echo 'Val ' . $i . ' <input type="checkbox" name="score[]" value="' . $i . '"><br>'; ?> <input type="submit" name="submit" value="test"> </form> $score er nå ferdig formatert "tall|tall|tall".. Slik at du kan bruke den i sql-spørringen din. Du burde også sjekke om inputene faktisk er et tall.
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå