Entwerte Sonderzeichen
blackstar
- php
Hallo zusammen
ich hab da nen Problem mit einer Datenbankabfrage PHP/MYSQL
ich möchte Die Daten aus DB TB1 in TB2 kopieren. Wenn ich jetzt $_POST
abfragen möchte klappt das nicht setzte ich jedoch statt $_POST einen wert aus TB1 direkt ein fuzt es.
$sql="INSERT INTO geloecht SET geloecht.name = (SELECT neu.name FROM neu where name = '"$_POST[namen]"'),geloecht.zeit = (SELECT neu.zeit FROM neu where name = '"$_POST[namen]"')"
danke schon mal im vorab
ps : bin noch neuling in php ;)
Hello,
ich hab da nen Problem mit einer Datenbankabfrage PHP/MYSQL
ich möchte Die Daten aus DB TB1 in TB2 kopieren. Wenn ich jetzt $_POST
abfragen möchte klappt das nicht setzte ich jedoch statt $_POST einen wert aus TB1 direkt ein fuzt es.
Was bedeutet das?
$sql="INSERT INTO geloecht SET geloecht.name = (SELECT neu.name FROM neu where name = '"$_POST[namen]"'),geloecht.zeit = (SELECT neu.zeit FROM neu where name = '"$_POST[namen]"')"
Bahnhof.
Kannst Du bitte nochmal gaaanz langsam erklären, was passieren soll
Dann bitte erzählen, was stattdessen passiert und vo allem:
Die Fehlermeldungen mitschicken!
Wenn Du keine Fehlermeldungen hast, dann sorge als erstes mal für eine vollständige Entwicklungsumgebung, also für Einstellungen oder Anwisungen, die jede erhältliche Fehlermeldung oder Statusmeldung auch abholen und zur Anzeige bringen.
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
Danke für Dein Hilfeangebot
ich hatte halt keine Fehlermeldung bekommen ;) deswegen stand ich bissl auf dem schlauch
ich wollte Datensatz aus tabelle1 in tabelle2 kopieren mit den Felder name und zeit
bei meiner Abfrage nach $_POST war nen syntaxproblem richtig muß es lauten:
$sql="INSERT INTO geloecht SET geloecht.name = (SELECT neu.name FROM neu where name = '".$_POST['namen']."'),geloecht.zeit = (SELECT neu.zeit FROM neu where name = '".$_POST['namen']."')"
damit der POST wert ausgewertet wird
gruß Sven
Hi Sven!
ich wollte Datensatz aus tabelle1 in tabelle2 kopieren mit den Felder name und zeit
Dann frag doch einfach die Daten aus Tabelle 1 ab und füge sie in Tabelle 2 ein.
bei meiner Abfrage nach $_POST war nen syntaxproblem richtig muß es lauten:
Was ist denn eine "Abfrage nach $_POST"?
MfG H☼psel
Hi
Du solltest Niemals Werte aus einer vom Benutzer fälschbaren Variable ($_POST, $_GET usw.) direkt in die DB schreiben. Dein Programm wird dadurch anfällig auf SQL Injection.
Mehr Info's hier:
[url]http://de3.php.net/manual/de/security.database.sql-injection.php[/url]
Hello,
ich hatte halt keine Fehlermeldung bekommen ;) deswegen stand ich bissl auf dem schlauch
ich wollte Datensatz aus tabelle1 in tabelle2 kopieren mit den Felder name und zeit
bei meiner Abfrage nach $_POST war nen syntaxproblem richtig muß es lauten:$sql="INSERT INTO geloecht SET geloecht.name = (SELECT neu.name FROM neu where name = '".$_POST['namen']."'),geloecht.zeit = (SELECT neu.zeit FROM neu where name = '".$_POST['namen']."')"
damit der POST wert ausgewertet wird
Ich nehme an, dass dieser Thread noch Mitposter bekommen wird...
1. schalte alle PHP-Fehlermeldungen ein
error_reporting(E_ALL);
ini_set('track_errors',1);
sollte da erste zwei Zeilen in jedem Script, dass sich im Test befindet, bei üblichen Installationen reichen.
2. Zeige Datenbank-Queries vor der Ausführung nochmals an
echo $sql;
könnte da bei Dir genügen.
3. Hole alle Datenbank-Statusmeldungen ab
$result = mysql_query($sql, $con);
echo $result
als Kurzanleitung
usw...
Sicherheitslücken in Deiner Vorgehensweise werden bestimmt auch noch besprochen werden
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom