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]   

> Без описания
ufaclub
Отправлено: 12 Сентября, 2015 - 21:38:51
Post Id


Новичок


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


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




скрипт выводит 10 строк.
первое число это номер квартиры. а через дефис - ее порядковый номер.

PHP:
скопировать код в буфер обмена
  1. $query = "SELECT * FROM cms_build  WHERE title = 7 and  flour = 7 Order by number  ASC";
  2. $res = mysql_query( $query );
  3. $i=0;
  4. while ( $item = mysql_fetch_array( $res ) )
  5. {
  6. echo $item['number']';
  7. echo '-';
  8. echo ++$i;
  9. }


получаем



Цитата:
33-1
34-2
35-3
36-4
37-5
38-6
39-7
40-8
177-9
178-10



мне нужно как то по переменной $number в которой содержит номер квартиры вывести ее порядковый номер (тот что через дефис) использую тот массив что создает выше скрипт

помогите пожалуйста составить скрипт. определения порядкового номера. например в переменную $kv

(Отредактировано автором: 12 Сентября, 2015 - 21:45:36)

 
 Top
Ts.Saltan
Отправлено: 13 Сентября, 2015 - 14:20:00
Post Id



Посетитель


Покинул форум
Сообщений всего: 384
Дата рег-ции: Дек. 2013  
Откуда: Belarus


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




PHP:
скопировать код в буфер обмена
  1. <?
  2. $i = 0;
  3. $flats = [];
  4. while ( $item = mysql_fetch_array( $res ) ){
  5.         $flats[$item['number']] = ++$i;
  6. }
  7.  
  8. // Получаем порядковый номер
  9. $number = 40;
  10. echo $flats[$number]; // 8
 
 Top
ufaclub
Отправлено: 13 Сентября, 2015 - 16:11:01
Post Id


Новичок


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


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




вот так получаю массив

PHP:
скопировать код в буфер обмена
  1. $res = mysql_query("SELECT * FROM cms_build  WHERE title = 7 and  flour = 7 Order by number  ASC");
  2. $array=array();
  3. $i=1;
  4. while($item=mysql_fetch_array($res)) {
  5.     $array[$item['number']]=$i;
  6.     ++$i;
  7. }
  8. print_r($array);


Array ( [17] => 1 [18] => 2 [19] => 3 [20] => 4 [21] => 5 [22] => 6 [23] => 7 [24] => 8 [169] => 9 [170] => 10 [171] => 11 [172] => 12 [254] => 13 [255] => 14 [256] => 15 [257] => 16 [258] => 17 [259] => 18 [260] => 19 [424] => 20 [425] => 21 [426] => 22 [427] => 23 [428] => 24 [429] => 25 [430] => 26 [431] => 27 )



т.е массив $array содержит правильную информацию.

т.е 17 квартира имеет номер планировки 1 [17] => 1

единственное что не могу доделать дописать скрипт чтобы он использовал переменную $number в которой и есть номер квартиры (тот что в []) и в результате выводит то значение что после =>

ну и значение в переменную $kvplan записывалось

(Отредактировано автором: 13 Сентября, 2015 - 16:11:29)

 
 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