Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/9: Рейтинг темы: голосов - 9, средняя оценка - 5.00
0 / 0 / 1
Регистрация: 07.08.2013
Сообщений: 47

Подскажите, как присвоить переменную, каждому полю полученному из Mysql?

11.01.2016, 17:44. Показов 2006. Ответов 18
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ситуация такая, информацию из таблицы получается получить, но вот для каждого поля сделать отдельную переменную не получается...
Думал получится так:
$id = $v['id'];
$name = $v['name'];
Но не тут то было... Уже всё пробовал, что в интернете получилось на рыть... extract пробовал одни ошибки появляются... Подскажите пожалуйста как решить проблему?
Вот код:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php 
$db = mysql_connect('localhost','root','pass');
 
mysql_select_db('db_name', $db);
 
$result = mysql_query("SELECT * FROM `table`",$db);
 
while ($row = mysql_fetch_assoc($result)) {
 
  foreach($row as $key => $v) {
echo "$v";
 }
}
    mysql_close($db);
?>
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.01.2016, 17:44
Ответы с готовыми решениями:

Имеется файл .txt с данными, в котором хранятся города и расстояния между ними. Как присвоить каждому городу и числу(расстоянию) свою переменную ?
Как присвоить каждому городу и числу(расстоянию) свою переменную? Вот что находиться в файле:

Как сделать фильтрацию по каждому полю по отдельности, но через одну процедуру ?
Как сделать фильтрацию по каждому полю по отдельности, но через одну процедуру ? Private Sub NameStudCritFltr_txt_Change() Dim...

Как присвоить каждому блоку с анонсом свой ID
Здравствуйте. Подскажите пожалуйста, как присвоить каждому блоку с анонсом свой ID? Cуть вот в чем: В анонсе выводится только...

18
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
11.01.2016, 18:08
Цитата Сообщение от rumiks Посмотреть сообщение
для каждого поля сделать отдельную переменную
а зачем, если не секрет?
0
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,909
11.01.2016, 18:09
Лучший ответ Сообщение было отмечено rumiks как решение

Решение

Не совсем понятно, что вы хотите в итоге получить.

Пример вывода:
PHP
1
2
3
4
5
6
$result = mysql_query('SELECT * FROM `table`', $db) or die(mysql_error());
 
while($row = mysql_fetch_assoc($result))
{
    echo $row['title'] . '<br>'; // Вывод столбца "title" для всех записей
}
1
0 / 0 / 1
Регистрация: 07.08.2013
Сообщений: 47
11.01.2016, 18:44  [ТС]
fanatikus, Jodah, Дело в том, что я хочу сделать категории для сайта, и сортировать их по id, точнее по цифрам, чтобы поменяв значение id чтобы поменяв значение id изменить место положение ссылки... Я только начинаю, и как правильно делать разделы для сайта, даже не знаю.. по этому пробую, как только получится... категорий мне на сайте нужно будет очень много, по этому и думаю как бы максимально лучшим способом это реализовать...
Продвижения в этом деле, идут ну очень медленно)) на каждую маленькую ступеньку уходит по несколько дней, то не получалось получить информацию из базы, то вы водилась только одна строка, а не все... Хорошо что спросил, так бы ковырялся еще пару дней)) Просто я только начал изучать, точнее не просто изучать, а сразу перейти к практике, потому что пару лет назад хотел изучить но чтение такое клонит только в сон))) А вот сейчас вдохновился реализовать идею, надеюсь получится)) Если не сложно подскажите в каком направлении мне плыть? Заранее ОГРОМНОЕ, ОГРОМНОЕ СПАСИБО)))
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
11.01.2016, 18:55
может, просто добавить в таблицу категорий поле sort, и при выборке, сортировать по нему? или я не так понял?
0
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,909
11.01.2016, 19:06
rumiks, как верно сказали выше, создать ещё один столбец под названием "sort" и сортировать по нему. Идентификаторы категорий и вообще чего-либо не должны меняться никогда.

А запрос выглядит так:
SQL
1
2
SELECT * FROM `table` ORDER BY `id` // По возрастанию
SELECT * FROM `table` ORDER BY `id` DESC // По убыванию
1
0 / 0 / 1
Регистрация: 07.08.2013
Сообщений: 47
11.01.2016, 19:23  [ТС]
Jodah, а почему не должны меняться? просто я думал сделать дополнительное поле с кодом для сортировки, например:
001
002 это как первый уровень категории
002/001 это второй уровень
002/001/003 Это третья под категория
Вот так я думаю сделать...
За код большое спасибо!

у меня такая проблемка, если вписываю код:
echo "$row['id']";
Появляется ошибка:
Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in Z:\home\test1.ru\www\33\55.php on line 26
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
11.01.2016, 19:41
Цитата Сообщение от rumiks Посмотреть сообщение
у меня такая проблемка, если вписываю код:
echo "$row['id']";
покажите больше, где вы это вписываете
и почитайте о Nested Sets, может это то, что вам нужно
0
0 / 0 / 1
Регистрация: 07.08.2013
Сообщений: 47
11.01.2016, 20:04  [ТС]
fanatikus,
Вот весь код:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php 
 
/*Подключаемся к БД*/
$db = mysql_connect('localhost','rus','7505');
 
mysql_select_db('rus', $db);
 
/*Делаем запрос к БД*/
$result = mysql_query("SELECT id, name, urlns FROM `cat`",$db);
 
/*Преобразовываем результат в массив*/
while ($row = mysql_fetch_assoc($result)) {
 
//Без строки  foreach выводит только значения name, 
//хотя в ней еще id и urlns....
  foreach($row as $key => $v) {
 
echo "$v['id']"; //Если вставить эту строчку то ошибка
 
//Если поставить просто:
echo "$v";//выводится вся таблица
//Но вот id и name, отдельно получить, не получается...
 }
 
}
    mysql_close($db);
?>
Спасибо за совет, сейчас посмотрю!!!
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
11.01.2016, 20:12
Лучший ответ Сообщение было отмечено rumiks как решение

Решение

зачем пропускать через foreach, если и так ясно что в $row 3 значения id,name,urlns
можно просто вывести
PHP
1
2
3
echo $row['id'];
echo $row['name'];
echo $row['urlns'];
а у вас получается в $key ключ(id,name,urlns), а в $v значение.
естественно вывод $v['id'] выдаст ошибку
1
0 / 0 / 1
Регистрация: 07.08.2013
Сообщений: 47
12.01.2016, 06:39  [ТС]
fanatikus, Большое спасибо!!! наконец то получилось))
Еще спасибо за Nested Sets, сейчас читаю информацию по этому поводу!)

Добавлено через 10 часов 10 минут
fanatikus, Еще один вопрос, Как можно результаты поместить в переменную таким образом пробовал: $id = ($row['id']);
не чего не выходит..
Заранее спасибо)
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
12.01.2016, 16:24
Цитата Сообщение от rumiks Посмотреть сообщение
таким образом пробовал: $id = ($row['id']);
не чего не выходит..
почему не выходит? просто если это делать в цикле то в $id будет последнее значение из выборки можно так
PHP
1
2
$id = array();//перед циклом
$id[] = $row['id']; //в цикле
только не понятно, зачем.
1
0 / 0 / 1
Регистрация: 07.08.2013
Сообщений: 47
12.01.2016, 16:51  [ТС]
fanatikus, Сделал, только сейчас $id выводит: Array ....
Просто мне нужно значение использовать во многих местах где есть ковычки, а вот $row['id'] выдаёт ошибку если вставить между ковычек... и с переменными проще чем с массивами.. Хотя надо учиться ими пользоваться, так как без них ничего не получится... Похоже я мыслю не так как настоящие программисты, видимо из-за отсутствия знаний в этой области.... Но надеюсь всё таки смогу понять как правильно создавать скрипты...
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
12.01.2016, 16:56
Цитата Сообщение от rumiks Посмотреть сообщение
а вот $row['id'] выдаёт ошибку если вставить между ковычек
покажите где

Добавлено через 1 минуту
Цитата Сообщение от rumiks Посмотреть сообщение
$id выводит: Array .
естественно, в массиве $id будут все id результатов выборки.
0
0 / 0 / 1
Регистрация: 07.08.2013
Сообщений: 47
12.01.2016, 17:12  [ТС]
fanatikus, Даже просто вывести на экран echo ".$row['id']."; выдаёт ошибку...

Как бы сделать, чтобы при размещении $id выводилась информация содержащая в этом массиве?
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
12.01.2016, 17:17
Цитата Сообщение от rumiks Посмотреть сообщение
echo ".$row['id']."; выдаёт ошибку...
а зачем точки перед и после переменной? в данном случае они не нужны. а вообще, я не понимаю, что вам нужно
0
0 / 0 / 1
Регистрация: 07.08.2013
Сообщений: 47
12.01.2016, 17:44  [ТС]
fanatikus, Без точек такой же результат, просто увидел в примере что точки ставятся, думал что не просто так echo '<td>' . $row['name'] . '</td>';

Как уже говорил, хочу сделать удобное добавление и редактирование категорий, сортировка по цифрам... Добавление информации в базу данных сделать получилось, сейчас в процессе редактирование и в дальнейшем удобное размещение информации на странице...
Дело в том что, для того чтобы удобно было менять место положения ссылок, я хочу сделать удобное редактирование id каждой строки, точнее не совсем id, но пока на нём эксперементирую сортировку и пытаюсь внести изменения...
сейчас получилось сделать чтобы в каждой строке было своё поле для редактирования id и кнопка на каждом поле, но вот как обработать его дальше пока здесь вышла загвоздка..
Вот код:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
while ($row = mysql_fetch_assoc($result)) {
echo '<form action="" name="' . $row['id'] . '" method="post">';
    echo '<tr>';
      echo '<td>' . $row['id'] .' <p><input type="text" name="' . $row['id'] . '"></p></td>';
      echo '<td><input type="submit" name="' . $row['id'] . '" value="Сохранить"></td>';
      echo '<td>' . $row['name'] . '</td>';
      echo '<td>' . $row['urlns'] . '</td>';
      echo '</tr>';
$id = ($_POST[]);//А вот как обрабатывать его, я даже не знаю... надеюсь подскажите...
}
    echo '</tbody>';
   echo '</table>';
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
12.01.2016, 18:23
Цитата Сообщение от rumiks Посмотреть сообщение
просто увидел в примере что точки ставятся
а поискать в инете, для чего эти точки, слабо?
может для начала, усвоить синтаксис изучаемого языка
0
0 / 0 / 1
Регистрация: 07.08.2013
Сообщений: 47
12.01.2016, 18:48  [ТС]
fanatikus, трудно объяснить поиску чего ты хочешь, если бы написал "Точки между массивами" Результата не дало бы... Но за подсказку в каком направлении идти спасибо! Надеюсь сможете подсказать, какие материалы стоит поучить, чтобы идти в нужном направлении...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
12.01.2016, 18:48
Помогаю со студенческими работами здесь

Как присвоить значение полю
Доброго времени суток уважаемые форумчане. Помогите разобраться. Мне необходимо присвоить полю (в таблице &quot;Поле1&quot;), числовое...

Как присвоить каждому GridDataRow в качестве поля список ?
У меня присваивает только одно значение строке, я хотел бы, чтоб на каждой строке был выпадающий список. Я как бы заполняю DataGrid ...

Как в ComboBox каждому элементу присвоить собственный шрифт?
Как в ComboBox каждому элементу присвоить собственный шрифт (как в Ворде)? Уже гуглить пробовал и ничего толком не нашел. Вроде простая...

Как сделать чтоб каждому сотруднику присвоить пароль
как сделать чтоб каждому сотруднику(пользователю) присвоить пароль? в этой базе что то намудрено так и не разобрался...:)

Как присвоить каждому из браузеров отдельный css стиль?
Здравствуйте, нашел код, который позволяет использовать разный css для браузеров версий ПК (хром, мозила, опера, сафари и IE), но не...


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

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит: токи, напряжения и их 1 и 2 производные при t = 0;. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru