@kirzzzz

Не удается отправить в БД введенные на сайт данные. Как исправить?

Просьба не кидаться палками, я простак уровня F.
Имеется кусок кода HTML с формами для ввода данных и кнопкой отправки этих данных в БД
<form action="php/rec.php" method="post" class="input_field">
                            <input type="text" class="form-control" name="client_name" placeholder="Введите Ваше имя">
                            <input type="text" class="form-control" name="client_surename" placeholder="Введите Вашу фамилию">
                            <input type="text" class="form-control" name="client_tel" placeholder="Введите Ваш телефон">
                            <input type="text" class="form-control" name="client_email" placeholder="Введите Ваш mail">
                        </form>
                        
                    </div>
                </div>
                <div class="submit_button">
                    <form action="php/rec.php" method="post">
                    	<input type="submit" value="Записаться" class="button_or">
                    </form>

И собственно сам скрипт(код) php - "rec.php", код взял с какого то сайта помощника, вроде разобрался и поменял все значения под свои.
<?php
	require 'connect.php'; // Подключает файл с логином/паролем и именем БД
	mysql_set_charset('utf8'); // Устанавливает кодировку клиента
	$client_name = trim($_REQUEST['Name']); // Получает содержимое поля "Автор" и убирает возможные пробелы в 		начале строки
	$client_surename = trim($_REQUEST['Surename']); // То же самое для поля "Название"
	$client_tel = trim($_REQUEST['tel']); // То же самое для поля "Текст" + (см.ниже) 
	$client_email = trim($_REQUEST['email']);
	$insert_sql = "INSERT INTO clients (Name, Surename, tel, email)" . // Указывает в какую таблицу и в какие поля ...
                   "VALUES('{$client_name}', '{$client_surename}', '{$client_tel}', '{$client_email}');"; // ...записывать данные
	mysql_query($insert_sql); // отправляем данные в базу
?>

И собственно почему не работает? Хост timeweb, БД создана там же на PHPMyAdmin
  • Вопрос задан
  • 327 просмотров
Решения вопроса 2
FanatPHP
@FanatPHP
Чебуратор тега РНР
код взял с какого то сайта помощника

Таких "помощников" надо дустом травить.

Соединяться с бд надо как написано здесь
Вставлять как написано здесь.
Ответ написан
Комментировать
@granty
1. Если поле называется client_name
<input type="text" name="client_name">
то на сервере и ловите его под этим же именем:
$name = trim($_REQUEST['client_name']);

2. У вас 2 формы < form> - в одной поля , а во второй - только кнопка < submit>.
При нажатии на кнопку отправляется вторая форма, но в ней нет полей с данными. Поэтому на сервер ничего не присылается. Перенесите кнопку "Записаться" в первую форму, а вторую форму вообще уберите.

А вообще, FanatPHP прав. Вы читаете какие-то неправильные сайты.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@Karpkarp
Ко всему вышесказанному добавлю, что функция, которую ты используешь mysql_query давным давно устарела, и вообще удалена из php 7, используй mysqli_query, либо PDO. PDO более предпочтительнее
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы