Я только начал знакомиться с PHP, и то, что я пытаюсь сделать в данный момент, - это когда форма отправлена, вы перенаправляетесь на страницу подтверждения, где вы увидите сообщение вроде:Отобразить введенные пользователем данные на перенаправленной странице
Thank you John Smith for submiting folowing info:
Address: blah blah blah
Mobile phone number: blah blah blah
Landline phone number: blah blah blah
Email: blah blah blah
(where blah blah blah is data that user entered in form)
так вот мой основной код:
<?php
if (isset($_POST['submit'])){
header("Location: form.php");
}
?>
<html>
<head>
******
</head>
<body>
<header class="main-header">
***
</header>
<main id="main">
<?php
define('DB_NAME', '***');
define('DB_USER', '***');
define('DB_PASSWORD', '***');
define('DB_HOST', '***');
$link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);
if (!$link) {
die('Could not connect: ' . mysql_error());
}
$db_selected = mysql_select_db(DB_NAME, $link);
if (!$db_selected) {
die('Can\'t use ' . DB_NAME . ': ' . mysql_error());
}
$forenameErr = $surnameErr = $emailErr = $sendMethodErr = "";
$forename = $surname = $address = $mobile = $landline = $email = $sendMethod = "";
if (isset($_POST['submit'])) {
$forename = $_POST['forename'];
$surname = $_POST['surname'];
$address = $_POST['postalAddress'];
$mobile = $_POST['mobileTelNo'];
$landline = $_POST['landLineTelNo'];
$email = $_POST['email'];
$sendMethod = $_POST['sendMethod'];
}
$sql = "INSERT INTO CT_expressedInterest (forename, surname, postalAddress, mobileTelNo, landLineTelNo, email, sendMethod)
VALUES('$forename', '$surname', '$address', '$mobile', '$landline', '$email', '$sendMethod')";
if (!mysql_query($sql)) {
die('Error: ' . mysql_error());
}
mysql_close();
?>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?> ">
<fieldset class="formfield"> <!--adds box around content of this element-->
<legend>Your Details</legend> <!--Gives title to this fieldset-->
<p>Fields marked with * are required for form submition.</p>
<label for="forename">First Name:</label>
<input type="text" name="forename" id="forename" placeholder = "Enter your First Name" tabindex="12" required />
<label for="surname">Last Name(s):</label>
<input type="text" name="surname" id="surname" placeholder = "Enter your Last Name" tabindex="13" required />
<label for="postalAddress">Postal Address:</label>
<input type="text" name="postalAddress" id="postalAddress" placeholder = "Your house number, street name and postcode"tabindex="14"/>
<label for="mobileTelNo">Mobile Telephone Number:</label>
<input type="text" name="mobileTelNo" id="mobileTelNo" placeholder = "Enter your mobile number" tabindex="19"/>
<label for="landLineTelNo">Landline Telephone Number:</label>
<input type="text" name="landLineTelNo" id="landLineTelNo" placeholder = "Enter your landline number" tabindex="19"/>
<label for="email">Email:</label>
<input type="text" name="email" id="email" placeholder = "Enter your email address" tabindex="20"/> <br/>
<p> How Would You Like To Recieve Further Information?</p>
<label id="post">Post</label>
<input type="radio" name="sendMethod" value="Post" tabindex="34" placeholder = "please choose one" required >
<label id="eemail">Email</label>
<input type="radio" name="sendMethod" value="Email" tabindex="35">
<label id="sms">SMS Text</label>
<input type="radio" name="sendMethod" value="SMS" tabindex="36">
<p><input type="checkbox" name="checkbox" value="check" id="agree" required /> I have read and agree to the Terms and Conditions and Privacy Policy </p>
<p>
<input type="submit" name="submit" value="Submit!" />
</p>
</fieldset>
</form>
</main>
<footer class="main-footer">
***
</footer>
</body>
</html>
И вот что я до сих пор для form.php, но, очевидно, она не работает. (я не уверен, что мне нужно, чтобы подключиться к базе данных в этом файле, а)
echo "<p>Thank you $forename $surname</p>";
echo "<p>We have recieved following information:</p>";
echo "<p>Address: $address</p>";
echo "<p>Mobile phone number: $mobile</p>";
echo "<p>Landline phone number: $landline</p>";
echo "<p>Email: $email </p>";
Может кто-нибудь, пожалуйста, помогите мне закончить form.php код? И еще одна вещь. После нажатия кнопки «Отправить» в мою базу данных добавляются две новые записи. Один с информацией, которая была введена в нее, и одна полностью пуста. Буду признателен за любую помощь. Спасибо!
p.s. Мне не разрешено использовать любые jquery или ajax вещи.
добавить переменные $ _POST на страницу подтверждения, и вы увидите, что они заполняют – Matt
, когда '$ _POST ['submit']' присутствует, вы перенаправляете на form.php. Ничто из кода ниже этой команды не будет исполнено. Но у вас также есть вторая проверка на то же самое, подавайте немного дальше. Я не думаю, что ваш код когда-либо достигнет этой части в состоянии подачи. – RST