Gegen Bilderklau - Das Original (https://www.gegen-bilderklau.net/index.php)
- Design, Website, Copyright (https://www.gegen-bilderklau.net/board.php?boardid=80)
--- Homepagehilfe (https://www.gegen-bilderklau.net/board.php?boardid=27)
---- Homepagehilfe - Archiv (https://www.gegen-bilderklau.net/board.php?boardid=139)
----- [PHP & MySQL] Werte ändern per Formular (https://www.gegen-bilderklau.net/thread.php?threadid=108988)


Geschrieben von -Katja- am 03.06.2007 um 21:57:

  Werte ändern per Formular

Hej,

Ich habe schon bei PHP-Einfach geschaut und auch hier. Mein Problem ist, dass ich einfach nur über ein Problem einen bestimmten Wert in einer MySQL Tabelle ändern will - Beispielsweise das Alter in einem Profil. Bei PHP-Einfach wirds nur so erklärt, dass man in eine Datei reinschreibt was geändert werden soll und dann hat sich der Fall.. Ich nenne mal ein konkretes Beispiel.

Man hat einen Wert, der in einer MySQL-Tabelle angegeben ist und auf einer normalen Seite ausgegeben wird. Hinter diesem Wert steht ein Link der zum Formular führt, wo man genau diesen wert ändern kann. Man gibt eine Zahl in ein Textfeld ein und sendet. Der Wert wird geändert.

Ich habe keinen blassen Schimmer, wie das funktionieren soll. Ich weiß nur, dass es irgendwas mit Update zusammenhängt.. als Beispielformular kann ich euch das geben:

code:
1:
2:
3:
4:
5:
6:
<form action="wertaendern.php" method="post">
Neuer Wert:<br>
<input type="Text" name="vorname"><br>
<input type="Submit" value="Absenden">
</form>


Nur weiter weiß ich nicht.. XD



Geschrieben von ProtexX am 03.06.2007 um 22:29:

 

Kannst du vielleicht mal ein Stück aus der Datenbank posten? Weil so wie du es beschreibst kann ich mir nicht viel darunter vorstellen.



Geschrieben von -Katja- am 03.06.2007 um 22:34:

 

Ich wusste das mans nich versteht.. *hmpf*
Hm, aus der Datenbank? Das versteh ich nicht.. xD



Geschrieben von ProtexX am 04.06.2007 um 23:26:

 

Okay, versuchen wir's anders. Augenzwinkern

Zeig doch mal ein bisschen mehr von deinem Code ...



Geschrieben von Gonzo am 05.06.2007 um 10:04:

 

May-Britt hat schon den richtigen Code angegeben, nun noch eine kurze Erklärung zum dem SQL-Statement:

$sql = mysql_query("UPDATE tabelle SET `vorname`='$vorname' WHERE `feld` = '$wert' LIMIT 1");


UPDATE = Schlüsselwort für die Änderung eines Datensatzes
tabelle = Name der Tabelle (= Datei, in der die Namen etc. stehen)

SET = Anweisung, daß jetzt das/die Feld/er kommt/en, das/die geändert werden sollen

"vorname" = Feldname in der Tabelle
'$vorname' = Variable mit dem neuen Feldwert, aus dem HTML-Formular

WHERE = Jetzt kommt die Anweisung, WELCHE/R Satz/Sätze geändert werden soll/en

'feld' = "$wert"

Dies ist von May-Britt allgemein gehalten, d.h. 'feld' und "$wert" muß von Dir angepaßt werden.

Du mußt ein Suchkriterium eingeben lassen, d.h. SQL muß wissen, welcher Datensatz geändert werden soll. Dieser Datensatz muß eindeutig bestimmbar sein. Am besten über einen eindeutigen Schlüssel (z.B. eine Mitgliedsnummer; Namen könnten doppelt vorkommen!).

LIMIT 1 = Es soll nur genau EIN Datensatz geändert werden.

Hinweis: Diese Anweisung ist zwar bequem, aber VORSICHT!!!!

Die Datenbanktabelle sollte so aufgebaut sein, daß jeder Datensatz EINDEUTIG erkennbar ist, z.B. über eine Mitgliedsnummer (eindeutiger Schlüssel).

Updates über zweideutige Schlüssel sind ungut.
(Glaub's mir einfach.)
Augenzwinkern


Forensoftware: Burning Board, entwickelt von WoltLab GmbH