2 array in eine datenbank

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

  • 2 array in eine datenbank

    ich habe 2 arrays aus einem formular und diese sollen abgearbeitet werden und in eine datenbank geschrieben werden:

    PHP-Code:
    foreach($commission as $array1) {
         
    $sql "INSERT INTO
                             abteilung(memberid,com,comfunction)
               VALUES
                       ('"
    .$memberid."',
                             '"
    .$array1."',
                             '"
    .$array2."')";
         
    mysql_query($sql) OR die(mysql_error());

    so mache ich das für das array1 nun ist aber noch das array2 dort was auch mit eingebunden werden muss. die anzahl der array-elemente sind gleich

  • #2
    Re: 2 array in eine datenbank

    dann wäre vermutlich eine for-schleife über eins der arrays angebrachter, als foreach.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Da könntest Du mit

      array_map

      beide Arrays zusammenführen. Nur mal so als Idee.
      Happiness is an empty error log

      Kommentar


      • #4
        das mit der for-schleife geht nicht so wirklich weil wenn ich das ganze nach dem foreach einbette dann läuft sich diese dumm und berücksichtig nicht mehr das foreach.

        das mit array_map sieht interessant aus (kannte ich noch nicht) mal probieren.

        Kommentar


        • #5
          noch mal zur erklärung:

          es sollen die beiden arrays wie folgt in die db gespeichert werden

          id | array1[0] | array2[0]
          id | array1[1] |_array2[1]
          id |_array1[2] |_array2[2]
          usw...

          mit array_map geht das nicht

          Kommentar


          • #6
            Original geschrieben von Frashier
            das mit der for-schleife geht nicht so wirklich weil wenn ich das ganze nach dem foreach einbette dann läuft sich diese dumm und berücksichtig nicht mehr das foreach.
            ich sagte for anstatt foreach, nicht for nach foreach.
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              Wenn beide Arrays gleich groß sind, dann müsste es so gehen:

              PHP-Code:
              for($i=0;$i<count($array1);$i++) {
                   
              $sql "INSERT INTO
                                       abteilung(memberid,com,comfunction)
                         VALUES
                                 ('"
              .$memberid."',
                                       '"
              .$array1[$i]."',
                                       '"
              .$array2[$i]."')";
                   
              mysql_query($sql) OR die(mysql_error());

              oder mit array_map (ungetestet, aber von der Idee her müsste es so gehen):

              PHP-Code:
              $array array_map($array1,$array2);
              foreach(
              array_keys($array) AS $value) {
                   
              $sql "INSERT INTO
                                       abteilung(memberid,com,comfunction)
                         VALUES
                                 ('"
              .$memberid."',
                                       '"
              .$value[0]."',
                                       '"
              .$value[1]."')";
                   
              mysql_query($sql) OR die(mysql_error());

              Ich würde aber in dem Fall die erste Lösung vorziehen, siehe auch wahsagas Postings.
              Happiness is an empty error log

              Kommentar

              Lädt...
              X