Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 16.09.2015
Сообщений: 34
1

Функция mysql_fetch_assoc обрабатывает только первую строку

24.08.2017, 12:32. Просмотров 1474. Ответов 11
Метки нет (Все метки)

Здравствуйте. Может кто поможет, уже всю голову поломал. Есть запрос к базе данных:
Код
 
$query = mysql_query("SELECT поле1, поле2, поле3....., поле10 FROM таблица WHERE 'date' = $дата");
при обработке запроса в phpMyAdmin запрос проходит нормально, показывает как и положено нужное количество строк, допустим в первой строке поле1=1, поле2=1, поле3=0, поле4=0,во второй строке поле1=0, поле2=0, поле3=1, поле4=1.
При обработке результата запроса:
Код
$res = mysql_fetch_assoc($query);
print_r ('$res');
Почему-то функция mysql_fetch_assoc обрабатывает только первую строку, как сделать чтоб обрабатывались все строки?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.08.2017, 12:32
Ответы с готовыми решениями:

Функция fopen() для большого текстового файла читает только первую строку
Есть текстовой файл 4.5 мб, нужно его открыть для чтения из него строк. FILE *f =...

Функция ЕСЛИ обрабатывает только две столбца
=ЕСЛИ(G3<=10;B4;ЕСЛИ(G3>=11;C4;ЕСЛИ(G3<=20;C4;ЕСЛИ(G3>=21;D4 ;ЕСЛИ(G3<=30;D4...

Циклы: вывести в окно консоли в первую строку только гласные из заданной строки, а во вторую - только согласные
задана строка s="дроваыеши". Используя строку glas="аоеуиы", состоящую гласных букв, вывести в...

Дана строка. Создать новую строку, все буквы которой входят в первую строку только один раз
Дана строка. Создать новую строку, все буквы которого входят в первую строку только один раз....

11
760 / 318 / 155
Регистрация: 26.05.2016
Сообщений: 2,108
24.08.2017, 12:40 2
в цикле вывести
0
Эксперт PHP
3503 / 2944 / 1238
Регистрация: 01.08.2012
Сообщений: 10,144
24.08.2017, 13:48 3
dobrogelatel, читайте доку, там есть пример вывода всех строк.
0
0 / 0 / 0
Регистрация: 16.09.2015
Сообщений: 34
24.08.2017, 14:04  [ТС] 4
пробовал выводить через foreach привожу кусок кода:
Код
$time_arr = mysql_fetch_assoc($result) or die(mysql_error());
		foreach ($time_arr as $key => $value){
			if ($value != 1)
			{
				
			}
			else 
			{
				if ($key == '00-01'){ $d0001 = 'checked disabled';}
				if ($key == '01-02'){ $d0102 = 'checked disabled';}
				if ($key == '02-03'){ $d0203 = 'checked disabled';}
				if ($key == '03-04'){ $d0304 = 'checked disabled';}
				if ($key == '04-05'){ $d0405 = 'checked disabled';}
				if ($key == '05-06'){ $d0506 = 'checked disabled';}
				if ($key == '06-07'){ $d0607 = 'checked disabled';}
				if ($key == '07-08'){ $d0708 = 'checked disabled';}
				if ($key == '08-09'){ $d0809 = 'checked disabled';}
				if ($key == '09-10'){ $d0910 = 'checked disabled';}
Суть в том что человек зашел, выбрал день, выбрал через чекбоксы необходимое время, все передалось в базу. Заходит следующий выбирает тот же день, и ему должно показаться, если данное время уже кем-то занято, то чекбоксы включены и не активны. Проблема в том, что foreach проходит только по первой строке из запроса, а следующую не берет, как реализовать задуманноечтоб цикл проходил по всем строкам извыборки?
0
760 / 318 / 155
Регистрация: 26.05.2016
Сообщений: 2,108
24.08.2017, 14:10 5
Цитата Сообщение от dobrogelatel Посмотреть сообщение
выбрал через чекбоксы необходимое время, все передалось в базу.
и вы это проверяйте через if ($value != 1)???
0
0 / 0 / 0
Регистрация: 16.09.2015
Сообщений: 34
24.08.2017, 14:24  [ТС] 6
только учусь, посоветуйте как лучше....
0
760 / 318 / 155
Регистрация: 26.05.2016
Сообщений: 2,108
24.08.2017, 14:38 7
Цитата Сообщение от dobrogelatel Посмотреть сообщение
только учусь, посоветуйте как лучше....
Вообще то я просто спросил))
$value != 1 - из таблицы берется?
То есть пользователь выбрал чекбокс, ему присвоилось 1?
0
0 / 0 / 0
Регистрация: 16.09.2015
Сообщений: 34
24.08.2017, 14:59  [ТС] 8
проверяется значение поля в базе, если 1, то тогда чекбокс отмечен и неактивен
0
760 / 318 / 155
Регистрация: 26.05.2016
Сообщений: 2,108
24.08.2017, 15:17 9
в $key = у вас название ячеек -?
может целесообразнее все сделаьть в $value?
и пройтись циклом while
0
0 / 0 / 0
Регистрация: 16.09.2015
Сообщений: 34
24.08.2017, 15:34  [ТС] 10
да, в $key названия ячеек, просто $value пройтись не судьба, у меня идет связка $key => $value у меня куча чекбоксов укаждого свое имя,имя чекбокса соответствует имени ячейки в БД, поэтому идет проверка если по данной ячейке 1, то чекбокс с данным именем должен быть включен и не активен, но он пробегается только по первой строке....
0
760 / 318 / 155
Регистрация: 26.05.2016
Сообщений: 2,108
24.08.2017, 16:04 11
Цитата Сообщение от dobrogelatel Посмотреть сообщение
если по данной ячейке 1,
покажите код полностью
или где вывод $d0001.... данных переменных
0
0 / 0 / 0
Регистрация: 16.09.2015
Сообщений: 34
25.08.2017, 00:50  [ТС] 12
все проблема решена. Спасибо всем за участие. Я цикл foreach поместил внутрь while и все заработало.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.08.2017, 00:50

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Почему считает только первую строку?
вот условия"Создать файл с текстом, прочитать, подсчитать в тексте количество знаков препинания и...

Mysqli_query выводит только первую строку
Добрый день. Давно не работал с mysql. Подскажите что не так $connect =...

Mysql_fetch_array выводит только первую строку из БД
Ребята, есть код: <?php session_start(); require_once 'config.php'; $login=$_POST;...

Ifstream считывает только первую строку
я написал короткую программу, с водом имена в файл и выводом. проблема заключается в том что...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.