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>
(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>