1

Тема: Створити веб-сторінку для вичислення факторіалу

Доброго дня є ось таке завдання створити веб-сторінку для вичислення факторіалу,в программі повинна бути перевірка щоб вводилось число,вводилось ціле додатне число,я написала ось таку програму але не розумію як результат записати до форми,а не щоб вона була нижче неї,ось код

<?php
error_reporting(E_ALL);
ini_set('display_startup_errors', 1);
ini_set('display_errors', '1');
?>
<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
    <body>
        <form action="" method="post">
        
        <center>
       <h1>Обчислення</h1><br>
<pre>N!:<input type="numeros" name="numeros"/></pre>
<pre>N:<input type="number" min="0" max="171" step="1" name="numeros"> </pre><br>
<input type="submit">
<input type="reset" value="Очистити" onclick="return Clear(Form1);">
</form>
    </body>
</html>
<?php
if(isset($_POST['numeros']))
{
    $initial_number = $_POST['numeros'];
    $current_factorial = 1;
    while($initial_number >= 1)
    {
        $current_factorial = $initial_number*$current_factorial;
        $initial_number--;
    }
    echo 'N!('.$_POST['numeros'].') = '.$current_factorial;
}
?>

2 Востаннє редагувалося koala (24.11.2021 20:29:14)

Re: Створити веб-сторінку для вичислення факторіалу

0. Вирівнюйте код, вам самій же буде зручніше.
1. Тег center виключено з HTML5, а заголовок <!DOCTYPE html> вказує саме на HTML5. Ви, до речі, його навіть не закрили. Можливо, через п.0.
2. Жоден з відомих мені браузерів не підтримує тип поля numeros. Швидше за все, воно відобразиться як text, але мені ліньки перевіряти.
3. Ви виводите відповідь після завершення HTML-сторінки (закриття тегу </html>). Очевидно, що це неправильно. Обчислюйте факторіал перед тим місцем, де збираєтеся його виводите, а потім додавайте у відповідне поле. Я б робив просто текстом, але можете додати в поле, це атрибут value.

Подякували: leofun011

3

Re: Створити веб-сторінку для вичислення факторіалу

Можете допомогти,написати код,то щось не дуже зрозуміло

4

Re: Створити веб-сторінку для вичислення факторіалу

noname122 написав:

Можете допомогти,написати код,то щось не дуже зрозуміло

Можете пояснити, як саме вам допоможе, якщо хтось інший напише код, бо щось не дуже зрозуміло.

5

Re: Створити веб-сторінку для вичислення факторіалу

Ну як жеж, людина отримає папірець і піде з ним працювати, а знання до кишені не покладеш.

6

Re: Створити веб-сторінку для вичислення факторіалу

Допоможе таким чином,буде готова програма мені так легше розібратися

7

Re: Створити веб-сторінку для вичислення факторіалу

noname122 написав:

Допоможе таким чином,буде готова програма мені так легше розібратися

це лабалаторна робота?
якщо так то викладач мав дати лекцію/приклади, подивіться, зрівняйте зі своїм і навчіться
а якщо самі хочете вивчити то дивіться туторіали, або вже готові програмки

8

Re: Створити веб-сторінку для вичислення факторіалу

Ні,це практична,але такого не було тільки почали роздивлятися php

9

Re: Створити веб-сторінку для вичислення факторіалу

noname122 написав:

Ні,це практична,але такого не було тільки почали роздивлятися php

практичні ніби одні для всіх, спитайте в однормупників, може вони вам почертвують шматок коду

10

Re: Створити веб-сторінку для вичислення факторіалу

Я ж того сюди звернувся,тому ніхто не зміг мені допомогти

11

Re: Створити веб-сторінку для вичислення факторіалу

Ви нездатні читати навіть відповіді, тому вам треба навчитися це робити. Вам серед програмістів робити нічого. Тому почнімо розбиратися...

1. Тег center виключено з HTML5, а заголовок <!DOCTYPE html> вказує саме на HTML5. Ви, до речі, його навіть не закрили. Можливо, через п.0.

Ви розумієте, що таке тег? Що таке заголовок? Що таке html5? І що таке закрити тег?

12

Re: Створити веб-сторінку для вичислення факторіалу

так

13 Востаннє редагувалося mamkin haker (24.11.2021 21:25:03)

Re: Створити веб-сторінку для вичислення факторіалу

noname122 написав:

Я ж того сюди звернувся,тому ніхто не зміг мені допомогти

до викладача зверніться колективно .-.
попросіть щоб пояснив ще раз

14

Re: Створити веб-сторінку для вичислення факторіалу

Ну якщо ви не хочете допомогти,так і скажіть

15

Re: Створити веб-сторінку для вичислення факторіалу

Ви розумієте, що таке тег? Що таке заголовок? Що таке html5? І що таке закрити тег?

так

Що вам заважає закрити тег, принаймні? Зробіть це і ми перейдемо до наступного пункту.

16

Re: Створити веб-сторінку для вичислення факторіалу

noname122 написав:

Допоможе таким чином,буде готова програма мені так легше розібратися

У вас є програма, готова на 95%. Але ви чомусь у ній не можете розібратися і виправити решту 5%. Знаєте чому? Бо для цього треба розбиратися. А розбиратися ви якраз і не хочете.

17 Востаннє редагувалося noname122 (25.11.2021 11:15:02)

Re: Створити веб-сторінку для вичислення факторіалу

Я розробила ось таку програму,але все ж таки не розумію як очистити поля саме з кнопки

<?php
error_reporting(E_ALL);
ini_set('display_startup_errors', 1);
ini_set('display_errors', '1');
if(isset($_POST['numeros']))
{
    $initial_number = $_POST['numeros'];
    $current_factorial = 1;
    while($initial_number >= 1)
    {
        $current_factorial = $initial_number*$current_factorial;
        $initial_number--;
    }
    $numeros = $_POST['numeros'];
}
else
{
    $current_factorial = "";
    $numeros = "";
}
?>
<!DOCTYPE html>
<html>
<head>
    <title></title>
    <script type="text/javascript" language="JavaScript">
function ClearFC(){
    $current_factorial="";
    $numeros="";
}
</script>
</head>
    <body> 
       
    <h1>Обчислення N!</h1>
        <form action="index1.php" method="post">
        <pre>N!<input type="number" value=<?php echo $current_factorial?>></pre>
        <pre> N<input type="number" min="0" max="171" step="1" name="numeros" value=<?php echo $numeros; ?>></pre>
        <p><input type="submit"value="Знайти N!">
        <input type ="button"value="Очистить" onclick="ClearFC();"></p>
    
      
</form>
    </body>
</html>
<?php
?>

18

Re: Створити веб-сторінку для вичислення факторіалу

Так, щось у вас дуже серйозно не так з розумінням того, що відбувається. PHP - серверна мова. Javascript - браузерна. Спершу, на сервері, відпрацьовує PHP. Він формує текст сторінки - зокрема, зі скриптами на Javascript; далі він завершується на сервері, усі його змінні знищуються. Потім цей текст передається, саме як текст, браузеру, і браузер відмальовує сторінку та виконує JavaScript. Якщо ви з боку браузера натискаєте якесь посилання, то це посилання передається серверу, і той обробляє його за допомогою PHP - але код запускається з початку, і всі змінні знову створюються. Щоб передати дані від браузера серверу, їх треба запхати у посилання (GET-запит) або у додаткове поле (POST-запит); саме це і робить форма кнопкою submit.

Якщо ви хочете написати скрипт, який очищує поля форми - то маєте це робити виключно засобами JavaScript. Стандартний reset виставляє всі поля на початкове значення, і якщо я правильно вас зрозумів, вас не влаштовує, що це значення у поля з факторіалом - попередній факторіал. Значить, доведеться якось брати це поле і чистити його вручну. Наприклад, додайте полям атрибути id (id="factorial" і id="numeros", наприклад) і робіть щось на кшталт

document.getElementById("factorial").value = "";
Подякували: leofun011

19

Re: Створити веб-сторінку для вичислення факторіалу

Дякую все вийшло,а взагалі по коду ,він вірний,тобто не потребує редагування?

20

Re: Створити веб-сторінку для вичислення факторіалу

Будь-який код потребує редагування, бо ідеального коду, як і будь-чого іншого, на цій Землі не існує.
Ви скажіть, чи вас він влаштовує, і якщо не влаштовує - то в чому саме проблема.