Начинающий. Сделал простой сайт для собственных проб и ошибок. Используя hostinger. Не могу получить ввод страницы регистрации пользователя, чтобы сохранить в некоторый тип файла - PullRequest
0 голосов
/ 06 июня 2019

Мой первый вопрос. В настоящее время я изучаю html и использую 000webhost, чтобы создать тип пробного сайта для проверки себя. У меня есть премиум, так что есть много возможностей. В настоящее время я делаю систему входа в систему, начиная с части регистрации, которая является борьбой.

Я пробовал много разных типов кода, например, чтобы сохранить его в файле в моем файловом менеджере. Я посмотрел на SQL, но он немного сложен для моей цели. Даже смотря на бесплатные уроки, я не мог найти ничего, что могло бы мне помочь, это были в основном общие вещи.

<form action="/action_page.php">
    First name:<br>
     input type="text" name="Username"> <br>
    Last name:<br>
    input type="text" name="Last name"> <br>
    Email:<br>
    input type="text" name="Email"> <br>
    Password:<br>
    input type="password" name="password"

    <input type="submit" 
    form action="/action_page.php">
 </form>

Это простой код, который я скопировал и отредактировал из бесплатного учебника. Что нужно добавить, чтобы сохранить входные данные, чтобы я мог продолжать создавать систему входа в систему. И будет ли этот файл сохранен в файловом менеджере.

Итак, насколько я понял, это записывает входные данные в файл с именем страницы действия. Но я играл и ничего не происходит. Любой совет или ссылку на полезный учебник, который может помочь мне?

ПРИМЕЧАНИЕ. Я удалил некоторые из <и>, поэтому код отображается в необработанном виде, так как это html и да.

1 Ответ

1 голос
/ 06 июня 2019

Итак, насколько я понял, это записывает входные данные в файл с именем страницы действия.Но я играл и ничего не происходит.

Нет, это не то, что сделал бы <form action="action_page.php">.

Когда пользователь нажимает кнопку отправки, это будет ОТПРАВИТЬ пользователю на другую веб-страницу, как указано в атрибуте action= тега <form> - в данном случае один называется action_page.php.Если action_page.php только что сказал:

<h1>Hello</h1>

(и это было полное содержание страницы), то на экране появилось бы Hello, и с данными формы ничего бы не было сделано.

Итак, вам нужно создать страницу, которая получает переменные данных, отправленные с первой страницы, и что-то с ними делает.Переменные формируются на первой странице следующим образом:

<input name="first_name" type="text" />

Когда форма будет отправлена, будет переменная с именем first_name, содержимое которой будет соответствовать вводимому пользователем.

На второй странице (action_page.php) вам нужно получить этих переменных:

$fname = $_REQUEST['first_name'];

Теперь у вас есть то, что пользователь набрал для именив переменной с именем $fname (все переменные PHP должны начинаться с символа $).

Так что, если , это было полным содержимым action_page.php, отправка формы выдаст "Hello John"Как дела? ":

<?php
    $fname = $_REQUEST['first_name'];
?>
<h1>Hello <?php echo $fname; ?>, how are you?</h1>

Попробуйте.


Также прочитайте эту важную статью:

https://stackoverflow.com/a/54757176/1447509


Обновление - ответ на комментарий:

Это пользователь , который вводит в поля формы, так что ничто там не скажет файлу обработки PHP (action_page.php в вашем примере), гдепоставить данные.Это ваше (разработчик) решение.Как сказал Рик в своем комментарии, у вас есть варианты.В 99% случаев мы помещаем информацию в базу данных MySQL (теперь она называется MariaDB), но вы можете сначала попрактиковаться в сохранении данных в текстовый файл.

Используя приведенный выше пример, вы можете изменитьaction_page.php файл к этому:

<?php
    $fname = $_REQUEST['first_name'];
?>
$myFile = fopen('___mytest.txt', 'w');
$fwrite($myFile, "Received from the HTML side: " . $fname);
fclose($myFile);

Примечание: будьте очень осторожны, заканчивая каждую строку точкой с запятой ; - КАЖДАЯ СТРОКА! Когда PHP ломается, сообщения нет - оно просто останавливается.Самая распространенная ошибка - забыть завершить строку точкой с запятой. (Я начал имя файла с 3-х символов подчеркивания, чтобы он выделялся и отображался в верхней части других файлов.)

Когда вы начнете работать, ваш следующий шаг -создать базу данных MySQL и выяснить, как записать в нее данные.Есть где-то рядом с gazillion учебников YouTube, которые помогут.

Запись данных в текстовый файл (в качестве первого шага) будет: (1) доказать вам, что вы на правильном пути, (2) доказать, что все работает до сих пор, и (3) дать вам успешных опыта получения данных из HTML и их сохранения где-либо.

PHP - Защищайте страницы только для членов с помощьюсистема входа в систему

https://www.thoughtco.com/write-to-a-file-from-php-2693790

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...