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 :: Помогите найти id

 PHP.SU

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


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

> Описание: Как найти id строки?
andreya
Отправлено: 12 Июня, 2011 - 15:23:33
Post Id


Новичок


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


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




Есть такой цикл которые данные с базы вытягивает. Получается две колонки с заполнеными из БД полями а в третьей колонке кнопка (отправить).
Вопрос:
Как найти id элемента (строки полностью), что бы можно было с ней работать, допустим ее сохранить в сессию по нажатию той кнопки. Спасибо заранее. Жду ответов.
<?php
do {
printf ("<table class='tables' border='1' cellpadding='0' cellspacing='0'>
<tr>
<td>%s</td>
<td>%s</td>
<td>%s</td>
</tr>

</table>", $myrow["name"], $myrow["dlina"], $myrow["price"] );
}

while ($myrow = mysql_fetch_array($tovar));

?>

(Отредактировано автором: 12 Июня, 2011 - 15:27:58)

 
 Top
Давит
Отправлено: 12 Июня, 2011 - 15:36:07
Post Id



Частый гость


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


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




 
 Top
andreya
Отправлено: 12 Июня, 2011 - 15:38:53
Post Id


Новичок


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


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




Давит пишет:

Спасибо огромное. А можно еще вопрос? Как кнопку которая в последней колонке выводиться заставить выводить именно строку эту которую нашли?
Спасибо!!!!!!!
 
 Top
Давит
Отправлено: 12 Июня, 2011 - 15:48:04
Post Id



Частый гость


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


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




PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. do {
  3. printf ("<table class='tables' border='1' cellpadding='0' cellspacing='0'>
  4. <tr>
  5. <td>%s</td>
  6. <td>%s</td>
  7. <td>%s</td>
  8. <td>%s</td>
  9. </tr>
  10.  
  11. </table>", $myrow["name"], $myrow["dlina"], $myrow["price"],$myrow["id"] );
  12. }
  13.  
  14. while ($myrow = mysql_fetch_array($tovar));
  15.  
  16. ?>

(Отредактировано автором: 12 Июня, 2011 - 15:48:58)

 
 Top
andreya
Отправлено: 12 Июня, 2011 - 15:53:59
Post Id


Новичок


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


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




Да но, как на кнопку сделать что бы она при нажатии хватала это id и что то с ним делала?
Функцию обработки как на кнопку поставить?
Подскажите пожалуйста!!!!
 
 Top
Давит
Отправлено: 12 Июня, 2011 - 15:58:03
Post Id



Частый гость


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


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




andreya
уточните что именно нужно?,

(Отредактировано автором: 12 Июня, 2011 - 15:58:24)

 
 Top
andreya
Отправлено: 12 Июня, 2011 - 16:04:33
Post Id


Новичок


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


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




Спасибо за то что возитесь со мной!!!
В этой таблице в первых двух колонках информация (из базы прямо код html) вытаскивается.
В третьей колонке (опять же unput html кнопка) подставляется.
Хотелось бы что бы при нажатии на эту кнопку что то происходило с id (со строкой полностью без кнопки) допустим оно сохранялось в сессии либо приплюсовывалось к переменной.
То есть при нажатии кнопки php понимает какой именно id строки был нажат и дает с ним работать. И мне непонятно куда этот функцию нажатия кнопки вставить в код.
 
 Top
DeepVarvar Супермодератор
Отправлено: 12 Июня, 2011 - 16:07:06
Post Id



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


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


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




andreya если в таблице нет ни одной записи ваш php-код сгенерирует Warning. переделайте цикл do {.....} while(...);
в while (...) {.....}
 
 Top
andreya
Отправлено: 12 Июня, 2011 - 16:09:12
Post Id


Новичок


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


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




Таблица не будет пуста. Ибо заполнена изначально. Цикл необходим такой. Мне бы про кнопку - как ей сказать что бы она с id строки работала...
 
 Top
DeepVarvar Супермодератор
Отправлено: 12 Июня, 2011 - 16:14:32
Post Id



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


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


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




Если вы решили делать именно input - тогда будьте добры пишите полностью:
CODE (html):
скопировать код в буфер обмена
  1. <form action="script.php" method="get">
  2.   <input type="hidden" value="<?=$myrow['id']?>" />
  3.   <input type="submit" value=" Go " />
  4. </form>

И так для каждой кнопки в каждой ячейке...
Но я бы отказался от этого геморроя и написал бы простой ссылкой, которую всегда можно оформить в виде кнопки с помощью CSS:
CODE (html):
скопировать код в буфер обмена
  1. a href="script.php?id=<?=$myrow['id']?>">Go</a>
 
 Top
OrmaJever Модератор
Отправлено: 12 Июня, 2011 - 16:16:03
Post Id



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


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


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




andreya Может я слепой но где там кнопка? Однако
andreya пишет:
PHP:
скопировать код в буфер обмена
  1. printf ("<table class='tables' border='1' cellpadding='0' cellspacing='0'>
  2. <tr>
  3. <td>%s</td>
  4. <td>%s</td>
  5. <td>%s</td>
  6. </tr>
  7.  
  8. </table>", $myrow["name"], $myrow["dlina"], $myrow["price"] );


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
DeepVarvar Супермодератор
Отправлено: 12 Июня, 2011 - 16:18:31
Post Id



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


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


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




andreya пишет:
Цикл необходим такой.
т.е. каждый раз необходимо сделать одну итерацию??? А если вы будете из базы в последствии выбирать по условию и не найдете ни одной строки - скрипт выведет пустую строку (хотя бы один раз изза do сработает).
Но дело ваше - обожжетесь позднее, главное вспомните то что вам говорили.
 
 Top
Давит
Отправлено: 12 Июня, 2011 - 16:21:25
Post Id



Частый гость


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


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




PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.     do {
  3.     printf ("<table class='tables' border='1' cellpadding='0' cellspacing='0'>
  4.    <tr>
  5.    <td>%s</td>
  6.    <td>%s</td>
  7.    <td>%s</td>
  8.    <td>    <form action='xxx.php' method='post'>
  9.    <input type='hidden' name='id' value='%s' />
  10.    <input type='submit' name='submit' value='кнопка' />
  11.    </form></td>
  12.    </tr>
  13.    
  14.    </table>", $myrow["name"], $myrow["dlina"], $myrow["price"],$myrow["id"] );
  15.     }
  16.      
  17.     while ($myrow = mysql_fetch_array($tovar));
  18.      
  19.     ?>
  20. в файле xxx.php получаем  $myrow["id"]
  21. <?PHP
  22. if(isset($_POST['id']))
  23. $id = (int)$_POST['id'];
  24. //вводим на екран
  25. echo $id;
  26. ?>

(Отредактировано автором: 12 Июня, 2011 - 16:26:09)

 
 Top
andreya
Отправлено: 12 Июня, 2011 - 16:53:19
Post Id


Новичок


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


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




[quote=DeepVarvar][/quote]Таблица не будет пуста. Ибо заполнена изначально. Цикл необходим такой. Мне бы про кнопку - как ей сказать что бы она с id строки работала...
Jxytm неплохо. пусть будет ссылка. А как сделать что бы при нажатии этой ссылки этот id строки добавлялся в сессию? И далее можно было бы работать с id других строк что бы и их добавить если что. Ну то есть нажали ссылку на одной строке. Она попала в сессию - сохранилась. Нажали на второй строке и тоже самое. Совсем не могу понять.
 
 Top
DeepVarvar Супермодератор
Отправлено: 12 Июня, 2011 - 16:54:52
Post Id



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


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


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




andreya пишет:
Она попала в сессию - сохранилась. Нажали на второй строке и тоже самое.
Не удалив предыдущую???
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Работа с СУБД »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB