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
Форумы портала PHP.SU :: Версия для печати :: Проблема с выводом печатной формы
Форумы портала PHP.SU » PHP » Напишите за меня, пожалуйста » Проблема с выводом печатной формы

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

1. NightElf - 11 Июля, 2011 - 14:21:04 - перейти к сообщению
Добрый день.
Имеется база абонентов в MySQL с оболочкой на PHP. С некоторых пор потребовалось реализовать что-то вроде печатной формы для выполнения заявок от абонентов. Вроде все написал - все работает, но с одной оговоркой. Имеется таблица "Заявки" где прописаны заявки от абонов, кто принял, кто работает по заявке - эту инфу также необходимо распечатывать, но бывают случаи когда у одного абона висит сразу несколько заявок - в итоге на печать выходят все строки со всеми заявками. Не подскажете как сделать что-то типа - при нажатии на кнопку распечатки появлялся бы выбор какую заявку распечатать и только инфа по этой заявке выводилась на печатную форму.
Сейчас этот кусок выглядит так:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  $temmpf = mysql_query('select * from zayavki WHERE dogovor ='.$_GET['dogr'].' and udalena = \'1\';');
  2. while ($temmpf2 = mysql_fetch_array($temmpf))
  3.         {
  4. $date = $temmpf2['data_postupleniya'];
  5.        
  6.        
  7.   echo'
  8.  
  9.    <td>Дата и время поступления заявки &nbsp;<i><b> '.$date.'  </i></b> </td>
  10.        
  11.        
  12.         ';}


GET['dogr'] - получение номера договора со страницы заявок.
2. LIME - 11 Июля, 2011 - 14:53:05 - перейти к сообщению
ну в начале скрипта проверять если несколько заявок есть то вывод формы для выбора и die()
3. NightElf - 11 Июля, 2011 - 15:17:05 - перейти к сообщению
LIME пишет:
ну в начале скрипта проверять если несколько заявок есть то вывод формы для выбора и die()

Вот в этом и прошу помочь. У самого подобного опыта небыло, т.е. форму сделать как в отдельное всплывающее окно? или просто сделать вместо моей кнопки радиокнопки.
Сейчас это просто такая ссылка:

CODE (html):
скопировать код в буфер обмена
  1. <a href="blank.php?dogr='.$view['dogovor'].'" target="_blank"><b>Распечатать заявку</b>


Насколько я понимаю должно быть условие: если количество неудаленных заявок 1 - выводить простую ссылку, если больше 1 то выводить радиокнопки. И в каждой радиокнопке похожая ссылка, только с дополнительным параметром - номер заявки.

Сейчас попробую что-нибудь наваять, просто я начинающий программер - база осталась от предыдущего, вот и пытаюсь по мере сил))
4. NightElf - 12 Июля, 2011 - 10:05:57 - перейти к сообщению
Условие реализовал нормально, но вот только как выполнить следующее:
если имеется более 2 заявок, вывести столько радиокнопок сколько заявок.
5. White - 12 Июля, 2011 - 10:54:46 - перейти к сообщению
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. $sql = mysql_query('select * from zayavki WHERE dogovor ='.$_GET['dogr'].' and udalena = \'1\';');
  3. echo '<form action=blank.php method=get>'
  4. while ($view = mysql_fetch_array($sql)) {
  5.   echo '<input type=radio name=dogr value='.$view['dogovor'].'>';
  6. }
  7. echo '<input type=submit value="Отправить"></form>';
  8.  


примерно так, но трудно сказать не зная структуру базы
6. NightElf - 15 Июля, 2011 - 15:09:26 - перейти к сообщению
С этим разобрался, решил сделать менюшку со ссылками на разные печатные документы. Все сделал через select, но есть проблема: страница на которую ссылается value открывается в том же окне, а надо чтобы в новом...эксперементировал с target=_blank, но что-то неудачно. Вот то, что есть сейчас:
PHP:
скопировать код в буфер обмена
  1.  
  2. echo '<select size="1" name="sel2" OnChange="window.location=(this.options[this.selectedIndex].value)">
  3. <option selected>Выберите вид документа</option>
  4. <option value="blank.php?dogr='.$view['dogovor'].'">Заявка на неисправность</option>
  5. </select>';

(Добавление)


Извиняюсь, уже решил. Если кому-то пригодится вот ответ:

PHP:
скопировать код в буфер обмена
  1.  
  2. echo '<select size="1" name="sel2" OnChange="window.open(this.options[this.selectedIndex].value)">
  3. <option selected value="index.php"></option>
  4. <option value="blank.php?dogr='.$view['dogovor'].'">Распечатать заявку</option>
  5. </select>';
  6.  

 

Powered by ExBB FM 1.0 RC1