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 :: Порядковый номер в таблице данных

 PHP.SU

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


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

> Без описания
Алтенрион
Отправлено: 19 Октября, 2012 - 00:52:48
Post Id



Частый гость


Покинул форум
Сообщений всего: 180
Дата рег-ции: Сент. 2012  
Откуда: Москва, Россия


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




Подскажите новичку, как добавить столбец, с автоматической нумерацией данных по порядку?...

Цель : сделать столбец, в котором выводился бы реальный порядковый номер на текущий момент, и если удалить данные по середине списка, то номер пересчитается и опять будет актуальным.

Id использован, и он как обычно не изменяется и всегда уникальный. Закатив глазки
 
 Top
EuGen Администратор
Отправлено: 19 Октября, 2012 - 09:09:00
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


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




Алтенрион
Строго "сделать" - никак. Только объявить колонку и поддерживать сохранение порядке на уровне приложения (или триггеров в СУБД, но это, мне кажется, уже чересчур).
Стало быть, Вам нужно будет самостоятельно пересчитывать значения этой колонки после изменения.
Если честно, не очень понятно, чем первичный ключ (id в Вашем случае) не устроил.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Алтенрион
Отправлено: 19 Октября, 2012 - 20:56:12
Post Id



Частый гость


Покинул форум
Сообщений всего: 180
Дата рег-ции: Сент. 2012  
Откуда: Москва, Россия


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




Данные из таблицы выводятся в веб интерфейс, для формальной отчетности самому себе, и быстрого просмотра обновлений.(чтобы не лазить постоянно в базу) так вот хотелось бы иметь каким либо образом реализованный счетчик, который бы нумеровал по порядку все днные, и пересчитывался при удалении из базы каких либо строк, чтобы счетчик не был привязан к данным как id.

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

(Отредактировано автором: 19 Октября, 2012 - 21:03:32)

 
 Top
KingStar
Отправлено: 19 Октября, 2012 - 21:04:21
Post Id



Участник


Покинул форум
Сообщений всего: 1889
Дата рег-ции: Авг. 2011  
Откуда: Беларусь


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




если я правильно понял, данные в массиве, и выводятся в цикле

PHP:
скопировать код в буфер обмена
  1. $num = 1;
  2. foreach($array as $data)
  3. {
  4.      echo $num; // номер
  5.      echo $data['name'];
  6.  
  7.      ++$num;
  8. }


-----
То что программа работает, не означает что она написана правильно!
 
 Top
Алтенрион
Отправлено: 20 Октября, 2012 - 14:47:04
Post Id



Частый гость


Покинул форум
Сообщений всего: 180
Дата рег-ции: Сент. 2012  
Откуда: Москва, Россия


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




Если честно, то выводится все примерно так:


Цитата:
$result=mysql_query('SELECT * FROM `users` ORDER BY id'); // делаем выборку из таблицы
while($row=mysql_fetch_array($result)) // берем результаты из каждой строки

{ echo '<p> <b>Дата = </b>'.$row['create_date'].'&nbsp;'.'&nbsp;'.'&nbsp;'.'&nbsp;'.'&nbsp;'.'&nbsp;'.
'<b>ФИО: </b>'.$row['sername'].'&nbsp;'.$row['name'].'&nbsp;'.$row['firstname'].'&nbsp;'.'<br>'.'<br>'.
'<b> Дата рождения: </b>'.'&nbsp;'.$row['date'].'&nbsp;'.'&nbsp;'.'&nbsp;'.'&nbsp;'.'<b> email: </b>'.'&nbsp;'.$row['email'].'&nbsp;'.'&nbsp;'.'&nbsp;'.'&nbsp;<br>'.
'<b> Телефон: </b>'.'&nbsp;'.$row['telephone']. '<br>'.
'<b> Место работы/учебы: </b>'.'&nbsp;'.$row['position'].'&nbsp;'.'<br>'.
'<b> Статус: </b>'.'&nbsp;'.$row['who']. '&nbsp;'.'<br>'.
'<b>Интерсы: </b>'.'&nbsp;'.$row['interests'].'<br><br>'.
'<b> Мероприятия: </b>'.'&nbsp;'.$row['gt'].'</p><br><br>'; // выводим данные
}
?>




п.с.: Много где можно убрать лишнее сложение и объединить html теги, и вообще грубовато написано, - знаю. Повторюсь, написано для формальной отчетности самому себе.... Было бы здорово сделать компактнее , но главное сейчас это добавить нумерацию по порядку номером, не привязным к самим данным.

(Отредактировано автором: 20 Октября, 2012 - 14:50:38)

 
 Top
caballero
Отправлено: 20 Октября, 2012 - 15:11:21
Post Id


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


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


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




ну так воткни счетчик и нумеруй - как в примере выше
какая проблемма собственно


-----
Бесплатная система складского учета с открытым кодом https://zippy[dot]com[dot]ua/zstore
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« SQL и Архитектура БД »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB