Zurück   Flashforum > Flash und Server > Flash und Datenbanken

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 17-11-2006, 12:45   #1 (permalink)
Neuer User
 
Registriert seit: Nov 2006
Beiträge: 17
Arrow Datenbankanfrage mit Flash+PHP

Hallöchen, ich habe folgendes Problem. Ich möchte in Flash die Select - Anweisung für eine Datenbankanfrage generieren lassen um sie dann an PHP zu übergeben. DOrt soll dann damit eine Datenbankabfrage durchgeführt werden.

Solange ich bei den Auswahlbedingungen Zahlenwerte suche ist das ganze kein Problem. Wenn aber Textinhalte gesucht werden sollen, wird nichts gefunden. ich nehme an, daß es mit den Anführungszeichen zusammenhängt, in die die Textinhalte gesetzt sein müssen. Habe auch schon versucht, die Zeichen mit extra Escape-Folgen (\" und \') einzufügen. Es klappt einfach nicht.

Irgendwelche Ideen? Für Anregungen jedweder Art bin sehr dankbar.

Code:
//Flash
var DatenSatz = new LoadVars();
DatenSatz.onLoad = function(success) {
	if (success) {
		//output loadVars worked
		ergebnis.text=DatenSatz.returnValue;
	} else {
		//error
	}
};

DatenSatz.abfrage = 'select * from allgemein where Architekt="Fabian"';

trace(DatenSatz.abfrage);
DatenSatz.sendAndLoad("abfrage.php", DatenSatz, "POST");

PHP-Code:
$abfrage=$_POST['abfrage'];
$sql mysql_query($abfrage);
//und dann der ganze Ausgabekram 

Geändert von FabD (17-11-2006 um 13:08 Uhr)
FabD ist offline   Mit Zitat antworten
Alt 17-11-2006, 13:07   #2 (permalink)
Neuer User
 
Registriert seit: Nov 2006
Beiträge: 17
Hab doch tatsächlich ...

... die Lösung gefunden. Und zwar werden beim Übertragen der Zeichenkette nach PHP automatisch Backslashe vor die eingesetzten Anführungszeichen gesetzt. Daher erkennt PHP den Ausdruck nicht als korrekten Abfrageinhalt.

Lösung:
PHP-Code:
strtr($string,$from,$to); 
Dann gehts.
FabD ist offline   Mit Zitat antworten
Alt 17-11-2006, 13:21   #3 (permalink)
mod_rewrite
 
Benutzerbild von sonar
 
Registriert seit: Feb 2003
Ort: München
Beiträge: 15.621
stripslashes() hätt's vielleicht auch getan...
__________________
RTFM
Wie man Fragen richtig stellt.

Achim Bindannmalweg

Money makes the world go round, fear makes it turn much faster.
(New Model Army)
sonar ist offline   Mit Zitat antworten
Alt 17-11-2006, 13:35   #4 (permalink)
Neuer User
 
Registriert seit: Nov 2006
Beiträge: 17
Ich danke dir. Aber da muss man erstmal drauf kommen, dass die Teile da rein geschrieben werden.
FabD ist offline   Mit Zitat antworten
Alt 17-11-2006, 13:37   #5 (permalink)
mod_rewrite
 
Benutzerbild von sonar
 
Registriert seit: Feb 2003
Ort: München
Beiträge: 15.621
In so nem Fall verwende ich testweise erstmal LoadVars.send() und lasse mir das, was in PHP ankommt und/oder von PHP draus gemacht wird, ausgeben. Dann sieht man gleich, wenn was nicht passt und so...
__________________
RTFM
Wie man Fragen richtig stellt.

Achim Bindannmalweg

Money makes the world go round, fear makes it turn much faster.
(New Model Army)
sonar ist offline   Mit Zitat antworten
Alt 17-11-2006, 14:14   #6 (permalink)
Flashworker
 
Benutzerbild von sebastian
 
Registriert seit: Nov 2001
Ort: Wiesbaden
Beiträge: 10.945
Oh Achtung:
Auf keinen Fall so machen, das ist ein großes Sicherheitsloch.

=> Nur einzelne Parameter an PHP übergeben, die auch noch entsprechend
geparst werden, damit SQL Injection nicht möglich ist

greetz

Geändert von sebastian (17-11-2006 um 14:23 Uhr)
sebastian ist offline   Mit Zitat antworten
Alt 17-11-2006, 14:16   #7 (permalink)
Neuer User
 
Registriert seit: Nov 2006
Beiträge: 17
Äh, und das heißt?
FabD ist offline   Mit Zitat antworten
Alt 17-11-2006, 14:22   #8 (permalink)
Flashworker
 
Benutzerbild von sebastian
 
Registriert seit: Nov 2001
Ort: Wiesbaden
Beiträge: 10.945
In diesem Einzefall den SQL Teil auch in PHP rein und nur die Datei aufrufen
sebastian ist offline   Mit Zitat antworten
Alt 17-11-2006, 14:55   #9 (permalink)
Neuer User
 
Registriert seit: Nov 2006
Beiträge: 17
Ah, weil ich select mit poste, meinst du. Das Problem ist ja, dass es eben kein Einzelfall bleibt sondern das ich in Flash die unterschiedlichsten Abfragekombinatonen zusammenstellen können will. Und diese Kombinationen sollen dann an PHP weitergereicht werden. Würde es denn schon reichen, wenn ich den select-Befehl nicht mitposte? Und was meinst du mit dem parsen der Parameter.

Bin was PHP angeht absoluter Neuling.
FabD ist offline   Mit Zitat antworten
Alt 17-11-2006, 14:59   #10 (permalink)
Flashworker
 
Benutzerbild von sebastian
 
Registriert seit: Nov 2001
Ort: Wiesbaden
Beiträge: 10.945
Du darfst halt nur noch einzelne Werte übergeben, kein Teil eines Querys.
Im Prinzip für alle Fälle in PHP die Querys anlegen und dann eine ID übergeben
und mit if abfragen
sebastian ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 00:13 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele