Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 13.04.2019
Сообщений: 13

Php и html form

22.01.2020, 10:28. Показов 865. Ответов 12
Метки html, php (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день! Возник следующий вопрос:
Пишу маленький сайтик, в котором использую HTML Form для отправки данных на сервер
HTML5
1
2
3
4
5
6
7
8
9
<form method="post" class="addVideoForm" action="addvideo.php">
    Название видео:
    <input type="text" name="name" maxlength="100" required><br><br>
    Ссылка на видео:
    <input type="text" name="reference" maxlength="100" required><br><br>
    Описание:
    <input type="text" name="description" maxlength="100" required><br><br>
    <input type="submit" value="Добавить видео"><br><br>
</form>
Шапка и подвал у сайта статичны и постоянно подгружается только центральная часть с информацией
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
<!--Шапка-->
<div class="Header"></div>
<!--Основная часть-->
 
[PHP]
<?
 include($_page);
 ?>
[/PHP]
 
<!--Подвал-->
<div class="footer"></div>
Но после нажатия на кнопку отправки формы со страницы пропадает всё, кроме элементов самой формы. Как с этим бороться?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.01.2020, 10:28
Ответы с готовыми решениями:

php + html form. не правильно работает $_POST
имеем: cat registr.php cat registr.php &lt;?php if (!empty($_POST)) { $log = $_POST; $log...

html+css+php+mySql+form action
Доброго времени суток всем. Начал делать сайт,пишу на php. Сайт разделен на две части: левая часть-кнопки, правая-контент. ...

Form action или как связываются html и php
Добрый день, перед тем как рассказать проблему скажу что находил похожую проблему и там так её не решили, я бы мог найти причину но сейчас...

12
 Аватар для vinikon
340 / 160 / 89
Регистрация: 16.01.2020
Сообщений: 771
22.01.2020, 11:08
после отправки формы поля формы очищаются от введенных данных. так и должно быть
0
0 / 0 / 0
Регистрация: 13.04.2019
Сообщений: 13
22.01.2020, 11:15  [ТС]
Да, я знаю, что поля формы отчищаются. Есть ли какие-нибудь рекомендации по тому, как лучше оформить этот момент, ибо после отправки и шапка, и подвал пропадают?
0
 Аватар для vinikon
340 / 160 / 89
Регистрация: 16.01.2020
Сообщений: 771
22.01.2020, 11:20
можете показать содержимое файла addvideo.php?
0
0 / 0 / 0
Регистрация: 13.04.2019
Сообщений: 13
22.01.2020, 11:40  [ТС]
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?
    $sql['host'] =     "localhost";
    $sql['base'] =     "kursach";
    $sql['user'] =     "root";
    $sql['password'] = "";
 
    $mysqli = new mysqli($sql['host'], $sql['user'], $sql['password'], $sql['base']);
 
    $url_part = explode("/", $_POST['reference']);
    
    if($_POST['name']AND$_POST['reference']){   
 
        if ($url_part[0] == "https:"){
            $url_part[3] = explode("watch?v=", $url_part[3]);
            $url = $url_part[0]."//".$url_part[2]."/embed/".$url_part[3][1];
 
        }elseif ($url_part[0] == "www.youtube.com") {
            $url_part[1] = explode("watch?v=", $url_part[1]);
            $url = "https://".$url_part[0]."/embed/".$url_part[1][1];
 
        }else{
            echo "Неверная ссылка!";
            exit();
        }
 
        $insert_reference = "INSERT INTO `video`(`id`, `name`, `refernce`, `description`) VALUES ('','{$_POST['name']}','{$url}','{$_POST['description']}')";
        $query = mysqli_query($mysqli, $insert_reference);
    }
 
?>
HTML5
1
2
3
4
5
6
7
8
9
10
11
<div class="contain">
    <form method="post" class="addVideoForm" action="addvideo.php">
        Название видео:
        <input type="text" name="name" maxlength="100" required><br><br>
        Ссылка на видео:
        <input type="text" name="reference" maxlength="100" required><br><br>
        Описание:
        <input type="text" name="description" maxlength="100" required><br><br>
        <input type="submit" value="Добавить видео"><br><br>
    </form>
</div>
0
 Аватар для vinikon
340 / 160 / 89
Регистрация: 16.01.2020
Сообщений: 771
22.01.2020, 12:09
И где подгружаются шапка и подвал в этом файле? Видимо, надо там добавить что вроде вышенаписанного:
PHP
1
2
<!--Шапка-->
<div class="Header"></div>
вверху и внизу
PHP
1
2
<!--Подвал-->
<div class="footer"></div>
ну и элементы в них, если нужно
0
0 / 0 / 0
Регистрация: 13.04.2019
Сообщений: 13
22.01.2020, 12:22  [ТС]
У меня есть файл index.php, в котором подгружаются и шапка, и подвал. Средине файла есть include, которой подгружает другие файлы. Выглядит это следующим образом:

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?
    include("_config.php");
?>
<html>
 
    <head>
        <link rel="stylesheet" type="text/css" href="style/css.css">
    </head>
 
    <body>
        
        <div class="Background">
            <!--Шапка-->
            <div class="Header">
                <div class="SiteName">Название</div>
                <a class = "HeaderHref" href="./?p=main">Главная</a>
                <a class = "HeaderHref" href="./?p=video">Видео</a>
                <a class = "HeaderHref" href="#">Контакты</a>
            </div>
            <!--Основная часть-->
            
                <?
                    include($_page);
                ?>
                
            
            <!--Подвал-->
            <div class="footer">
                
                    
                    © 2020 Стрыков Антон
                
            </div>
                
 
            </div>
        </div>
    </body>
 
</html>
Элементы файла индекс всегда остаётся на месте, а в include($_page) подгружаются другие файлы, т.е в итоге это выглядит как обычая страница. Но после отправки формы пропадают элементы файла index.php (шапка и подвал). Можно ли как-то обойти этот момент?
0
1308 / 1000 / 232
Регистрация: 01.10.2018
Сообщений: 3,893
22.01.2020, 13:04
Добавьте в конец addvideo.php перенаправление на нужную страницу.

Добавлено через 1 минуту
И проверяйте наличие POST-параметров, прежде чем их использовать

Добавлено через 1 минуту
И почитайте про SQL-инъекции

Добавлено через 2 минуты
Форма тоже находится внутри addvideo.php?
0
 Аватар для vinikon
340 / 160 / 89
Регистрация: 16.01.2020
Сообщений: 771
22.01.2020, 13:15
но вы находитесь не в файле index.php, а в файле addvideo.php, в который попадаете после отправки формы. А попадаете вы в него потому, что в туда указывает атрибут формы action='addvideo.php'. вывод такой: либо меняете action на action='index.php' и в нем обработку формы делаете, либо выносите шапку в файл header.php, подвал в файл footer.php, и в каждом файле делаете
PHP
1
2
3
include 'header.php';
include($_page);
include 'footer.php';
почитайте про mvc - там не так все сложно

Добавлено через 9 минут
Цитата Сообщение от estic Посмотреть сообщение
Форма тоже находится внутри addvideo.php?
Да, форма в этом файле, но этот файл сначала находится как бы в файле index.php, а когда форма отправляется - он запускается один без оболочки index.php. поэтому товарищ и шлет сообщения: "Все пропало, шеф"
1
1308 / 1000 / 232
Регистрация: 01.10.2018
Сообщений: 3,893
22.01.2020, 13:46
vinikon, вопрос был адресован автору темы.

Добавлено через 1 минуту
И обратите внимание на смайлик возле этого вопроса

Добавлено через 2 минуты
Означает, что форме не место в этом файле.

Добавлено через 10 минут
Цитата Сообщение от vinikon Посмотреть сообщение
вывод такой
Оба "либо" - определенный перекос. "Единая точка входа" будет лучше, но в ней нужно предусмотреть действия, не касающиеся вставки частичного шаблона в общий. Даже если действие определяется отсутствием GET-параметра p, его реализацию лучше также вынести в подключаемый файл, только подключать этот файл нужно не внутри общего шаблона, а перед ним.

Добавлено через 6 минут
У автора даже отображение главной происходит по параметру p. Интересно, как работает его скрипт при отсутствии этого параметра (/ или /index.php)? Дублирует страницу /?p=main

Добавлено через 5 минут
CrIsSaLiT, сделайте последний шаг к использованию единой точки входа: передавайте основные параметры в пути, а не в строке параметров:
/ - главная;
/video - видео;
/index.php - неизвестная страница, пока вы не закрепите за идентификатором index.php определенное действие.
0
 Аватар для vinikon
340 / 160 / 89
Регистрация: 16.01.2020
Сообщений: 771
22.01.2020, 13:48
Цитата Сообщение от estic Посмотреть сообщение
vinikon, вопрос был адресован автору темы.
Пардон, вспылил, был неправ
Цитата Сообщение от estic Посмотреть сообщение
Оба "либо" - определенный перекос. "Единая точка входа" будет лучше
совершенно с вами согласен, поэтому и написал про mvc
0
0 / 0 / 0
Регистрация: 13.04.2019
Сообщений: 13
22.01.2020, 14:34  [ТС]
Благодарю за помощь, помог следующий способ:
Цитата Сообщение от vinikon Посмотреть сообщение
либо меняете action на action='index.php' и в нем обработку формы делаете
Так же хочу попросить накидать полезные статейки или дать советы, так как только учусь Вебу и многих вещей могу не понимать/ понимать не правильно.
0
 Аватар для vinikon
340 / 160 / 89
Регистрация: 16.01.2020
Сообщений: 771
22.01.2020, 14:44
я бы посоветовал начать вот с этой статьи: Реализация MVC паттерна на примере создания сайта-визитки на PHP. Там все буквально разжевано подробно. почитайте и разберитесь потом во всех комментариях к этой статье. поэкспериментируйте. потом узнайте про namespace`s, автоматическую загрузку классов и переделайте этот сайт- визитку по этим рекомендациям, потом начните изучать yii и symfony. я бы так посоветовал
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.01.2020, 14:44
Помогаю со студенческими работами здесь

Html и PHP... Не пойму как считать данные с html форм в PHP.
Прошу не ругаться. Но что то я не пойму. Ну например в PHP указывают файл: &lt;?php $file = 'example.txt'; ?&gt; а что надо...

PHP и Form
Всем доброго времени суток. Столкнулся с такой проблемой. Простейшая форма отправки данных на сервер и вот в чем вся суть, если указываю...

PHP + <form>
Добрый день. Создал такую тему потому что несколько вопросов, а раскидывать их по разным темам не вижу смысла))) Во у меня в HTML есть...

Как к нескольким файлам html подключить текст из другого html через php?
Ребят, расскажите пожалуйста как к нескольким файлам html через php подключить текст из другого html. Я создаю сайт и каждый раз...

PHP mail() + form
Здравствуйте. Хочу отправить человеку сообщение на почту с помощью php mail(). Так же, нужно отправить человеку сообщение в виде: $to...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru