Я пытаюсь изучить mySQL PDO .. прочитайте учебник после учебника и попытайтесь применить различные способы выполнения простого оператора SELECT.mySQL PDO не может выбрать из таблицы
Вот моя последняя попытка:
<?
include("inc/connPDO.php"); // hostname, username and password and dbName are in here
try {
$dbh = new PDO("mysql:host=$hostname;dbname=$dbName", $username, $password);
/*** echo a message saying we have connected ***/
echo 'Connected to database'; // this outputs appropriately
/*** The SQL SELECT statement ***/
$sql = "SELECT * FROM rofWeapons";
echo '<p>'.$sql;
foreach ($dbh->query($sql) as $row){ // *** line 11 error
print $row['weaponName'] .' - '. $row['weaponType'] . '<br />';
}
/*** close the database connection ***/
$dbh = null;
}
catch(PDOException $e)
{
echo $e->getMessage();
}
?>
Выход следующий:
Connected to database
SELECT * FROM rofWeapons
Warning: Invalid argument supplied for foreach() in /home/path/to/script/script.php on line 11
Я следую учебник .. Еогеасп выглядит хорошо. Почему это недопустимый аргумент?
Когда я ввожу «SELECT * FROM rofWeapons» в запросы mySQL, таблица отлично выглядит.
Немного помогите пожалуйста?
Другой Покушение
Если я пытаюсь PREPARE заявление:
/*** The SQL SELECT statement ***/
$weaponType=1;
$sql = "SELECT * FROM rofWeapons WHERE weaponType=:weaponType";
$stmt = $dbh->prepare($sql); // *** error Line 12 ***
$stmt->bindValue(':weaponType', $weaponType, PDO::PARAM_INT);
$stmt->execute();
$stmt->setFetchMode(PDO::FETCH_ASSOC);
while($row = $stmt->fetch()) {
print $row['weaponName'] .' - '. $row['weaponType'] . '<br />';
}
я не получаю сообщение об ошибке. Ничего.
Это очень неприятно. Что я делаю не так?
Вы не извлечение массива ... –
@ Mr.Alien код является правильным. См. Первый пример здесь http://php.net/manual/en/pdo.query.php –
print_r ($ dbh-> query ($ sql)) Каков результат? –