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 » » Хранение данных, их вывод и обработка » вывод действительного значения в переменую?

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

1. Alek - 22 Мая, 2011 - 19:50:24 - перейти к сообщению
Как сделать чтоб $y имела действительное значение полученное из БД, а не -1 от реального значения? return $... соответствует...
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. //соединяемся с базой данных
  4.  
  5. $con=mysql_connect('localhost', 'root');
  6.  
  7. //проверка на корректное соединение
  8. if(!mysql_select_db('my_db',$con)){print "OK";}
  9.  
  10. //получить данные из базы данных
  11. $sql = "SELECT * FROM `loks`";
  12. $sql=$escaped_item = mysql_real_escape_string($sql);
  13. $result = mysql_query($sql, $con);
  14.  
  15. //выводим данные с поммощью цикла WHILE
  16. while( $row = mysql_fetch_object($result)){
  17. $x=$row->x;
  18. $y=$row->y;
  19.  
  20. print "  y".$y;  
  21. #print "\tx $x<br />\n";
  22.  
  23. }
  24.  
  25.  
  26. function buttonN(){
  27. $N="N";
  28. $output=<<<HERE
  29.       <form name="Form" action="">
  30.       <input name="$N" type="submit" value="N">
  31.                                       </form>
  32.      
  33. HERE;
  34. print $output;
  35.  
  36.       if($_REQUEST['N']==N){
  37.         global $y, $con;
  38.          $N=$y;
  39.           $N=$y+1;
  40.            $sqlN="UPDATE loks SET y=$N";
  41.             $queryN=mysql_query($sqlN, $con);
  42.  
  43. return $N;
  44.  }
  45. }
  46. function buttonS(){
  47. $S="S";
  48. $output=<<<HERE
  49.       <form name="Form2" action="">
  50.       <input name="$S" type="submit" value="$S" />
  51.                                       </form>
  52.      
  53. HERE;
  54. print $output;
  55.                          if($_REQUEST['S']==S){
  56.                            global $y, $con;
  57.                              $S=$y;
  58.                                $S=$y-1;
  59.                                  $sqlS="UPDATE loks SET y=$S";
  60.                                    $queryS=mysql_query($sqlS, $con);
  61. return $S;
  62.                                      
  63.  }                                    
  64. }
  65.  
  66.  
  67. print buttonN();
  68. print buttonS();
  69.  
  70. ?>


P.S. Извините новичка, если я чего упустил! Подмигивание
2. altermann - 22 Мая, 2011 - 20:20:40 - перейти к сообщению
Если я правильно вас понял, то вам нужно сначала апдейтить, а потом выводить значение из базы.
3. Alek - 22 Мая, 2011 - 20:58:08 - перейти к сообщению
altermann
разобрался Радость
PHP:
скопировать код в буфер обмена
  1.  if($_REQUEST['S']==S){
  2.                            global $y, $con;
  3.                              $S=$y;
  4.                                $S=$y-1;
  5.                                  $sqlS="UPDATE loks SET y=$S";
  6.                                    $queryS=mysql_query($sqlS, $con);
  7.                                    $S=&$y;//всего то надо было  
  8. return $S;
  9.  
Радость
(Добавление)
не, не верно Огорчение
4. altermann - 22 Мая, 2011 - 21:09:37 - перейти к сообщению
Это вынесите сразу после подключения к БД, и аналогичную вторую переменную тоже. До того как вы используете SELECT
PHP:
скопировать код в буфер обмена
  1. if($_REQUEST['N']==N){
  2.         global $y, $con;
  3.          $N=$y;
  4.           $N=$y+1;
  5.            $sqlN="UPDATE loks SET y=$N";
  6.             $queryN=mysql_query($sqlN, $con);
5. Alek - 23 Мая, 2011 - 00:57:46 - перейти к сообщению
altermann
помучился маленько, но все же вышло Улыбка спасибо!!!

 

Powered by ExBB FM 1.0 RC1