Hallo zusammen,
ich habe von hier mal ein Script bekommen (extra angefertigt) und bräuchte nun, weil ich was ändern möchte, Unterstützung.
Ich kann ein wenig SQL und bin nun aber überfragt.
Der User gibt an ob er an einem Treffen teilnehmen möchte und ob er auch Essen bestellen möchte. Die beiden Sachen werden nun in einer Datenbank erfasst, bisher war es so das der User seine
Entscheidung nicht ändern konnte, bzw. musste ich das per eingriff in die Datenbank selber vornehmen.
Ich habe nun eine Seite, auf der der User seine Entscheidung selber ändern kann. Ich lasse per SESSION sein bisherige Entscheidung anzeigen, leider lassen sich die Daten aber nicht ändern.
Bei der durchsicht des Scriptes bin nun auf das Problem gestoßen und kann es mit meinem Wissen nicht lösen.
Hier jetzt mal die Codes.
Erste abfrage beim ersten mal Einloggen
Die Datei die den POST befehl verarbeitet
Ich kann diese Art der Verarbeitung anscheinend nicht einfach ein zweites mal nutzen. Ich habe den HTML Code von oben in die andere Seite so übernommen, bekomme aber keine änderung der Datenbank.
Meine Frage nun, wie bekomme ich eine Änderung der Daten?
Falsches Forum? Dann bitte verschieben, Danke.
Schöne Grüße Marc
ich habe von hier mal ein Script bekommen (extra angefertigt) und bräuchte nun, weil ich was ändern möchte, Unterstützung.
Ich kann ein wenig SQL und bin nun aber überfragt.
Der User gibt an ob er an einem Treffen teilnehmen möchte und ob er auch Essen bestellen möchte. Die beiden Sachen werden nun in einer Datenbank erfasst, bisher war es so das der User seine
Entscheidung nicht ändern konnte, bzw. musste ich das per eingriff in die Datenbank selber vornehmen.
Ich habe nun eine Seite, auf der der User seine Entscheidung selber ändern kann. Ich lasse per SESSION sein bisherige Entscheidung anzeigen, leider lassen sich die Daten aber nicht ändern.
Bei der durchsicht des Scriptes bin nun auf das Problem gestoßen und kann es mit meinem Wissen nicht lösen.
Hier jetzt mal die Codes.
Erste abfrage beim ersten mal Einloggen
HTML-Code:
<p>Sag uns ob du kommst oder nicht. <br>Wenn du an der Feier teilnimmst, dann sag uns bitte auch ob du essen möchtest. <br>Das erleichtert uns die Vorbereitungen.</p> <form method="post" action="form_logic.php"> <div class="option"> <label>Zusage: </label> <input type="radio" name="selection" value="commitment" /> </div> <div class="option"> <label>Absage: </label> <input type="radio" name="selection" value="cancellation" /> </div> <div class="option"> <label>Unentschlossen: </label> <input type="radio" name="selection" value="undecided" /> </div> <br> <div class="option"> <label>Mit Essen: </label> <input type="radio" name="meal" value="yes" /> </div> <div class="option"> <label>Ohne Essen: </label> <input type="radio" name="meal" value="no" /> </div> <br /> <label for="email">E-Mail-Adresse: </label> <input type="email" name="email" placeholder=" abcd@example.com"/> <br /> <br /> <input type="hidden" name="form_type" value="appointment confirmation" /> <!-- if you use the script for more forms, you will need this --> <input type="submit" value="Abschicken" /><br> <p><br>Bitte trage deine E-Mail Adresse ein.<br><b><font color=red>Mit deiner E-Mail Adresse sparen wir uns das Porto für die nächste Einladung ;).</font></b><br>Wir können dann auch nach dem Treffen so einfacher bescheid geben, wann und wo die Fotos zu sehen sind.</p><br /> </form>
PHP-Code:
<?php
include_once 'meeting_logic.php';
include_once 'database_connection.php';
if($_POST['form_type'] == 'login'){
if((isset($_POST['username'])) && (isset($_POST['password']))) {
//Setze Datenbankverbindung
$mysqli = new mysqli(MYSQL_HOST, MYSQL_BENUTZER, MYSQL_KENNWORT, MYSQL_DATENBANK);
//Abfragen, ob Verbindung nicht geklappt hat
if ($mysqli->connect_errno) {
die("Verbindung fehlgeschlagen: " . $mysqli->connect_error);
}
//Hole Benutzernamen
$temp_username = $_POST['username'];
//Hole Password
$temp_password = $_POST['password'];
$input_array = array($temp_username, $temp_password);
$prepared_input = array();
foreach ($input_array as &$input_var) {
$temp_var = trim($input_var);
$temp_var = $mysqli->real_escape_string($temp_var);
$temp_var = utf8_decode($temp_var);
array_push($prepared_input, $temp_var);
}
$user = new user();
$user->name = $prepared_input[0];
$user->password = $prepared_input[1];
$user->loginUser();
}
else {
echo '<p class="rot">Bitte geben Sie Benutzername und Passwort ein!</p>';
}
}
else if($_POST['form_type'] == 'appointment confirmation') {
$user = new user();
$user->name = $_SESSION['username'];
if(!(empty($_POST['email']))) {
$user->email = $_POST['email'];
}
else {
$emailExists = $user->proveEmailInput();
if(true == $emailExists){
$user->email = '';
}
else {
$user->copyEmail();
}
}
if($_POST['selection'] == "commitment"){
$user->status = 'Zusage';
$_SESSION['status'] = "Zusage";
}
else if($_POST['selection'] == "cancellation"){
$user->status = 'Absage';
$_SESSION['status'] = "Absage";
}
else{
$user->status = 'Unentschlossen';
$_SESSION['status'] = "Unentschlossen";
}
if($_POST['meal'] == "yes"){
$user->essen = 'Ja';
$_SESSION['essen'] = "Ja";
}
else if($_POST['meal'] == "no"){
$user->essen = 'Nein';
$_SESSION['essen'] = "Nein";
}
$user->setDecision();
ob_start();
header("Location: logout.php"); //Weiterleitung auf logout
ob_flush();
ob_end_flush();
}
Meine Frage nun, wie bekomme ich eine Änderung der Daten?
Falsches Forum? Dann bitte verschieben, Danke.
Schöne Grüße Marc
Kommentar