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]   

> Описание: Не работает обновление информации в базе данных
Trosel
Отправлено: 04 Января, 2016 - 00:55:36
Post Id


Новичок


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


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




Есть страница с кнопкой, внизу текст со значением ( по дефолту 1 (из базы)), при нажатии на кнопку в базе должна проставляться на один больше эта переменная и на странице тоже соответственно цифра должна меняться на 2. (к базе подключается)

PHP:
скопировать код в буфер обмена
  1.  
  2. $connect=mysql_connect('***','***','***');
  3.  
  4.  
  5. $result = mysql_query("SELECT memb FROM tur
  6.                       WHERE ID='1'
  7.  
  8. ");
  9. $row = mysql_fetch_array($result);
  10. $y = $row['memb'];
  11.  
  12.  
  13.   if(isset($_POST["submi00"]))
  14.          {
  15.  
  16.  
  17.  
  18.          $y+1;
  19.          mysql_query(" UPDATE tur SET memb='$y' ");
  20.          mysql_close();
  21.  
  22.  
  23.          }
  24.  
  25.  echo <<<ER
  26.  
  27.        $y/16 <br>
  28.          
  29.         <input type="submit" name="submi00" value="Кнопка" id="KN" class="button8" >
  30.          
  31. ER;
  32.  
  33.  




Ни в базе не меняется число, ни на странице соответственно. В чём ошибка, помогите пожалуйста, буду очень благодарен.

(Отредактировано автором: 04 Января, 2016 - 00:56:45)

 
 Top
Prizma
Отправлено: 04 Января, 2016 - 01:09:27
Post Id



Посетитель


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


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




Trosel пишет:
Есть страница с кнопкой, внизу текст со значением ( по дефолту 1 (из базы)), при нажатии на кнопку в базе должна проставляться на один больше эта переменная и на странице тоже соответственно цифра должна меняться на 2. (к базе подключается)

PHP:
скопировать код в буфер обмена
  1.  
  2. $connect=mysql_connect('***','***','***');
  3.  
  4.  
  5. $result = mysql_query("SELECT memb FROM tur
  6.                       WHERE ID='1'
  7.  
  8. ");
  9. $row = mysql_fetch_array($result);
  10. $y = $row['memb'];
  11.  
  12.  
  13.   if(isset($_POST["submi00"]))
  14.          {
  15.  
  16.  
  17.  
  18.          $y+1;
  19.          mysql_query(" UPDATE tur SET memb='$y' ");
  20.          mysql_close();
  21.  
  22.  
  23.          }
  24.  
  25.  echo <<<ER
  26.  
  27.        $y/16 <br>
  28.          
  29.         <input type="submit" name="submi00" value="Кнопка" id="KN" class="button8" >
  30.          
  31. ER;
  32.  
  33.  




Ни в базе не меняется число, ни на странице соответственно. В чём ошибка, помогите пожалуйста, буду очень благодарен.


Может потому что кнопка не отправляет данных??
попробуй вот так:

PHP:
скопировать код в буфер обмена
  1. $connect=mysql_connect('***','***','***');
  2.  
  3.  
  4. $result = mysql_query("SELECT memb FROM tur
  5.                      WHERE ID='1'
  6.  
  7. ");
  8. $row = mysql_fetch_array($result);
  9. $y = $row['memb'];
  10.  
  11.  
  12.   if(isset($_POST["submi00"]))
  13.          {
  14.  
  15.  
  16.  
  17.          $y+1;
  18.          mysql_query(" UPDATE tur SET memb='$y' ");
  19.          mysql_close();
  20.  
  21.  
  22.          }
  23.  
  24.  echo <<<ER
  25.  
  26.        $y/16 <br>
  27.         <form method="post">
  28.         <input type="submit" name="submi00" value="Кнопка" id="KN" class="button8" >
  29.          </form>
  30. ER;
 
My status
 Top
re_nat
Отправлено: 04 Января, 2016 - 08:27:17
Post Id



Частый гость


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


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




Trosel пишет:
$y+1;

Выражение не имеет смысла. Возможно вы хотели написать "$y++" или "$y += 1".
 
 Top
dcc0
Отправлено: 04 Января, 2016 - 16:24:32
Post Id


Участник


Покинул форум
Сообщений всего: 1043
Дата рег-ции: Июль 2014  


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




PHP:
скопировать код в буфер обмена
  1. mysql_query(" UPDATE `tur` SET `memb`=`memb`+1 ");

Mysql умеет инкрементировать.
PHP:
скопировать код в буфер обмена
  1.  
  2. Выражение не имеет смысла. Возможно вы хотели написать "$y++" или "$y += 1".

А еще есть разница между постфиксным и префиксным инкрементом.
++$y;

(Отредактировано автором: 04 Января, 2016 - 16:44:05)



-----
Март 2021. Бросил программирование
 
 Top
Trosel
Отправлено: 04 Января, 2016 - 18:32:45
Post Id


Новичок


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


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




спасибо всем
 
 Top
re_nat
Отправлено: 04 Января, 2016 - 18:38:11
Post Id



Частый гость


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


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




dcc0 пишет:
А еще есть разница между постфиксным и префиксным инкрементом.
++$y;

В заданном примере - никакой.
 
 Top
Trosel
Отправлено: 04 Января, 2016 - 20:50:56
Post Id


Новичок


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


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




Теперь другая проблема, кнопка то работает, но при обновлении страницы почему то постоянно плюсуется, таким образом чтобы увеличивать $y я могу просто обновлять страницу, как это убрать? Заранее спасибо.
(Добавление)
При чём я заметил, что это получается только после первого нажатия, т.е. если я зашёл на стринцу и не жал ещё на кнопку, то при обновлении значение не меняется
 
 Top
lawer85
Отправлено: 04 Января, 2016 - 22:01:12
Post Id


Частый гость


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


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




Trosel пишет:
Теперь другая проблема, кнопка то работает, но при обновлении страницы почему то постоянно плюсуется, таким образом чтобы увеличивать $y я могу просто обновлять страницу, как это убрать? Заранее спасибо.
(Добавление)
При чём я заметил, что это получается только после первого нажатия, т.е. если я зашёл на стринцу и не жал ещё на кнопку, то при обновлении значение не меняется


Это происходит из-за того, что при обновлении данные из сабмита снова отправляются на сервер. Хорошей практикой является перенаправление на туже страницу после отправки данных
 
 Top
dcc0
Отправлено: 04 Января, 2016 - 22:12:30
Post Id


Участник


Покинул форум
Сообщений всего: 1043
Дата рег-ции: Июль 2014  


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




PHP:
скопировать код в буфер обмена
  1. В заданном примере - никакой.

Для установки - никакой.
PHP:
скопировать код в буфер обмена
  1.  и на странице тоже соответственно цифра должна меняться на

А для вывода имеет.
(Добавление)
Trosel пишет:
Теперь другая проблема, кнопка то работает, но при обновлении страницы почему то постоянно плюсуется, таким образом чтобы увеличивать $y я могу просто обновлять страницу, как это убрать? Заранее спасибо.
(Добавление)
При чём я заметил, что это получается только после первого нажатия, т.е. если я зашёл на стринцу и не жал ещё на кнопку, то при обновлении значение не меняется


При обновлении страницы происходит повторная отправка данных, установленных ранее, и твоя кнопка будет установлена.
Очевидно, надо очищать форму после отправки данных. Способов есть, вероятно несколько.

(Отредактировано автором: 04 Января, 2016 - 22:23:48)



-----
Март 2021. Бросил программирование
 
 Top
Trosel
Отправлено: 04 Января, 2016 - 22:48:02
Post Id


Новичок


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


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




Какие есть способы? С перенаправлением я попробовал, но вероятно я что-то сделал не так:

PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3.  <?PHP
  4.    if(isset($_POST["submi00"]))
  5.          {
  6.  
  7.   echo "<meta http-equiv="refresh" content="0; URL='http://csgoblind.16mb.com/game1.php'"/>";
  8.                  }
  9.  
  10. ?>
  11.  
  12.  
  13.  


И поместил я это в head(да знаю бред, но это всё что пришло в голову). Есть более хорошие способы? Заранее благодарен за помощь.
 
 Top
lawer85
Отправлено: 04 Января, 2016 - 22:51:00
Post Id


Частый гость


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


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




Я имел ввиду перенаправление header("Location: file.php");
 
 Top
dcc0
Отправлено: 04 Января, 2016 - 22:54:17
Post Id


Участник


Покинул форум
Сообщений всего: 1043
Дата рег-ции: Июль 2014  


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




Обсуждалось (и даже известные личности там участвовали =)):
http://forum.php.su/topic.php?fo...1&topic=2414

Рефреш неверный у Вас, кавычки неверно расставлены:

PHP:
скопировать код в буфер обмена
  1. echo '<meta http-equiv="refresh" content="0; URL=\'http://csgoblind.16mb.com/game1.php\'"/>';

(Отредактировано автором: 04 Января, 2016 - 22:55:24)



-----
Март 2021. Бросил программирование
 
 Top
Trosel
Отправлено: 04 Января, 2016 - 23:04:21
Post Id


Новичок


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


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




Спасибо большое, заработало!
 
 Top
re_nat
Отправлено: 05 Января, 2016 - 09:39:46
Post Id



Частый гость


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


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




dcc0 пишет:
А для вывода имеет.

Отнюдь. В контексте имеющегося примера это не влияет ни на что.
 
 Top
dcc0
Отправлено: 05 Января, 2016 - 15:32:18
Post Id


Участник


Покинул форум
Сообщений всего: 1043
Дата рег-ции: Июль 2014  


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




Цитата:

Отнюдь. В контексте имеющегося примера это не влияет ни на что.

Хотя, да. Вы правы, в заданном не будет.


-----
Март 2021. Бросил программирование
 
 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