Ankündigung

Einklappen
Keine Ankündigung bisher.

Array abfrage für DB-Eintrag

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Array abfrage für DB-Eintrag

    Hallo zusammen
    Ich hab ein Formular für mehrere Datensätze.
    Es sind 6 Zeilen a 4 Felder. Jede Zeile erbigt einen Datensatz. Diese Zeilen speichere ich in einem Array ($MenArray)

    Code:
    <form action= "<?php $PHP_SELF; ?>"  method="post" name="form" id="form"> 
    <tr> 
    <td><table border="0"> 
    <tr> 
    <th class="body" scope="col">&nbsp;</th> 
    <th scope="col"><span class="body">Datum:</span></th> 
    <th scope="col"><span class="body">Von:</span></th> 
    <th scope="col"><span class="body">Bis:</span></th> 
    <th scope="col"><span class="body">Bemerkung:</span></th> 
    </tr> 
    <tr> 
    <td class="body">Tag 1<span class="body">:</span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[1][datum]" id="tag1_datum" /> 
    </span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[1][von]" id="tag1_von" /> 
    </span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[1][bis]" id="tag1_bis" /> 
    </span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[1][bemerkung]" id="tag1_bemerkung"/> 
    </span></td> 
    </tr> 
    <tr> 
    <td class="body"><span class="body">Tag 2:</span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[2][datum]" id="tag2_datum" /> 
    </span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[2][von]" id="tag2_von" /> 
    </span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[2][bis]" id="tag2_bis" /> 
    </span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[2][bemerkung]" id="tag2_bemerkung"/> 
    </span></td> 
    </tr> 
    <tr> 
    <td class="body"><span class="body">Tag 3:</span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[3][datum]" id="tag3_datum" /> 
    </span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[3][von]" id="tag3_von" /> 
    </span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[3][bis]" id="tag3_bis" /> 
    </span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[3][bemerkung]" id="tag3_bemerkung"/> 
    </span></td> 
    </tr> 
    <tr> 
    <td class="body"><span class="body">Tag 4:</span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[4][datum]" id="tag4_datum" /> 
    </span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[4][von]" id="tag4_von" /> 
    </span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[4][bis]" id="tag4_bis" /> 
    </span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[4][bemerkung]" id="tag4_bemerkung"/> 
    </span></td> 
    </tr> 
    <tr> 
    <td class="body"><span class="body">Tag 5:</span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[5][datum]" id="tag5_datum" /> 
    </span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[5][von]" id="tag5_von" /> 
    </span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[5][bis]" id="tag5_bis" /> 
    </span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[5][bemerkung]" id="tag5_bemerkung"/> 
    </span></td> 
    </tr> 
    <tr> 
    <td class="body"><span class="body">Tag 6:</span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[6][datum]" id="tag6_datum" /> 
    </span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[6][von]" id="tag6_von" /> 
    </span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[6][bis]" id="tag6_bis" /> 
    </span></td> 
    <td><span class="body"> 
    <input type="text" name="MeinArray[6][bemerkung]" id="tag6_bemerkung"/> 
    </span></td> 
    </tr> 
    </table> 
    <p> 
    <input type="submit" name="send" id="send" value="Weiter" /> 
    </p></td> 
    </tr> 
    <p> 
    <input type="hidden" name="abgesendet" value="form" /> 
    </p> 
    </form>
    Den Inhalt der Array möchte ich mit einer Schleifa abfragen und in die Datenbank speichern, das aber nur wenn auch etwas im Array drn steckt.
    Denn es ist gut möglich, dass nicht alle 6 Zeilen ausgefüllt sind.

    PHP-Code:
    if (isset($_POST['abgesendet']) AND isset($MeinArray) AND !empty($MeinArray))
    {
        foreach(
    $MeinArray as $key => $value)
        {

    $insertSQL "INSERT INTO saer_podidate
                SET
                `podizei_idpodi`= '" 
    $row_postendienst['podi_ID'] . "',
                `podizei_datum`='" 
    $value['datum'] . "',
                `podizei_von`='" 
    $value['von'] . "',
                `podizei_bis`='" 
    $value['bis'] . "',
                `podizei_bemerkung`='" 
    $value['bemerkung'] . " ' ";

            
    mysql_select_db($database_Samariterverein2$Samariterverein2);
            
    $Result1 mysql_query($insertSQL$Samariterverein2) or die(mysql_error());
        }

    Was mach ich falsch, denn wenn ich das Formular abschicke, erzeigt mir der Code für jedes Array einen Datensatz, dass auch, wenn das Array leeer ist.
    das hab ich kontrolliert mit:

    PHP-Code:
    print_r ($MeinArray); 
    Grüsse
    Philipp


  • #2
    Es sind 6 Zeilen a 4 Felder. Jede Zeile erbigt einen Datensatz. Diese Zeilen speichere ich in einem Array ($MenArray)
    Den Inhalt der Array möchte ich mit einer Schleifa abfragen und in die Datenbank speichern, das aber nur wenn auch etwas im Array drn steckt.
    Was mach ich falsch, denn wenn ich das Formular abschicke, erzeigt mir der Code für jedes Array einen Datensatz, dass auch, wenn das Array leeer ist.
    Mensch Leute… Ihr stellt hier Fragen, da sollte man etwas mehr Sorgfalt erwarten dürfen.

    Ansonsten überprüfst du halt nicht, ob eine Zeile keine Einträge mit Inhalt (String !== "", zum Beispiel) enthält.

    Außerdem bitte beachten:

    - http://phpforum.de/forum/showthread.php?t=248916
    - http://phpforum.de/forum/showthread.php?t=231777
    - http://phpforum.de/forum/showthread.php?t=264056

    Kommentar


    • #3
      Sorry wenn die Fragenstellung etwas schnell gehen musste.

      Aber wieso der Code bei jedem Durchlauf einen Datensatz erzeigt, weiss ich noch immer nicht.

      Was mach ich falsch, dass er immer 6 Datensätze erzeugt, auch wenn nicht alle Felder ausgefüllt sind?

      Kommentar

      Lädt...
      X