Hallo ich hätte da mal wieder eine Frage, ich mache gerade für meine Schwester ein kleine Webseite. Damit sie ein paar Daten dort
zukünftig auch selber ändern kann habe ich einen kleinen Adminbereich erstellt.
Außerdem eine Datenbank mit einer Tabelle "data" und den Spalten für frei (zahlen) facebook und instagram (sind einfach nur die Links).
Außerdem habe ich die Webseite mit der Datenbank verbunden.
und zwar so ->
Die Ausgabe habe ich mir gleich in einer Variable gespeichert und gebe diese im Formular im 'value' gleich mit aus damit man sieht was in der Datenbank steht.
hier ist dann das formular in der datei die ich mal geheim.php genannt habe weil sie ja auch im geschützten Bereich ist.
So nun ist mir leider schleierhaft wenn ich jetzt was neu ins formular schreibe und auf update drücke wie speichert man dann neues in die datenbank bzw. überschreibt das vorhandene?
Ich habe da bei php-einfach.de folgendes gefunden:
Natürlich könnt ihr die Parameter, wie bei allen prepared Statements, auch wieder benennen:
Im obigen Fall haben wir die Id als ein Parameter definiert. Natürlich können wir auch eine feste Id in den Query einspeichern, z.B. wenn wir stets den Eintrag mit der Id 1 verändern wollen:
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
In meinem fall wäre es immer der User mit der ID1 - allerdings übersteigt das meine Kenntnisse und hoffe mir kann hier irgendjemand dazu etwas helfen.
Ich denke mal irgendwas mit $post - den befehl update oder auch insert? Ich denke da wohl auch irgendwie verkehrt. keine Ahnung.
Danke schon mal
zukünftig auch selber ändern kann habe ich einen kleinen Adminbereich erstellt.
Außerdem eine Datenbank mit einer Tabelle "data" und den Spalten für frei (zahlen) facebook und instagram (sind einfach nur die Links).
Außerdem habe ich die Webseite mit der Datenbank verbunden.
und zwar so ->
PHP:
$pdo = new PDO('mysql:host=localhost;dbname=name', 'user', 'passwort');
$sql = "SELECT * FROM data";
foreach ($pdo->query($sql) as $row) {
$facebook = $row['facebook'];
$instagram = $row['instagram'];
$frei = $row['frei'];
}
Die Ausgabe habe ich mir gleich in einer Variable gespeichert und gebe diese im Formular im 'value' gleich mit aus damit man sieht was in der Datenbank steht.
hier ist dann das formular in der datei die ich mal geheim.php genannt habe weil sie ja auch im geschützten Bereich ist.
Code:
<form action="geheim.php">
<div class="form-group">
<label for="usr">Anzahl freie Plätze:</label>
<input type="text" class="form-control" id="usr" value="<?php echo $frei; ?>">
</div>
<div class="form-group">
<label for="fck">Facebook - Link:</label>
<input type="text" class="form-control" id="fck" value="<?php echo $facebook; ?>">
</div>
<div class="form-group">
<label for="ins">Instagram - Link:</label>
<input type="text" class="form-control" id="ins" value="<?php echo $instagram; ?>">
</div>
<button type="submit" class="btn btn-primary">Update</button>
</form>
So nun ist mir leider schleierhaft wenn ich jetzt was neu ins formular schreibe und auf update drücke wie speichert man dann neues in die datenbank bzw. überschreibt das vorhandene?
Ich habe da bei php-einfach.de folgendes gefunden:
Natürlich könnt ihr die Parameter, wie bei allen prepared Statements, auch wieder benennen:
1 2 3 4 5 6 | <?php $pdo = new PDO('mysql:host=localhost;dbname=test', 'username', 'password'); $statement = $pdo->prepare("UPDATE users SET email = :email_neu WHERE id = :id"); $statement->execute(array('id' => 1, 'email_neu' => 'neu@php-einfach.de')); ?> |
1 2 3 4 5 6 | <?php $pdo = new PDO('mysql:host=localhost;dbname=test', 'username', 'password'); $statement = $pdo->prepare("UPDATE users SET email = :email_neu WHERE id = 1"); $statement->execute(array('email_neu' => 'neu@php-einfach.de')); ?> |
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
In meinem fall wäre es immer der User mit der ID1 - allerdings übersteigt das meine Kenntnisse und hoffe mir kann hier irgendjemand dazu etwas helfen.
Ich denke mal irgendwas mit $post - den befehl update oder auch insert? Ich denke da wohl auch irgendwie verkehrt. keine Ahnung.
Danke schon mal