Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Имя столбца таблицы mysql

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Имя столбца результата запроса
ironkiss
Отправлено: 04 Сентября, 2014 - 19:11:01
Post Id


Новичок


Покинул форум
Сообщений всего: 8
Дата рег-ции: Сент. 2012  


Помог: 0 раз(а)




Доброго дня всем!
Очень трудно объясниться, а ещё труднее найти. Уже начинает дёргаться глаз...

Есть таблица в mysql под именем tbl в ней 15 столбцов с именами:

col1, num1, data1
col2, num2, data2
col3, num3, data3

и так далее, т.е. своего рода ID имени.

Отправляю через php запрос в mysql, нахожу нужную мне информацию и мне нужно узнать это самое ID имени столбца, в котором был найден запрос.

Помогите...

(Отредактировано автором: 04 Сентября, 2014 - 19:11:36)

 
 Top
Мелкий Супермодератор
Отправлено: 04 Сентября, 2014 - 19:37:50
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




Сначала наделают костылей, потом думают "и что мне теперь делать?"


-----
PostgreSQL DBA
 
 Top
RickMan
Отправлено: 04 Сентября, 2014 - 19:38:42
Post Id


Участник


Покинул форум
Сообщений всего: 1033
Дата рег-ции: Май 2012  


Помог: 30 раз(а)




ID именти столбца? Вы хоть сами поняли что сказали? Думаю легче будет показать пример и нормальную структуру таблицы.
(Добавление)
Да и запрос показать не мешало бы
 
 Top
Viper
Отправлено: 04 Сентября, 2014 - 19:44:45
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




Мелкий пишет:
Сначала наделают костылей, потом думают "и что мне теперь делать?"

Больше смахивает на знатный говнокод Улыбка


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
ironkiss
Отправлено: 04 Сентября, 2014 - 23:43:19
Post Id


Новичок


Покинул форум
Сообщений всего: 8
Дата рег-ции: Сент. 2012  


Помог: 0 раз(а)




Мелкий пишет:
Сначала наделают костылей
Ну если бы умений и знаний хватало я бы, наверное, не писал бы в тему для новичков, вроде это логично.

RickMan пишет:
ID именти столбца? Вы хоть сами поняли что сказали?
«Циферка в имени столбца» - так корректнее? Я же вроде написал, что своего рода.

RickMan пишет:
Да и запрос показать не мешало бы

В запросе ни чего не обычного:
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT * FROM packeter WHERE num1 LIKE '".$index."'


а структура такая:
CODE (SQL):
скопировать код в буфер обмена
  1. CREATE TABLE `tbl` (
  2.   `id` int(11) NOT NULL AUTO_INCREMENT,
  3.   `num1` text NOT NULL,
  4.   `data1` text NOT NULL,
  5.   `col1` text NOT NULL,
  6.   `num2` text NOT NULL,
  7.   `data2` text NOT NULL,
  8.   `col2` text NOT NULL,
  9.   PRIMARY KEY (`id`),
  10. ) ENGINE=MyISAM AUTO_INCREMENT=2195 /*!40101 DEFAULT CHARSET=utf8 */;
  11.  
  12. INSERT INTO `tbl` VALUES
  13. (1, '002355648-int', '2014-03-02', 'описание', '002355649-int', '2014-03-02', 'описание'),
  14. (2, '002355656-int', '2014-03-08', 'описание', '002355844-int', '2014-03-27', 'описание');


Мне нужно по запросу, например, «002355648-int» чтобы показывало и дату и описание. Может быть структура и кривая, но она делалась до меня и тогда этой задачи не было. Делалась так, чтобы по запросу ID строки выводить все записи. А сейчас задачи немного поменялись.

Сейчас насчитывается порядка 800 строк и менять структуру это же ппц...

(Отредактировано автором: 04 Сентября, 2014 - 23:44:53)

 
 Top
Viper
Отправлено: 05 Сентября, 2014 - 08:43:38
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




ironkiss пишет:
Сейчас насчитывается порядка 800 строк и менять структуру это же ппц...
как раз таки 800 строк это фигня. Вот когда их будет за тысяч 100-200 тогда будет ОЙ!


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
Sail
Отправлено: 05 Сентября, 2014 - 08:57:14
Post Id



Участник


Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014  


Помог: 57 раз(а)




Viper пишет:
Мне нужно по запросу, например, «002355648-int» чтобы показывало и дату и описание

Два варианта, на выбор:
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT * FROM `tbl` WHERE `num1` = '002355648-int' OR `num2` = '002355648-int';
  2.  
  3. SELECT `data1` AS `data0`, `col1` AS `col0` FROM `tbl` WHERE `num1` = '002355648-int'
  4. UNION
  5. SELECT `data2` AS `data0`, `col2` AS `col0` FROM `tbl` WHERE `num2` = '002355648-int';

Что касается
Viper пишет:
и менять структуру это же ппц...
, то лучше, однако, поменять...
Перемещение/копирование данных в другую, нормализованную таблицу выполняется одним не сложным скриптом...
Самое сложное - отследить и исправить в проекте все участки кода, обращающиеся к этой таблице и обрабатывающие полученные данные Улыбка
 
 Top
ironkiss
Отправлено: 05 Сентября, 2014 - 14:42:53
Post Id


Новичок


Покинул форум
Сообщений всего: 8
Дата рег-ции: Сент. 2012  


Помог: 0 раз(а)




Sail пишет:
Самое сложное - отследить и исправить в проекте все участки кода, обращающиеся к этой таблице и обрабатывающие полученные данные Улыбка

Всё же я наверное не так объяснил.

В общем с 2009 года ведётся база данных по актам, 1 запись состоит из списка актов за неделю, т.е приоритет идёт на номер недели. Введя, допустим 20-ю неделю 2013 года, можно увидеть всё акты, которые были сделаны.
ID строки соответствует недели и так разбито всё по годам. Каждый новый год - новая таблица.

Все коды на сервере настроены и всё работает без проблем. Но сейчас если ввести в поиск номер акта, показывает всю запись списком за всю неделю в которой был занесён этот акт. И если нужно найти дату составления акта, приходится весь список просматривать и искать запись. Это не сложно, но занимает время. Хотелось бы упростить немного работу и выводить только номер акта, дату и описание. Ни чего умнее, чем получить имя столбца, отсеяв название столба оставив только цифру в имени, вывести остальные 2 столбца.

Меняя структуру, придётся переписывать весь скрипт, потому что он не только выводит список актов за неделю, там много чего ещё и вот как раз в этом месте начинается попандос
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB