mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Mo 16.01.2017 20:29 Benutzername: Passwort: Auto-Login

Thema: UPDATE-Funktion funktioniert nicht!?!? vom 18.10.2004


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> UPDATE-Funktion funktioniert nicht!?!?
Seite: Zurück  1, 2
Autor Nachricht
dastef

Dabei seit: 03.11.2003
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Mo 18.10.2004 16:13
Titel

Antworten mit Zitat Zum Seitenanfang

in deinem fall ja .. wurde aber auch schon von meinen zwei vor-
postern beschrieben.
  View user's profile Private Nachricht senden
Account gelöscht


Ort: -
Alter: -
Verfasst Mo 18.10.2004 16:29
Titel

Antworten mit Zitat Zum Seitenanfang

Es ist halt so: Bei Strings musst du eben darauf achten, dass Anfüs aus den genannten Gründen nur einmal verwendet werden. Bsp.:
Code:

$string="Ich bin eine Zeichenkette, die hat \" und ein '.";


Ausgabe:
Code:

Ich bin eine Zeichenkette, die hat ein " und ein '.


Dann gibt es noch den kleinen, aber feinen Unterschied zwischen " und '. Variablen, die zwischen doppelten Anfüs stehen, werden geparsed und ausgegeben:
Code:

$variable="Hanswurst";
$string="Ich bin eine Variable: $variable";


ergibt:
Code:

Ich bin eine Variable: Hanswurst.


Die andere Variante:
Code:

$variable="Hanswurst";
$string='Ich bin eine Variable: $variable';

Man sieht: Variablen zwischen einfachen Anfüs werden NICHT geparsed.

ergibt:
Code:

Ich bin eine Variable: $variable.


Ich persönlich empfinde das erste Beispiel als unsauber, da hier eine
Fehlerquelle steckt. Richtiger ist:
Code:

$variable="Hanswurst";
$string="Ich bin eine Variable: ".$variable;


ergibt:
Code:

Ich bin eine Variable: Hanswurst.


Willst du die andere Ausgabe herbeiführen, escapest du Zeichen,
die von PHP als Sonderzeichen angesehen werden, indem du einen
Backslash voranstellst. Dies bewirkt, dass PHP diese Zeichen als "normalen"
Text ansieht und nicht parsed:

Code:

$variable="Hanswurst";
$string="Ich bin eine Variable: \$variable";


ergibt ebenfalls:
Code:

Ich bin eine Variable: $variable.



SQL-Strings sind wieder eine Klasse für sich. Gehe einerseits davon aus, dass SQL selbst Strings, also Zeichenketten
zwingend in Anfüs (doppelt od. einfach) oder Backticks eingeschlossen haben muss. Gleichzeitig fordert eine SQL-Anweisung auch noch ein abschließendes Semikolon, streng genommen.

Willst du also eine SQL-Anweisung in PHP einbetten, ists am besten, du kreierst ERST den SQL-String, und schaust DANN, wie du ihn als String von PHP "zusammenbauen" lässt. Gehen wir vom einfachsten Fall aus:

Code:

UPDATE tabelle SET spalte='Wert';

ist unsere SQL-Anweisung.
Ein Schritt weiter, du willst anstelle 'Wert' eine Variable einfügen. Du musst also dafür sorgen, dass im SQL-String, bevor er an die Datenbank übergeben wird, der Variablennamen durch den tatsächlichen Wert ersetzt wird, die einfachen Anfüs für die Datenbank aber erhalten bleiben:

Code:

$sql="UPDATE tabelle SET spalte=$variable;";

wäre also FALSCH, denn nach dem parsen bliebe ein String übrig, der so aussähe.

Code:

UPDATE tabelle SET spalte=wert;


hier fehlen die Anfüs.

Richtig muss es lauten:
Code:
$sql="UPDATE tabelle SET spalte='$variable';";


oder noch besser:
Code:
$sql="UPDATE tabelle SET spalte='".$variable."';";


Verstanden? * Ööhm... ja? *


Zuletzt bearbeitet von am Mo 18.10.2004 16:31, insgesamt 2-mal bearbeitet
 
Anzeige
Anzeige
 
Ähnliche Themen mysql update funktioniert nicht
Wiedergabe-Funktion in After Effects CS4 funktioniert nicht
Online-Chat Funktion - mit On und Offline Funktion
onclick funktion
Fläche mit FUnktion
Illustrator Funktion
Neues Thema eröffnen   Neue Antwort erstellen Seite: Zurück  1, 2
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.