За последние 24 часа нас посетил 17921 программист и 1579 роботов. Сейчас ищут 1485 программистов ...

Возможно ли вывести значение переменной в HTML-форму?

Тема в разделе "PHP для новичков", создана пользователем Sferg, 15 авг 2014.

  1. Sferg

    Sferg Новичок

    С нами с:
    9 июл 2014
    Сообщения:
    21
    Симпатии:
    0
    Здравствуйте. Продолжаю тренироваться с PHP. Вообще, интересная штука. Написал код для сложения 2-х чисел:

    Код (Text):
    1. <?php
    2.     function calc_form() {
    3. ?>
    4.  
    5.     <html>
    6.         <body>
    7.             <form>
    8.                 <h1>Сложение чисел A + B</h1>
    9.                 Число A:<br>
    10.                 <input type=text name="number1" value=""><br><br>
    11.                 Число B:<br>
    12.                 <input type=text name="number2" value=""><br><br>
    13.                 Результат: <br><br>
    14.                 <input type=submit name="button" value="Вычислить"><br><br>
    15.             </form>
    16.         </body>
    17.     </html>
    18.  
    19. <?php
    20.     }
    21.     function calc() {
    22.         if (
    23.             preg_match("/^[0-9.-]+$/i", $_REQUEST['number1']) AND
    24.             preg_match("/^[0-9.-]+$/i", $_REQUEST['number2'])
    25.             )
    26.         {
    27.             $sum = $_REQUEST['number1'] + $_REQUEST['number2'];
    28.             echo $sum;
    29.         }
    30.         else {
    31.             echo "<font color=red size=20>Ошибка!</font>";
    32.         }
    33.     }
    34. ?>
    35.  
    36. <?php
    37.     if (isset($_REQUEST['number1'], $_REQUEST['number2'])) {
    38.         calc_form();
    39.         calc();
    40.     }
    41.     else {
    42.         calc_form();
    43.     }
    44. ?>
    , но озадачился: возможно ли каким-либо образом вывести результат вычисления (переменная $sum) в HTML-форму - рядом с надписью "Результат: "? А то выводится только снизу.

    P.S. Пробовал изменить строку:

    Код (Text):
    1.  
    2.                 Результат: <?php echo $sum; ?><br><br>
    , но выводится лишь предупреждение.
     
  2. Deonis

    Deonis Старожил

    С нами с:
    15 фев 2013
    Сообщения:
    1.521
    Симпатии:
    504
    Код (PHP):
    1. <?php
    2.     function calc_form($res = false) {
    3. ?>
    4.     <html>
    5.         <body>
    6.             <form>
    7.                 <h1>Сложение чисел A + B</h1>
    8.                 Число A:<br>
    9.                 <input type=text name="number1" value=""><br><br>
    10.                 Число B:<br>
    11.                 <input type=text name="number2" value=""><br><br>
    12.                 Результат: <?php echo $res;?><br><br>
    13.                 <input type=submit name="button" value="Вычислить"><br><br>
    14.             </form>
    15.         </body>
    16.     </html>
    17. <?php
    18.     }
    19.     function calc() {
    20.         $sum = "<font color=red size=20>Ошибка!</font>";
    21.         if (
    22.             preg_match("/^[0-9.-]+$/i", $_REQUEST['number2']) AND
    23.             preg_match("/^[0-9.-]+$/i", $_REQUEST['number2'])
    24.             )
    25.         {
    26.             $sum = $_REQUEST['number1'] + $_REQUEST['number2'];
    27.         }
    28.         return $sum;
    29.     }
    30. ?>
    31.  
    32. <?php
    33.     if (isset($_REQUEST['number1'], $_REQUEST['number2'])) {
    34.         calc_form( calc() );
    35.     } else {
    36.         calc_form();
    37.     }
    38. ?>
    Если short tags включены, то можно так:
    Код (PHP):
    1. // вместо 
    2. <?php echo $sum;?>
    3. // зписать
    4. <?=$sum?>
     
  3. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    Теперь в >=5.3 " <?=?> " - это работает по умолчанию, не зависимо от short_open_tag
     
  4. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.583
    Симпатии:
    1.761
  5. Sferg

    Sferg Новичок

    С нами с:
    9 июл 2014
    Сообщения:
    21
    Симпатии:
    0