私の会社のステージングサーバー上に構築されたWebサイトを持つクライアントのカスタムフォームを作成しました。フォームはステージングサーバー上で正しく動作していますが、クライアントのサーバーに移動したので、動作しなくなりました。 JS内部では、ajaxはapex-email.phpの絶対URLを呼び出してフォームを処理しています。私は、ステージングサーバー上のファイルの場所にURLを使用すると、動作します。サーバー上のどこに変更すれば動作しないので、それはajaxの問題だと思っていますか?ここに私のコードは次のとおりです。PHPフォームが新しいホストに投稿されない
HTML:
<form id="apex-form" class="form-horizontal">
<div class="form-group col-md-6">
<label class="col-sm-12" for="firstname">First name: <span class="red-star">*</span></label>
<div class="col-sm-12">
<input class="form-control" type="text" name="firstname" id="firstname">
</div>
</div>
<div class="form-group col-md-6">
<label class="col-sm-12" for="lastname">Last name: <span class="red-star">*</span></label>
<div class="col-sm-12">
<input class="form-control" type="text" name="lastname" id="lastname">
</div>
</div>
<div class="clearfix"></div>
<div class="form-group col-md-6">
<label class="col-sm-12" for="name">Email: <span class="red-star">*</span></label>
<div class="col-sm-12">
<input class="form-control" type="email" name="email" id="email">
</div>
</div>
<div class="form-group col-md-6">
<label class="col-sm-12" for="phone">Phone: <span class="red-star">*</span></label>
<div class="col-sm-12">
<input class="form-control" type="tel" name="phone" id="phone">
</div>
</div>
<div class="clearfix"></div>
<div class="form-group col-md-6">
<label class="col-sm-12" for="company">Company Name: <span class="red-star">*</span></label>
<div class="col-sm-12">
<input class="form-control" type="text" name="company" id="company">
</div>
</div>
<div class="form-group col-md-6">
<label class="col-sm-12" for="website">Website URL:</label>
<div class="col-sm-12">
<input class="form-control" type="text" name="website" id="website">
</div>
</div>
<div class="clearfix"></div>
<div class="form-group col-md-12">
<label class="col-sm-12" for="address">Street Address: <span class="red-star">*</span></label>
<div class="col-sm-12">
<input class="form-control" type="text" name="address" id="address">
</div>
</div>
<div class="form-group col-md-12">
<label class="col-sm-12" for="addresstwo">Address Line 2:</label>
<div class="col-sm-12">
<input class="form-control" type="text" name="addresstwo" id="addresstwo">
</div>
</div>
<div class="form-group col-md-6">
<label class="col-sm-12" for="city">City: <span class="red-star">*</span></label>
<div class="col-sm-12">
<input class="form-control" type="text" name="city" id="city">
</div>
</div>
<div class="form-group col-md-6">
<label class="col-sm-12" for="state">State: <span class="red-star">*</span></label>
<div class="col-sm-12">
<select class="form-control validate[required]" name="state" id="state">
<option value="">Please Select One</option>
<option value="AL">Alabama</option>
<option value="AK">Alaska</option>
<option value="AZ">Arizona</option>
<option value="AR">Arkansas</option>
<option value="CA">California</option>
<option value="CO">Colorado</option>
<option value="CT">Connecticut</option>
<option value="DE">Delaware</option>
<option value="DC">District Of Columbia</option>
<option value="FL">Florida</option>
<option value="GA">Georgia</option>
<option value="HI">Hawaii</option>
<option value="ID">Idaho</option>
<option value="IL">Illinois</option>
<option value="IN">Indiana</option>
<option value="IA">Iowa</option>
<option value="KS">Kansas</option>
<option value="KY">Kentucky</option>
<option value="LA">Louisiana</option>
<option value="ME">Maine</option>
<option value="MD">Maryland</option>
<option value="MA">Massachusetts</option>
<option value="MI">Michigan</option>
<option value="MN">Minnesota</option>
<option value="MS">Mississippi</option>
<option value="MO">Missouri</option>
<option value="MT">Montana</option>
<option value="NE">Nebraska</option>
<option value="NV">Nevada</option>
<option value="NH">New Hampshire</option>
<option value="NJ">New Jersey</option>
<option value="NM">New Mexico</option>
<option value="NY">New York</option>
<option value="NC">North Carolina</option>
<option value="ND">North Dakota</option>
<option value="OH">Ohio</option>
<option value="OK">Oklahoma</option>
<option value="OR">Oregon</option>
<option value="PA">Pennsylvania</option>
<option value="RI">Rhode Island</option>
<option value="SC">South Carolina</option>
<option value="SD">South Dakota</option>
<option value="TN">Tennessee</option>
<option value="TX">Texas</option>
<option value="UT">Utah</option>
<option value="VT">Vermont</option>
<option value="VA">Virginia</option>
<option value="WA">Washington</option>
<option value="WV">West Virginia</option>
<option value="WI">Wisconsin</option>
<option value="WY">Wyoming</option>
</select>
</div>
</div>
<div class="form-group col-md-6">
<label class="col-sm-12" for="zip">Zip: <span class="red-star">*</span></label>
<div class="col-sm-12">
<input class="form-control" type="text" name="zip" id="zip">
</div>
</div>
<div class="clearfix"></div>
<hr/>
<div class="form-group col-md-6">
<label class="col-sm-12" for="numbercustomers">Number of Customers: <span class="red-star">*</span></label>
<div class="col-sm-12">
<input class="form-control" type="number" name="numbercustomers" id="numbercustomers">
</div>
</div>
<div class="form-group col-md-6">
<label class="col-sm-12" for="averageemp">Average Number of Employees per Customer: <span class="red-star">*</span></label>
<div class="col-sm-12">
<input class="form-control" type="number" name="averageemp" id="averageemp">
</div>
</div>
<div class="clearfix"></div>
<div class="form-group col-md-6">
<label class="col-sm-12" for="numberchecks">Number of Checks Per Month: <span class="red-star">*</span></label>
<div class="col-sm-12">
<input class="form-control" type="number" name="numberchecks" id="numberchecks">
</div>
</div>
<div class="form-group col-md-6">
<label class="col-sm-12" for="currentsoftware">Current Payroll Software: <span class="red-star">*</span></label>
<div class="col-sm-12">
<input class="form-control" type="text" name="currentsoftware" id="currentsoftware">
</div>
</div>
<div class="clearfix"></div>
<div class="form-group col-md-12">
<label class="col-sm-12" for="howhear">How did you hear about us? <span class="red-star">*</span></label>
<div class="col-sm-12">
<input class="form-control" type="text" name="howhear" id="howhear">
</div>
</div>
<div class="form-group col-md-12"><label class="col-sm-12" for="addcomments">Additional Comments:</label><br/>
<div class="col-sm-12"><textarea name="addcomments" id="addcomments" class="form-control col-sm-12 textarea" rows="3"></textarea></div>
</div>
<div class="form-group col-md-12"><button type="submit" name="send" class="free-button btn btn-default" id="submitBtn">Submit</button></div>
</form>
JS:
$('#apex-form').validate({ // initialize the plugin
rules: {
firstname: {
required: true
},
lastname: {
required: true
},
email: {
required: true,
email: true
},
phone: {
required: true
},
company: {
required: true
},
address: {
required: true
},
city: {
required: true
},
state: {
required: true
},
zip: {
required: true
},
numbercustomers: {
required: true
},
averageemp: {
required: true
},
numberchecks: {
required: true
},
currentsoftware: {
required: true
},
howhear: {
required: true
}
},
submitHandler: function(form) {
var data = $(form).serialize();
$.ajax({
type: 'POST',
url: 'http://mycompanysstagingsite.com/wp-content/themes/apex/apex-email.php',
data: $("#apex-form").serialize(),
success: function(d){
$(".form-wrap").hide();
$(".result").show(d);
}
});
}
});
頂点-email.php:
<?php
$to = '[email protected]';
$subject = 'Example Subject';
date_default_timezone_set("America/New_York");
$emailTime = date('Y-m-d H:i:s');
$firstname = 'First Name: ' . $_POST['firstname'] . "\r\n";
$lastname = 'Last Name: ' . $_POST['lastname'] . "\r\n";
$email = 'Email: ' . $_POST['email'] . "\r\n";
$phone = 'Main Phone: ' . $_POST['phone'] . "\r\n";
$company = 'Company Name: ' . $_POST['company'] . "\r\n";
$website = 'Website: ' . $_POST['website'] . "\r\n";
$address = 'Address 1: ' . $_POST['address'] . "\r\n";
$addresstwo = 'Address 2: ' . $_POST['addresstwo'] . "\r\n";
$city = 'City: ' . $_POST['city'] . "\r\n";
$state = 'State: ' . $_POST['state'] . "\r\n";
$zip = 'Zip: ' . $_POST['zip'] . "\r\n";
$referral = 'Referral: Apex Contact Info Web Form' . "\r\n";
$numbercustomers = '# of Clients: ' . $_POST['numbercustomers'] . "\r\n";
$averageemp = 'Active # of EEs: ' . $_POST['averageemp'] . "\r\n";
$numberchecks = '# of Checks/Month: ' . $_POST['numberchecks'] . "\r\n";
$currentsoftware = 'Current Software: ' . $_POST['currentsoftware'] . "\r\n";
$addcomments = "Prospect's Comments: " . $_POST['addcomments'];
$emailmessage = $firstname .' '. $lastname .' '. $phone .' ' . $email .' ' . $company .' ' . $website .' ' . $address .' ' . $addresstwo .' ' . $city .' ' . $state .' ' . $zip .' ' . $referral .' ' . $numbercustomers .' ' . $averageemp .' ' . $numberchecks .' ' . $currentsoftware .' ' . $addcomments;
$headers = 'From: [email protected] ' . "\r\n"; // From email
$headers .= 'Cc: ' . "\r\n";
$headers .= 'Bcc: ' . "\r\n";
$headers .= 'Return-Path : ' . "\r\n";
$headers .= 'X-Mailer: PHP' . "\r\n";
$headers .= 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-Type: text/html; charset=iso-8859-1' . "\r\n";
mail($to, $subject, $emailTime, $emailmessage, $headers);
?>
編集:私は可能である。このに探していますGoDaddyの問題と、それらが最後にどのように構成されているかを示します。あなたは、クロスオリジン・スクリプティングの問題を抱えている
エラーはどこですか?エラーは何を言いますか?あなたは両方のPHPエラーログとコンソールのエラーをチェックしましたか? *それはうまくいかない*誰もあなたを助けない:p – skrilled
@ skrilled - それは私が把握しようとしているものです。 :)それは私たちのサーバー上で完璧に動作しています。しかし、サーバ上でapex-email.phpを実行したいとは思われません。 –
PHPのエラーログをチェックさせてください。 –