lass dir die query ausgeben (so, wie sie an die datenbank geht), und zeige sie mal kurz hier.
PDP Zugriffe auf MySQL
Einklappen
X
-
Keine Ahnung warum, aber wenn ich den INSERT als separaten String definiere, läuft es.
PHP-Code:try {
$dbh = new PDO("$dbtyp:host=localhost;dbname=$dbname", $user, $pass);
$sql = "INSERT INTO initiativen (Unternehmen, Initiativenname ) VALUES ($unternehmen, $initiativenname)";
$dbh->query($sql);
$dbh = null;
} catch (PDOException $e) {
print "Error!: " . $e->getMessage() . "<br/>";
die();
}
Kommentar
-
Du glaubst es nicht, aber nachdem ich den echo Befehl reingebracht habe (siehe Script), passierte erneut nichts - kein DB-INSERT.
Mit Logik hat das nichts mehr zu tun. Bin gespannt, wie Du das kommentierst.
$sql wurd wie folgt ausgegeben:
INSERT INTO initiativen (Unternehmen, Initiativenname ) VALUES (DZW, kkkkkkkkkkkkkkkk)
PHP-Code:try {
$dbh = new PDO("$dbtyp:host=localhost;dbname=$dbname", $user, $pass);
$sql = "INSERT INTO initiativen (Unternehmen, Initiativenname ) VALUES ($unternehmen, $initiativenname)";
$dbh->query($sql);
echo "SQL: " . $sql;
$dbh = null;
} catch (PDOException $e) {
print "Error!: " . $e->getMessage() . "<br/>";
die();
}
Kommentar
-
Die Backticks sind dafür da, falls man Tabellen- und/oder Spaltennamen verwenden will, die z.B. in MySQL reservierte Wörter sind, wie "index", "from", etc. In Deinem Fall kommt MySQL auch so damit klar, da keine reservierten Wörter, keine wilden Sonderzeichen,...
Und so sieht ein Backtick aus: `
LGEDIT:
Oops, Ihr seid mir zu schnell für die Uhrzeit...
Kommentar
Kommentar