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]   

> Без описания
Gans
Отправлено: 29 Января, 2014 - 09:05:45
Post Id


Новичок


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


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




Всем привет. Нужна помощь. написал код пхп.
Выгружаю данные из БД в таблицу.
PHP:
скопировать код в буфер обмена
  1.         $db_table_to_show = 'zi';
  2.         $qr_result = mysql_query("select * from " .$db_table_to_show)
  3.         //$qr_result2 = mysql_query ("select * from `zi` WHERE `manager`='$mylog'")
  4.       or die(mysql_error());
  5.     echo '<table border="1">';
  6.    echo '<thead>';
  7.    echo '<tr>';
  8.                   echo '<th>Заказ</th>';
  9.    echo '</tr>';
  10.    echo '</thead>';
  11.    echo '<tbody>';
  12.         while($data = mysql_fetch_array($qr_result)){
  13.       echo '<tr>';
  14. if($data["Dir"] == 1) {  echo  '<td><p><img src="./images/on.bmp"></p></td>'; } else { echo  '<td><form action="/dir.php" method="POST"><input name="Dir" id="1" type="hidden" value="1"/><input type="submit" value="Одобрить" /></td>'; }
  15.       echo '</tr>';
  16.    }
  17.     echo '</tbody>';
  18.    echo '</table>';
  19.  

Вот что в обработчике:
PHP:
скопировать код в буфер обмена
  1.  
  2. include_once 'handler.php';
  3. if($user) {
  4. $mainresult = mysql_query("SELECT `prava` FROM `users_profiles` WHERE `username` = '".$_COOKIE['username']."'");
  5. $mainrow = mysql_fetch_array($mainresult);
  6. if($mainrow["prava"] ==6) {
  7.  
  8. $resultdir = mysql_query(" UPDATE `zi` SET `Dir` ='".$_POST['Dir']."'  WHERE `id`='1'");
  9. if($resultdir == 'true') { header ('Location: index.php' ); exit; }
  10. else { header ('Location: proverka.html' ); exit; }
  11. } else { echo 'У вас нету прав!'; echo '<p><a href="/index.php">Вернуться на главную</a></p>'; }
  12. }
  13. else {
  14. echo 'Вы не авторезировались!';
  15. }
  16.  


Проблем в том что после нажатии на кнопку Одобрить он вставляет значение 1 во всех поля "Dir"
А нужно в то где находилась кнопка Одобрить.
Как привязать кнопку Dir к нужному полю полю. Пишите пожалуйста подробно так как я еще зеленый чайник =)

(Отредактировано автором: 29 Января, 2014 - 09:06:54)

 
 Top
imya
Отправлено: 29 Января, 2014 - 10:08:14
Post Id



Участник


Покинул форум
Сообщений всего: 1472
Дата рег-ции: Сент. 2012  
Откуда: Запорожье, Украина


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




Дать кнопке уникальный id
И потом $_GET- ом || $_POST- ом его получать


-----
PHP:
скопировать код в буфер обмена
  1. do {box != cat;} while (cat != box);


Когда нормальный человек, уезжая из дома одевает на жену пояс верности, веб-дизайнер ставит на нее счетчик...
 
My status
 Top
Gans
Отправлено: 29 Января, 2014 - 11:05:49
Post Id


Новичок


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


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




PHP:
скопировать код в буфер обмена
  1. $resultdir = mysql_query(" UPDATE `zi` SET `Dir` ='".$_POST['Dir']."' WHERE `nomer` = '".$_POST['nomer']."'");
  2.  
  3.   '<td><form action="/dir.php" method="POST"><input name="Dir" type="hidden" id="$data["nomer"];" value="1"/><input type="submit" value="Одобрить" /></td>'; } else { echo  '<td><p><img src="./images/off.bmp"></p></td>'; }
  4.  


Сделал так нефига нету толку.

(Отредактировано автором: 29 Января, 2014 - 11:11:13)

 
 Top
KingStar
Отправлено: 29 Января, 2014 - 11:15:58
Post Id



Участник


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


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




как вариант в action="/dir.php" GETом передать $data["nomer"] и в обработчике принять
(Добавление)
CODE (htmlphp):
скопировать код в буфер обмена
  1. action="/dir.php?nomer='.$data["nomer"].'"


-----
То что программа работает, не означает что она написана правильно!
 
 Top
Gans
Отправлено: 29 Января, 2014 - 11:36:49
Post Id


Новичок


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


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




PHP:
скопировать код в буфер обмена
  1. echo  '<td><form action="/dir.php" method="GET"><input name="Dir" type="hidden" id="$data["nomer"];" value="1"/><input type="submit" value="Одобрить" /></td>';
  2.  
  3. $resultdir = mysql_query(" UPDATE `zi` SET `Dir` ='".$_GET['Dir']."' WHERE `nomer` = '".$_GET['nomer']."'");
  4.  

все так же.
 
 Top
KingStar
Отправлено: 29 Января, 2014 - 11:42:24
Post Id



Участник


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


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




Куда Вы смотрите??? Я вроде четко написал

CODE (htmlphp):
скопировать код в буфер обмена
  1. action="/dir.php?nomer='.$data["nomer"].'"


ужас просто...

PHP:
скопировать код в буфер обмена
  1. echo  '<td><form action="/dir.php?nomer='.$data["nomer"].'" method="GET"><input name="Dir" type="hidden" value="1"/><input type="submit" value="Одобрить" /></td>';


принимаешь $_GET['nomer']
(Добавление)
и уважаемый, где Ваша форма заканчивается???


-----
То что программа работает, не означает что она написана правильно!
 
 Top
Gans
Отправлено: 29 Января, 2014 - 11:59:20
Post Id


Новичок


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


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




Не получилось.
index.php
PHP:
скопировать код в буфер обмена
  1. if($data["Dir"] == 1) {  echo  '<td><p><img src="./images/on.bmp"></p></td>'; } else { if(($data["otchet"]==1) and ($data["Ruk"]== 0)) { echo  '<td><form action="/dir.php?nomer='.$data["nomer"].'" method="GET"><input name="Dir" type="hidden" value="1"/><input type="submit" value="Одобрить" /></td>'; } else { echo  '<td><p><img src="./images/off.bmp"></p></td>'; } }


dir.php
PHP:
скопировать код в буфер обмена
  1. include_once 'handler.php';
  2. if($user) {
  3. $mainresult = mysql_query("SELECT `prava` FROM `users_profiles` WHERE `username` = '".$_COOKIE['username']."'");
  4. $mainrow = mysql_fetch_array($mainresult);
  5. if($mainrow["prava"] ==6) {
  6. $nomer = mysql_real_escape_string(htmlspecialchars($_POST['nomer']));
  7. $resultdir = mysql_query(" UPDATE  `zi` SET `Dir` ='".$_GET['Dir']."' WHERE `nomer` = '".$_GET['nomer']."'");
  8. if($resultdir == 'true') { header ('Location: index.php' ); exit; }
  9. else { header ('Location: proverka.html' ); exit; }
  10. } else { echo 'У вас нету прав!'; echo '<p><a href="/index.php">Вернуться на главную</a></p>'; }
  11. }
  12. else {
  13. echo 'Вы не авторезировались!';
  14. }
  15.  
 
 Top
KingStar
Отправлено: 29 Января, 2014 - 12:06:23
Post Id



Участник


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


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




понятия ноль Хм



откуда $user???



причем здесь POST ??? вы же



нотайс не показал что ли???


-----
То что программа работает, не означает что она написана правильно!
 
 Top
Gans
Отправлено: 29 Января, 2014 - 12:18:13
Post Id


Новичок


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


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




Проверка на авторизацию.

поменял на Get
не понял....

Все равно не работает. Я хз как привязку сделать именно к нужному полю.

(Отредактировано автором: 29 Января, 2014 - 12:27:54)

 
 Top
dmaw
Отправлено: 29 Января, 2014 - 13:02:51
Post Id



Частый гость


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


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




PHP:
скопировать код в буфер обмена
  1.  
  2. while($data = mysql_fetch_array($qr_result)){
  3. echo '
  4. <tr>
  5. <td>
  6. <form action="/dir.php" method="POST">
  7. <input name="Dir['.$data["nomer"].']"  type="hidden" value="1"/>
  8. <input type="submit" value="Одобрить" />
  9. </form>
  10. </td>
  11. </tr>';
  12. }
  13.  

Методом POST получите массив со значением nomer по нему обновите базу.
Что придёт в POST можно увидеть так:
PHP:
скопировать код в буфер обмена
  1.  
  2. echo '<pre>';
  3. print_r($_POST);
  4. echo '</pre>';
  5.  
 
 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