私はちょうど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コードを完了するために私を助けてくださいことはできますか? そして、もう一つ。 Submitボタンを押すと、2つの新しいレコードがデータベースに追加されます。 1つは、フォームに入力された情報と1つは完全に空です。 私は助けていただければ幸いです。ありがとうございました!
p.s. jqueryやajaxのものは使用できません。このコードの
確認ページに$ _POST変数を追加し、あなたは彼らが – Matt
を移入見る必要があるときに '$ _POST [「提出」]'あなたがform.phpするリダイレクト存在しています。そのコマンドの下のコードは何も実行されません。しかし、あなたはまた、同じビットさらに下提出するための第2のチェックを持っています。あなたのコードがサブミット状態でその部分に到達するとは思わない。 – RST