2016-04-29 20 views
0

私は妥当性確認の助けが必要です。私は、HTMLページの中にBootstrapフォームを持っています。しかし、誰かがSubmitをクリックすると、そのページはPHPコードを示す場所にリダイレクトされ、実際には何も送信されません。どこかでスクリプトが欠けていますか?PHPフォームがブートストラップページに送信されませんか?

注:これはAMP HTMLでコーディングしています。

編集:フォームをテストするためにMAMPをインストールしました。送信ボタンをクリックしたところ、空白のページが表示されます。

HTML

<form id="submit-form" action="php/sendemail.php" method="POST" class="cf-validation"> 
<label><h3>Your Name (Required)</h3></label> 
    <div class="input-group"> 
     <input type="text" name="fname" class="form-control"> 
     <span class="input-group-addon" id="name"><span class="fa fa-user"></span></span> 
    </div> 

<label><h3>Email (Required)</h3></label> 
    <div class="input-group"> 
     <input type="email" name="senderEmail" class="form-control"> 
     <span class="input-group-addon" id="email"><span class="fa fa-envelope"></span></span> 
    </div> 

<label><h3>Phone</h3></label> 
    <div class="input-group"> 
     <input type="phone" name="phone" class="form-control"> 
     <span class="input-group-addon" id="phone"><span class="fa fa-phone"></span></span> 
    </div> 

<label><h3>How Can We Help You?</h3></label> 
    <div class="single_form"> 
     <select class="selectmenu input-lg form-control" name="category"> 
      <option selected="selected">Services</option> 
      <option>Spa Parties</option> 
      <option>Specials</option> 
      <option>Other</option> 
     </select> 
    </div> 

<label><h3>Inquiry Details</h3></label> 
    <div class="input-group input_group_textarea"> 
     <textarea name="message" aria-describedby="basic-addon4" class="form-control"></textarea> 
     <span class="input-group-addon" id="basic-addon4"><i class="fa fa-comments"></i></span> 
    </div> 
    <br /> 
    <button type="submit" class="btn btn-success btn-lg" style="color:black;">Submit</button> 
</form> <!-- End Form --> 

PHP

<?php 
// Define some constants 
define("RECIPIENT_NAME", "Name"); 
define("RECIPIENT_EMAIL", "[email protected]"); 

// Read the form values 
$success = false; 
$fname = isset($_POST['fname']) ? preg_replace("/[^\.\-\' a-zA-Z0-9]/", "", $_POST['fname']) : ""; 
$lname = isset($_POST['lname']) ? preg_replace("/[^\.\-\' a-zA-Z0-9]/", "", $_POST['lname']) : ""; 
$senderEmail = isset($_POST['email']) ? preg_replace("/[^\.\-\_\@a-zA-Z0-9]/", "", $_POST['email']) : ""; 
$phone = isset($_POST['phone']) ? preg_replace("/[^\.\-\_\@a-zA-Z0-9]/", "", $_POST['phone']) : ""; 
$category = isset($_POST['category']) ? preg_replace("/[^\.\-\_\@a-zA-Z0-9]/", "", $_POST['category']) : ""; 
$message = isset($_POST['message']) ? preg_replace("/(From:|To:|BCC:|CC:|Subject:|Content-Type:)/", "", $_POST['message']) : ""; 

$mail_subject = 'A contact request send by ' . $fname. $lname; 

$body = 'Name: '. $fname . $lname . "\r\n"; 
$body .= 'Email: '. $senderEmail . "\r\n"; 
$body .= 'Phone: '. $phone . "\r\n"; 
$body .= 'Category: '. $category . "\r\n"; 
$body .= 'Message: ' . "\r\n" . $message; 

// If all values exist, send the email 
if ($fname && $senderEmail && $message) { 
$recipient = RECIPIENT_NAME . " <" . RECIPIENT_EMAIL . ">"; 
$headers = "From: " . $fname . $lname . " <" . $senderEmail . ">"; 
$success = mail($recipient, $mail_subject, $body, $headers); 
echo "<p class='success'>Thanks for contacting us. We will contact you ASAP! </p>"; 
} 

?> 

スクリプト

<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script> 
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script> 
+0

のvar_dumpましたか?もしそうなら、それは何を言っているのか、そうでないのか、それをして、それが何を言うのか教えてください。 – amflare

+0

@amflare PHPでの経験は全くありません...どうすればいいですか? –

+0

'var_dump($ _ POST);' – amflare

答えて

0

確認

LoadModule php5_module modules/libphp5.so 
ことを確認、あなたのApacheでPHPモジュールを有効

は、Apacheサーバのhttpd.confファイルにコメントされていないコードのこの部分を削除

+0

ええ、私は今これを振り返り、私もサーバーを使用していなかったことに気付きました。 –

-1

は私のために働いていた:あなたは、$ _POST変数を

action="php/sendemail.php" 
+0

うわー、私は何のために愚かなことを言う。それは恥ずかしいです。 –

関連する問題