Kann ich den PHP Code zur Formulardatenübertragung noch weiter shorten?

Diskutiere Kann ich den PHP Code zur Formulardatenübertragung noch weiter shorten? im PHP Forum im Bereich Programmierung; Kann man den nachfolgenden Code noch weiter vereinfachen bzw. shorten? (Die Verbindungsdaten und variablen sind Beispielhaft gesetzt.) Ich freue...
  • Kann ich den PHP Code zur Formulardatenübertragung noch weiter shorten? Beitrag #1
P
peter_maier
New member
Beiträge
1
Punkte Reaktionen
0
Kann man den nachfolgenden Code noch weiter vereinfachen bzw. shorten?
(Die Verbindungsdaten und variablen sind Beispielhaft gesetzt.)
Ich freue mich auf eure Verbesserungsansätze.


LG - Peter



<div>
PHP:
<!DOCTYPE html><html lang="en" dir="ltr">   <head>
    <meta charset="utf-8">
    <title></title>
  </head>
  <body>
    <?php
      $servername = "localhost";
      $username = "root";
      $password = "";
      $db= "verein_xy";

      // Create connection
      $conn = new mysqli($servername, $username, $password, $db);

      // Check connection
      if ($conn->connect_error) {
       die("Connection failed: " . $conn->connect_error);
      }
      echo "Connected successfully <br>";
      //var_dump($_POST);//gibt alle werte die mit POSt vom Formular übergeben werden aus
      //prepared sth damit keine sql injection entsteht
      $sth=$conn->prepare("INSERT INTO mitglieder (nname, vname, email, geburtsdatum)
              VALUES ( ?, ?, ?, ?)");

      //If überprüft mittels isset() ob in $_POST unter dem eintrag vname(etc..) was drinnen steht
      if (isset($_POST["vname"]) && isset($_POST["nname"]) && isset($_POST["email"]) && isset($_POST["geburtsdatum"])){
        $vn= $_POST["vname"];
        $nn= $_POST["nname"];
        $mail= $_POST["email"];
        $gb= $_POST["geburtsdatum"];
        //gibt parameter an. WICHTIG!!!: am anfang datentyp der parameter eingebe "S"->string "i"->integer ect.. hier 4 strings also "ssss"
        $sth->bind_param("ssss",$nn, $vn, $mail, $gb);
        //führt sth mit gebindeten parametern aus
        $sth->execute();
        //schliest verbindung
        $sth->close();
      }

      //nur abfrage-> kein prepared sth nötig
      $sth2=$conn->query("SELECT * FROM mitglieder");
      //liefert array von arrays zurück
      //schleife iteriert durch jeden eintrag von $sth2 und erzeugt hilfs variable $dataSet
      foreach ($sth2 as $dataSet){
        //echo
        echo "vn: ".$dataSet["vname"];
        echo " nn: ".$dataSet["nname"];
        echo " mail: ".$dataSet["email"];
        echo " gb: ".$dataSet["geburtsdatum"]."<br>";
      }

      //E-Mail geht raus! --> WICHTIG SMTP Fehler kommt immer wann kein Mailserver vorhanden!!!
      $message="welcome to our club XXXYYY";
      mail ( $mail, "welcome", $message);
    ?>
  </body>
</html>
 
Thema:

Kann ich den PHP Code zur Formulardatenübertragung noch weiter shorten?

Oben Unten