Hier ist was ich gemacht habe:
Datenbank erstellt, über phppgadmin eingeloggt, im Schema public einen neuen table erstellt (3 columns: (numeric)ID, (text)Feature, (text)Description). Hat wunderbar funktioniert, keine probleme soweit.
Jetzt kommt der merkwürdige part.
Ich kann mich einloggen in die Datenbank, aber angeblich existiert der table nicht.
[code]<?php
$db = new PDO(‚mysql:host=localhost;dbname=nameDerDB;charset=utf8‘, ‚username‘, ‚password‘);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
$feature = ‚test‘;
$description = ‚test2‘;
$stmt = $db->prepare(„INSERT INTO nameDesTables(Feature,Description) VALUES(:Feature,:Description)“);
$stmt->execute(array(‚:Feature‘ => $feature, ‚:Description‘ => $description));
$affected_rows = $stmt->rowCount();
$db = null;
?>[/code]
Ich habe noch nie mit mySQL gearbeitet, aber laut Internet müsste das so funktionieren.
Was könnte ich da falsch gemacht haben?
(Und mal ne andere frage nebenbei: Angenommen die beiden variablen feature und description würden von einem user eingelesen werden, könnte dieser dann eine Injection durchführen oder ist mein Code dagegen geschützt, wegen der prepared Query?