Вывод запроса с нулевым значением - PullRequest
0 голосов
/ 05 мая 2009

Я пытаюсь пролистать список файлов, где поле ARTICLE_NO - это определенное число. На данный момент у меня есть таблица файлов с колонками ARTICLE_NO, FILENAME и USERNAME. Существует одна запись со значениями 1, x.txt и user соответственно. $ pk присваивается 1 в моем php-коде. Однако следующий код выдает только NULL, и я не уверен, почему.

$filesQuery = "SELECT FILENAME FROM FILES WHERE ARTICLE_NO = ?"; 

if ($getFiles = $con->prepare($filesQuery)) {
    $getFiles->bind_param("s", $pk);
    $getFiles->execute();
    $getFiles->bind_result($FILENAME);
    $files = array();

    while ($getFiles->fetch()) {
         $filenames = array(
         'FILENAME' => $FILENAME,
          );
$files[] = $filenames;
        }
}
var_dump($files['FILENAME']);
    foreach ($files as $filenames)
    {
    $filesList = '<p><a href="./files/'. $files['FILENAME'] .'">'. $files['FILENAME'] .'</a>' . "\n"; 
    }

1 Ответ

0 голосов
/ 05 мая 2009

Вы обращаетесь к массиву, который вы создали неправильно. При работе с 1 строкой результата из базы данных, $ files - это массив, содержащий 1 другой массив, который выглядит следующим образом:

$files = array ( 0 => array ( 'FILENAME' => 'x.txt' ) );

Итак, чтобы получить доступ к значению в поле FILENAME, вам необходимо использовать:

var_dump($files[0]['FILENAME']);

или

foreach($files as $file_data) { echo $file_data['FILENAME']; } 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...