Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Wie kann man ein Array in eine Datenbank schreiben?

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Wie kann man ein Array in eine Datenbank schreiben?

    Hier wird mein Array erstellt:
    PHP-Code:
        $person = array(
            
    "anrede"=>"Anrede:"
            
    "zusatz"=>"Zusatz:"
            
    "vorname"=>"Vorname:"
            
    "nachname"=>"Nachname:"
        ); 

        echo 
    "<table>\n";

        foreach (
    $person as $key=>$item) {
            echo 
    "<tr>
                  <td>"
    ,$item,"</td>
                  <td><input type=\"text\" name=\""
    ,$key,"\" /></td>
                  </tr>\n"
    ;
        }

        echo 
    "</table>\n"
    Hier wird es übergeben:

    PHP-Code:
                require_once "php/verbindung.php";

                
    $person $_POST['person'];

                
    // in DB schreiben.

                
    echo 'Kontakt angelegt!'
    Das Array kommt an, aber ich weiß nicht wie man es in eine Datenbank screibt.
    In der Tabelle der DB sollen die Daten auch wieder einzeln gespeichert werden.
    Ich habe verschiedene Sachen aus den Foren versucht aber irgendwie hat es nie funktioniert.


  • #2
    Hast du nicht ein Feld für die einzelnen Daten (Vorname, Nachname, ...) in der Tabelle?
    Zitat von nikosch
    Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.

    Kommentar


    • #3
      Ja habae ich.

      Kommentar


      • #4
        Dann speicherst du aber kein Array in der Datenbank...

        http://www.php.de/php-einsteiger/489...rundlagen.html
        Musst dir nur ne Query zusammenbauen.
        Zitat von nikosch
        Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.

        Kommentar


        • #5
          Der Plan war ja auch das Array zu zerlegen und den Inhalt in die Tabelle zu verteilen.
          Ich weiß nur nicht ob man dafür eine Schleife braucht oder es eine Funktion gibt.

          Kommentar


          • #6
            Ich habe noch ein paar Anläufe versucht aber keine Ahnung wie ich dieses array bearbeiten muss um die einzelnen Inhalte in eine Datenbank zu schreiben

            Kommentar


            • #7
              Zitat von tkausl Beitrag anzeigen
              http://www.php.de/php-einsteiger/489...rundlagen.html
              Musst dir nur ne Query zusammenbauen.
              Zitat von nikosch
              Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.

              Kommentar


              • #8
                Ich hab mich da schon umgeschaut, bin aber nicht so wirklich weiter gekommen.
                Du hast dich gerade einfach nur selber zitiert ohne was neues dazu zu schreiben. Das hilft mir leider nicht viel...

                Kommentar


                • #9
                  Zitat von mw210 Beitrag anzeigen
                  Du hast dich gerade einfach nur selber zitiert ohne was neues dazu zu schreiben.
                  Das war ein Hinweis, dass meinen vorherigen Beitrag nicht ignorieren sollst und du Grundlagen lernen sollst. Dass du in all den Grundlagen-Links keine Lösung gefunden hast glaube ich dir nicht.

                  Wenn du ein konkretes Problem hast kannst du wiederkommen. Einen String zusammen zu bauen und werte aus einem Array einzusetzen sind absolute Grundlagen, den String dann an die Datenbank zu senden genauso.
                  Zitat von nikosch
                  Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.

                  Kommentar


                  • #10
                    Also mit Doctrine kann man einfach nen Array nutzen und diesen dann in die DB schreiben:
                    http://www.doctrine-project.org/api/...n.html#_insert

                    Und laut dieser Seite (http://doctrine-dbal.readthedocs.org.../security.html, siehe 12.1, erster Punkt) ist das dann sogar noch sicher vor SQL Injections.

                    LG
                    https://github.com/Ma27
                    Javascript Logic is funny:
                    [] + [] => "", [] + {} => object, {} + [] => 0, {} + {} => NaN

                    Kommentar


                    • #11
                      Bevor man ein Array als Vorlage nimmt um daraus ein Array zu bauen, sollte man sich im Klaren sein, dass man vielleicht nicht möchte, dass alle Felder bespielt werden. Beispielsweise die IDs der erstellenden oder ändernden User, sowie die Zeitstempel für Änderung und Bearbeitung. Das heisst, man sollte mindestens noch eine Ausschlussmaske mit einplanen. Ansonsten sollte man noch die Felder der Tabelle (einmalig pro Scriptaufruf) einlesen und alle anderen Felder rauswerfen (bzw. eine Exception werfen). Besser (aber auch aufwändiger) wäre es, pro Insert eine Whitelist anzugeben.
                      Nachher hätte man dann eine Methode wie insert('tablename', [...daten...], [...maske...]);
                      Standards - Best Practices - AwesomePHP - Guideline für WebApps

                      Kommentar

                      Lädt...
                      X