Ahh, okay ![]()
Also man kann Tabellennamen nicht escapen mit pdo auf diese Art und Weise.
Mach am Besten eine Whitelist für die Tabellennamen:
PHP
<?php
try
{
$pdo = new PDO('mysql:host=localhost;dbname=ibis', 'ibis', 'cD33', array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'));
}
catch(PDOException $e)
{
echo $e->getMessage();
exit;
}
function isTableOk($table)
{
switch($table)
{
case "users": case "auchok": return true;
}
return false;
}
if(!isTableOk($_GET["table"])) die("Ungültiger Tabellenname!");
$p0 = intval($_GET["p0"]);
$p1 = intval($_GET["p1"]);
$p2 = intval($_GET["p2"]);
$p3 = intval($_GET["p3"]);
$p4 = intval($_GET["p4"]);
$p5 = intval($_GET["p5"]);
$statement = $pdo->prepare("SELECT * FROM `".$_GET["table"]."` WHERE `id` IN (?,?,?,?,?,?)");
$statement->execute(array($p0,$p1,$p2,$p3,$p4,$p5));
while($row = $statement->fetch()) {
echo $row["username"]. "," ;
}
?>
Alles anzeigen