MySQL Datenbank inhalte aktualisieren per Formular?

2 Antworten

1.) Ohne PHP wird das nix.

2.) Ohne dwinen Code zu kennen kann man nicht helfen.

3.) WAS geht nicht? "Es geht nicht" ist keine ausreichende Fehlerbeschreibung.

seite2 ist eine php seite dahin wird das formular per POST weitergeleitet.

Der Code ist leider etwas zerstört weil ich darin etwas rumprobiert habe.

<?php

$form = array
$form['state'] = ['state'];
$form['language'] = ['language'];
$form['text'] = ['text'];

$pdo = new PDO('mysql:host=localhost;dbname=db', 'user', 'pw');

$statement = $pdo->prepare("UPDATE ticker SET text = ? WHERE id = ?");
$statement->execute(array("['text']", "['language']"));

$statement = $pdo->prepare("UPDATE ticker SET state = ? WHERE id = ?" ) ;
$statement->execute($neuer_user);
?>
0
@khof96

Nochmal die Frage: WAS GENAU funktioniert denn nicht?

0
@triopasi

es kommt keine fehler meldung aber trotzdem ändert es nicht den berreits vorhandenen datensatz in der Datenbank nicht

0
@khof96

Hast du Fehlermeldungen vllt ausgeschaltet? Keine Fehlermeldung heisst nicht, dass es keine Fehler gibt.

Überprüfe deine Tabellennamen usw. und prüfe mal ob die Variablen überhaupt die richtigen Werte haben.

0
@triopasi

diesem bin ich schon paar mal nach gegangen 

0
@triopasi

ich habe dank dem anderen Kommentar den Fehler gefunden. aber danke trotzdem für die mühen

0

Wo genau ist denn das Problem?

Im Grunde ist das ja recht simpel, vom Prinzip her etwa so;

UPDATE tabelle SET feld1 = 'neuerWert1', feld2 = 'neuerWert2' WHERE id = 123;

Poste ggf doch mal den Code deiner seite2.php (nicht hier, GF mag keine Code, besser auf pastebin.com und hier nur verlinken).


https://pastebin.com/2H3eUZXw


aber wie bereits gesagt das Script ist leicht zerstört 

0
@khof96
<?php$form = array$form['state'] = ['state'];$form['language'] = ['language'];$form['text'] = ['text'];


Also was mir auffällt. da scheinst du wohl das "$_POST" vergessen zu haben, das gleiche weiter unten bei deinem Query, also z.B. $_POST['state'] etc (unten im Array dann die doppelten Anführungszeichen weglassen).

https://pastebin.com/e8KqMNrG

1
@mastema666

Nochmal mit korrigierter 2. Zeile: https://pastebin.com/ZdiXU5TT

Ansonsten müsste das denke ich funktionieren wenn die DB-Daten / Felder alle stimmen, allgemein benutze ich persönlich zwar lieber bindValue() zum Zuweisen der Werte, aber das ist ja geschmackssache (ich finds einfach übersichtlicher, bei der Variante mit dem Array verwechselt man imho zu schnell mal die Reihenfolge^^).

0
@mastema666

nice danke, naja dafür das ich schon den ganzen tag hinter dem Computer hocke kann man das mal vergessen :D,

eigene Dummheit, da kommt man manchmal nicht auf das einfachste

0

Was möchtest Du wissen?