За последние 24 часа нас посетили 20948 программистов и 1112 роботов. Сейчас ищут 388 программистов ...

Как сложить два числа в браузере?

Тема в разделе "PHP для новичков", создана пользователем dobrmir, 26 янв 2023.

  1. dobrmir

    dobrmir Активный пользователь

    С нами с:
    8 окт 2012
    Сообщения:
    200
    Симпатии:
    2
    Как поправить этот код, чтобы на экране отображалось два поля для ввода чисел и кнопка "Рассчитать". Чтобы выводилась на экран сумма.
    HTML:
    1. <!DOCTYPE html>
    2.  
    3. <?php
    4.  
    5. # Следующая функция вызывается всякий раз, когда вашей программе необходимо ввести данные.
    6. # Вы можете изменить это, чтобы использовать другие источники, а не fgets().
    7. function input() {
    8.    return fgets(STDIN);
    9. }
    10. $a = 0;
    11. $b = 0;
    12. $a = input();
    13. $b = input();
    14. echo $a + $b;
    15. ?>
    16.  
    17.  
    18. </body>
    19. </html>
     
  2. don.bidon

    don.bidon Активный пользователь

    С нами с:
    28 мар 2021
    Сообщения:
    845
    Симпатии:
    131
    Путаешь консоль с браузером, в браузере надо форму POST/AJAX-запросом на сервер отправлять, если прям PHP заюзать пришлось.
    Дата реги замечательная для таких вопросов )
     
  3. dantemgs

    dantemgs Новичок

    С нами с:
    24 дек 2022
    Сообщения:
    47
    Симпатии:
    9
    Вот совсем простенькое. Метод GET выбрал, чтобы можно было ссылкой на конкретный пример с кем-то поделиться(в теории, если исполнять на публичном сервере)
    PHP:
    1. <!DOCTYPE html>
    2. <html lang="en">
    3. <head>
    4.     <meta charset="UTF-8">
    5.     <meta http-equiv="X-UA-Compatible" content="IE=edge">
    6.     <meta name="viewport" content="width=device-width, initial-scale=1.0">
    7.     <title>Document</title>
    8. </head>
    9. <body>
    10.     <form action="index.php" method="get">
    11.         <p>Введите имя: </p>
    12.         <input type="text" name="sayMyName">
    13.         <input type="submit" value="Скажи мое имя">
    14.         <?php
    15.         if(isset($_GET["sayMyName"])){
    16.             echo "<br>Your name is: " . $_GET['sayMyName'];
    17.         }
    18.         ?>
    19.     </form>
    20. </body>
    21. </html>
    Через форму методом GET значение из input попадает на тот же файл index.php, выводит это значение через echo. По аналогии легко сделать задачку с суммой.
     
    dobrmir нравится это.
  4. dobrmir

    dobrmir Активный пользователь

    С нами с:
    8 окт 2012
    Сообщения:
    200
    Симпатии:
    2
    Ввел в Гоогле:
    PHP как сложить два числа в браузере
    и нашел пример
    Сложновато это выглядит для случая, когда нужно манипулировать не двумя числами, а делать сложные вычисления с формулами и многими значениями.
     
  5. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.816
    Симпатии:
    735
    Адрес:
    Татарстан
    Потому что php не для этого... Это как микроскопом гвозди забивать
     
  6. antoniii

    antoniii Новичок

    С нами с:
    16 мар 2022
    Сообщения:
    417
    Симпатии:
    71
    Код (Javascript):
    1. <script type="text/javascript">
    2. function calculate(){
    3. num1 = document.getElementById('number1').value;
    4. num2 = document.getElementById('number2').value;
    5. answer = parseInt(num1)+parseInt(num2);
    6. document.getElementById('output').innerHTML = answer;
    7. }
    8. </script>
    9. <body>
    10. <h2>Первое число:</h2>
    11. <input type='text' id='number1' size='10'/><br>
    12. <h2>Второе число:</h2>
    13. <input type='text' id='number2' size='10' /><br>
    14. <button  onclick='calculate()'>Вычислить</button><br>
    15. <h2>Сумма:</h2>
    16. <div id="output"></div>
    17. </body>
     
    dobrmir нравится это.
  7. dobrmir

    dobrmir Активный пользователь

    С нами с:
    8 окт 2012
    Сообщения:
    200
    Симпатии:
    2
    А как к этим двум числам прибавить 140 при постановке галочки? Изготовил пример формы в визуальном редакторе.
    HTML:
    1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    2.  
    3. <meta http-equiv="Content-Language" content="en-us" />
    4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    5. <title>Без названия 1</title>
    6. <style type="text/css">
    7. .style1 {
    8.                 border: 2px solid #008000;
    9. }
    10. .style2 {
    11.                 border: 2px solid #008000;
    12.                 text-align: center;
    13. }
    14. </head>
    15.  
    16.  
    17. <table align="center" class="style1">
    18.                 <tr>
    19.                                 <td class="style2">
    20.                                 <form method="post">
    21.                                                 <input name="Checkbox1" type="checkbox" /></form>
    22.                                 </td>
    23.                                 <td class="style1">Выбрать</td>
    24.                 </tr>
    25.  
    26. </body>
    27.  
    28. </html>
    29.  
     

    Вложения:

  8. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.816
    Симпатии:
    735
    Адрес:
    Татарстан
    Точно также, с помощью js
    На события change чекбокса вешаем функцию, которая прибавляет хоть миллион и выводит соответственно результат в нужном месте...
    Какая у вас там форма - в принципе фиолетово
     
  9. dobrmir

    dobrmir Активный пользователь

    С нами с:
    8 окт 2012
    Сообщения:
    200
    Симпатии:
    2
    А если часть с js разместить на сервере, то можно ли её обезопасить от скачивания через интернет, чтобы защитить от кражи? Так как скрипт возможно будет дорабатываться и чтобы где-то не появлялись неправильные клоны.
     
  10. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.816
    Симпатии:
    735
    Адрес:
    Татарстан
    что значит часть.... вы по другому и не сможете))) а все что выложено - скачано ... кража? не смешите мои тапки.. кому нужен ваш скрипт складывающий 2-3 числа...

    Если расчеты серьезные и представляют коммерческую ценность - то конечно они производятся на сервере (php, pyton итд)
    А взаимодействие осуществляется с помощью ajax
     
  11. dobrmir

    dobrmir Активный пользователь

    С нами с:
    8 окт 2012
    Сообщения:
    200
    Симпатии:
    2
    --- Добавлено ---
    А что, на Js не делают бэкэнды?
     
  12. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.816
    Симпатии:
    735
    Адрес:
    Татарстан
    Если только NodeJS... на чистом JS не делают...
     
  13. dobrmir

    dobrmir Активный пользователь

    С нами с:
    8 окт 2012
    Сообщения:
    200
    Симпатии:
    2
    А как оформить этот или похожий пример на PHP?
     
  14. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.816
    Симпатии:
    735
    Адрес:
    Татарстан
    никак ... вам все же стоит понять принципы веба
    что выполняется на клиенте, что выполняется на сервере

    если просто сложить два числа, то
    PHP:
    1. $summ = $a + $b;
    но вы должны понимать, чтоб их сложить вы должны с клиента передать данные в скрипт - там принять их .. например из $_POST, выполнить действия - отдать обратно
     
  15. dobrmir

    dobrmir Активный пользователь

    С нами с:
    8 окт 2012
    Сообщения:
    200
    Симпатии:
    2
    А как выглядит полный код двух файлов?
     
  16. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.816
    Симпатии:
    735
    Адрес:
    Татарстан
    да никак.... щас тебе тут на блюдечке все все выложат...
     
  17. dobrmir

    dobrmir Активный пользователь

    С нами с:
    8 окт 2012
    Сообщения:
    200
    Симпатии:
    2
    То есть придется проходить курс PHP уроков. Что делаю периодически, только забываю, так как в основном учу другой язык.
     
  18. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.816
    Симпатии:
    735
    Адрес:
    Татарстан
    учить можно английский... немецкий

    языки программирования понимать нужно
     
  19. dobrmir

    dobrmir Активный пользователь

    С нами с:
    8 окт 2012
    Сообщения:
    200
    Симпатии:
    2
    А как выводить результат без перезагрузки страницы?
     
  20. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.816
    Симпатии:
    735
    Адрес:
    Татарстан
    5 раз уже упомянули - ajax
     
  21. dobrmir

    dobrmir Активный пользователь

    С нами с:
    8 окт 2012
    Сообщения:
    200
    Симпатии:
    2
    Как сделать через один файл, подсказали на другом форуме. А как разнести на два файла, чтобы программист и дизайнер-верстальщик могли делать свою работу по отдельности, на чистом PHP и HTML по отдельности написать такой код в разных файлах, как понял, проблематично.
     
  22. dobrmir

    dobrmir Активный пользователь

    С нами с:
    8 окт 2012
    Сообщения:
    200
    Симпатии:
    2
    Уже подсказали с двумя файлами, только получается, что такой код получается сложнее.