Надо получить записи из таблицы в массив. Как лучше?

evshi

Новичок
Надо получить записи из таблицы в массив. Как лучше?

Здравствуйте.

Надо получить записи из таблицы в массив. Можно ли это сделать через ф-ю а-ля mysql_fetch_array или надо получать result через mysql_fetch_array, а потом в цикле накапливать?
 

evshi

Новичок
В описании как раз говорится, что возвращает массив. Но у меня не получается. Вот пример:

$fid = mysql_fetch_array(mysql_query("SELECT `edicname` FROM `rubric`"));
print_r($fid);

Выводится первая запись из таблицы... (Array ( [0] => dal [edicname] => dal ) )

Хотя только что попробовал вывести через while, выводится все. Странно, почему тогда через print_r только один элемент показывает?
 

Фанат

oncle terrible
Команда форума
iceman
по-моему, две твоих последних строчки противоречат друг другу.
 

evshi

Новичок
Автор оригинала: *****
какой массив?
Description: Returns an array that corresponds to the fetched row and moves the internal data pointer ahead.

что именно выводится через while?
Все те же записи, которые выводятся, если выполнить запрос SELECT `edicname` FROM `rubric`.

-~{}~ 19.08.09 22:32:

Автор оригинала: iceman
evshi
зачем тебе полный массив данных из бд?
Мне надо проверить, является ли пришедший из GET элемент одним из элементов массива в БД. Можно в цикле перебирать, но данный запрос будет выполняться каждый раз при загрузке страницы, а при большом посещении - это не очень хорошо, хотя, наверное, и не очень плохо, но все же хочется сделать по уму, а не "без разницы. делай, как получится.":)
 

Фанат

oncle terrible
Команда форума
охохо. какой сюжет.
такого количества косяков на квадратный сантиметр я давно не видел :)
 

Adelf

Administrator
Команда форума
познакомься получше с языком SQL. проще все станет.
 

iceman

говнокодер
Description: Returns an array that corresponds to the fetched row and moves the internal data pointer ahead.
правильно, возвращает массив для текущего результирующего ряда, после чего передвигает внутренний указатель на следующий ряд...
 

Фанат

oncle terrible
Команда форума
evshi
Если получать из базы все записи и потом по одной сравнивать, то для этого не нужна СУБД. Можно было остаться на текстовых файлах.
А если ты используешь базу данных, то то она все это умеет делать сама.
кроме операторов SELECT и FROM в SQL есть оператор WHERE
 

evshi

Новичок
Автор оригинала: *****
evshi
Если получать из базы все записи и потом по одной сравнивать, то для этого не нужна СУБД. Можно было остаться на текстовых файлах.
А если ты используешь базу данных, то то она все это умеет делать сама.
кроме операторов SELECT и FROM в SQL есть оператор WHERE
Озарило:eek:
 

Фанат

oncle terrible
Команда форума
Дальше попробуй разобраться с тем, что такое ЦИКЛ.
Чтобы не возникало вопросов, почему получает ОДНУ строку, а выводит, почему-то - все
 
Сверху