Array für Datenbank umwandeln

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

  • Array für Datenbank umwandeln

    Hallo

    Gibt es eine elegantere Lösung Werte aus einem Array in mehrere Spalten einer mysql Datenbank einzutragen als folgende?

    PHP-Code:

    <FORM ACTION="irgendwas.php" METHOD="POST">

    <?php
        error_reporting
    (E_ALL);
        include 
    'inc/config.php';
        
    $Name $_POST['Name'];
        
    $Vorname $_POST['Vorname'];
        
    $Strasse $_POST['Strasse'];
        
    $Ort $_POST['Ort'];
        
                   
    Datenbankverbindung etc....

        
    mysql_query("INSERT INTO addressen (ID, Name, Vorname, Strasse, Ort) 
                    VALUES (NULL, '
    $Name', '$Vorname', '$Strasse', '$Ort')"); 
        
    ?>
    Der Code hier ist nur ein Beispiel.
    Mit so wenig Werten schaut das ja noch ok aus, stelle mir das aber sehr unübersichtlich vor sobald man mehr Spalten hat.

    Martin

  • #2
    Na ja, in der Regel wird das genau so gemacht. Man kann sich natürlich auch Helfer-Funktionen bauen, die das Ganze dann bsp. so aussehen lassen könnten:
    PHP-Code:
    $column_value_bind = array(
        
    'column_name1' 'value1',
        
    'column_name2' 'value2',
        
    'column_name3' 'value3',
        
    // usw.
    );

    $db->insert_record('tbl_name'$column_value_bind/* usw. */); // generiert die abfrage automatisch 
    Ob das jetzt eleganter ist: ich denke nicht, nein. Praktischer in der einen oder anderen Hinsicht möglicherweise. Solche Funktionen werden meistens benutzt, um sich das Schreiben von SQL per Hand zu sparen.
    Nieder mit der Camel Case-Konvention

    Kommentar


    • #3
      Re: Array für Datenbank umwandeln

      implode()
      mysql_real_escape_string()!

      Kommentar


      • #4
        Ich habe erst neu mit php und sql angefangen, aber ist es nicht so, dass die Lösung von onemorenerd nur einen String zurückgibt?

        PHP-Code:
        $string implode(","$_POST); 
        Wenn ich das richtig verstanden habe ergibt das dann:

        $string = Name, Vorname, Strasse, Ort

        Kommentar


        • #5
          Original geschrieben von maklei
          Ich habe erst neu mit php und sql angefangen, aber ist es nicht so, dass die Lösung von onemorenerd nur einen String zurückgibt?
          Und? Alles, was du brauchst, ist ein String.
          Wenn ich das richtig verstanden habe ergibt das dann:

          $string = Name, Vorname, Strasse, Ort
          Wenn man da noch Hochkommata und Kommata zwischen haben will, dann kann man ja den Verknüpfungs-String etwas cleverer wählen.
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar

          Lädt...
          X