mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Fr 29.03.2024 11:26 Benutzername: Passwort: Auto-Login

Thema: [PHP] SQL UPDATE vom Formular vom 07.03.2007


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> [PHP] SQL UPDATE vom Formular
Seite: 1, 2  Weiter
Autor Nachricht
yz400f
Threadersteller

Dabei seit: 07.03.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Mi 07.03.2007 02:02
Titel

[PHP] SQL UPDATE vom Formular

Antworten mit Zitat Zum Seitenanfang

Hallo,

ich möchte das Formularfeld Str an meine Mysql Tabelle mit dem Feld STR und id='2' also Schlüsselfeld übertragen. Aber jetzt wird mir nur die 13 Übertragen bei absenden.
Hab gedacht so $sql = 'UPDATE adressen SET $_POST[Str] WHERE id=\'2\''; aber funktioniert auch nicht bitte um Hilfe.



Strasse: <input type="text" name="Str" /><br />



$sql = 'UPDATE adressen SET Str=\'13\' WHERE id=\'2\'';

[edit]
Titel geändert.


Zuletzt bearbeitet von tacker am Mi 07.03.2007 08:19, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
pRiMUS

Dabei seit: 09.09.2003
Ort: Vienna
Alter: 48
Geschlecht: Männlich
Verfasst Mi 07.03.2007 07:16
Titel

Antworten mit Zitat Zum Seitenanfang

1. funktioniert nicht ist ne 1a fehlermeldung, nur irgendwie bekomme ich die nie.
2. du haust deine quotes wild durcheinander

entweder

Code:
$sql = 'UPDATE adressen SET '. $_POST["Str"] .' WHERE id=\'2\'';


oder

Code:
$sql = "UPDATE adressen SET ". mysql_real_escape_string($_POST["Str"]) ." WHERE id='2'";


wichtig, hau am anfang deines scripts ein error_reporting(E_ALL); und display_errors(1) rein. nach jedem sql statement folgt ein mysql_error();

ach ja, und um böse überraschungen zu vermeiden, solltest du usereingaben stets mit mysql_real_escape_string() verarbeiten. und in deiner post variable der array eintrag Str ist in quotes zu setzen, denn andernfalls würdest du eine konstante ansprechen.

denn dann bekommst du aussagekräftigere fehlermeldungen wie "funktioniert nicht" und es kann dir besser geholfen werden.


Zuletzt bearbeitet von pRiMUS am Mi 07.03.2007 07:18, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
Benutzer 28377
Account gelöscht


Ort: -

Verfasst Mi 07.03.2007 08:05
Titel

Antworten mit Zitat Zum Seitenanfang

Fehlt das nicht etwas ?

> SET '. $_POST["Str"] .'
SET was ?
Pflaumen, Kuchen oder Eier ? Grins
 
pRiMUS

Dabei seit: 09.09.2003
Ort: Vienna
Alter: 48
Geschlecht: Männlich
Verfasst Mi 07.03.2007 09:24
Titel

Antworten mit Zitat Zum Seitenanfang

CIX88 hat geschrieben:
Fehlt das nicht etwas ?

> SET '. $_POST["Str"] .'
SET was ?
Pflaumen, Kuchen oder Eier ? Grins


in der tat, das kommt vom flüchtigen c&p des ursprungstextes Lächel mein fehler.

Code:
$sql = "update tabelle set `spalte` = '". $_POST["Str"] ."' where id = '1'";


so sollte es dann richtig sein.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
yz400f
Threadersteller

Dabei seit: 07.03.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Mi 07.03.2007 12:00
Titel

Abfrage

Antworten mit Zitat Zum Seitenanfang

Danke,

jetzt funktioniert es. Kann mir jemand noch ein Tipp geben wie ich das Update Formular
darauf beschrenke das man der User nur einmal die SQL Tabelle updaten darf.
  View user's profile Private Nachricht senden
Joxa

Dabei seit: 06.10.2005
Ort: -
Alter: -
Geschlecht: -
Verfasst Mi 07.03.2007 13:50
Titel

Antworten mit Zitat Zum Seitenanfang

Eine Möglichkeit wäre z.B.
das du die Tabelle um ein Feld "is_updated" o.ä. mit default 0 erweiterst in welches du
beim ersten update einfach eine 1 rein schreibst.

vor dem update machst du jetzt einfach eine Abfrage des Feldes,
wenn 0 -> mach das update
else -> mach nichts
  View user's profile Private Nachricht senden
Benutzer 28377
Account gelöscht


Ort: -

Verfasst Mi 07.03.2007 15:20
Titel

Antworten mit Zitat Zum Seitenanfang

> vor dem update machst du jetzt einfach eine Abfrage des Feldes

Brauchste nicht, kannste gleich mit WHERE verbinden Lächel
 
beeviZ

Dabei seit: 30.09.2002
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Mi 07.03.2007 16:22
Titel

Antworten mit Zitat Zum Seitenanfang

und wie teilste dem user so mit ob geupdated wurde oder nicht?

ich mein wenn du $query = mysql_query("UPDATE ... WHERE is_updated = 0"); machst, bekommste über if(!$query) nicht raus ob etwas geupdated wurde oder nicht, weil die mysql_query funktion an sich ausgeführt wurde.
  View user's profile Private Nachricht senden
 
Ähnliche Themen PHP/MySQL >> Problem bei DB-Update per Formular
Update auf CS 3
QT PRO - Update
problem mit update
[PHP] client update
Update mit checkbox
Neues Thema eröffnen   Neue Antwort erstellen Seite: 1, 2  Weiter
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.