$ result нельзя использовать после mysql_fetch_assoc ($ result), почему - PullRequest
1 голос
/ 21 апреля 2011

я получаю данные из sql, затем запускаюсь, пока ($ list = mysql_fetch_assoc ($ result)) {...}

, затем я пытаюсь сделать то же самое, но результат, который ничего не дает, пустой, используетmysql_fetch_assoc () очищает переменную $ request?

Ответы [ 3 ]

2 голосов
/ 21 апреля 2011

Вы достигли конца $ resurce, используя цикл while. Чтобы решить эту проблему, переместите указатель назад в положение 0, когда вы хотите снова использовать свой ресурс ... для получения дополнительной информации посмотрите на функцию mysql_data_seek () .

2 голосов
/ 21 апреля 2011

Функция сохраняет счетчик, поэтому, конечно, вы не сможете продолжать использовать его, когда он дойдет до конца. Есть ли какая-то особая причина, чтобы повторить это дважды? В любом случае:

mysql_data_seek($request, 0);

Это то, что вам нужно перед вторым циклом.

0 голосов
/ 21 апреля 2011

mysql_fetch_assoc сам не знает, когда вы находитесь, и не вызываете его в цикле while.Он волшебным образом не сбрасывается в начало набора результатов при использовании его в отдельном цикле.

Сбрасывает его в начало набора результатов с помощью mysql_data_seek, как только вы достигли конца и хотите перейтивернуться к началу ... или, в идеале, избавиться от необходимости повторять результаты дважды.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...