У меня есть данные в базе данных mysql. База данных каждый раз состоит из другого количества строк.Выберите данные из базы данных с PDO
Пример моего стола будет:
id team1 team2 home away tip
----------------------------------
12 xxx yyy zzz kkk
43 xxx yyy zzz kkk
. . . . .
. . . . .
Так что мне нужно сделать, это цикл по каждой строке таблицы и быть в состоянии получить данные из этой строки, поэтому я могу создать кончик.
Я немного смущен тем, как я мог это сделать с помощью pdo.
Что я пробовал до сих пор пытаются получить столбец данных, как это:
$stmt = $db->prepare("SELECT id FROM tablename");
$stmt->execute();
$result=$stmt->fetchColumn();
echo $result[0];
Но даже это, что я бы ожидать, чтобы вернуть мне первый идентификатор, который 12 в этом случае , просто возвращает меня 1. Любые идеи здесь?
'echo $ result [0];' возвращает первый символ скалярного '$ result', поскольку вы используете' -> fetchColumn' только для получения 1 колонки, а не всей строки. Итак, либо 'echo $ result', либо использовать' $ result = $ stmt-> fetch(); '. В настоящее время то, что происходит, можно сравнить с этим: '$ result =" 12 "; echo $ result [0]; '(который, как вы можете проверить, действительно эхо« 1 ». – Wrikken
' $ result = $ stmt-> fetch (PDO :: FETCH_ASSOC); if ($ result) {echo $ result ['id'];} 'должен работать.' $ result' будет либо иметь значение boolean FALSE, либо массив, поэтому простая проверка позволит избежать нежелательных ошибок – MonkeyZeus
@wrikken, когда я использую $ result = $ stmt-> fetch() , действительно, работает, но когда я пытаюсь выполнить эхо $ result [1], я получаю сообщение об ошибке. Как я могу получить весь столбец в массиве, чтобы я мог просмотреть результаты? – user3287726