netlify 是否阻止 php 表单处理?
Does netlify block php form handling?
我将我所有的网站都切换到 git 和 netlify,现在 none 的联系表格适用于我的静态网站。有谁知道他们是否阻止您使用自己的 php 表单处理?
他们以前都工作过。我阅读了一些关于表单处理的 netlify 信息,但它听起来不是强制性的。我想保留我已有的表格而不使用他们的。
这是我拥有的:
(我无法显示联系表格,因为堆栈溢出实际上是在挑选 html 并阅读它。没有发布代码。它只会把标签之间的文字放在上面而不是标签本身......虽然她是一张照片:
<script>
function submitContactForm(){
var reg = /^[A-Z0-9._%+-]+@([A-Z0-9-]+\.)+[A-Z]{2,4}$/i;
var name = $('#inputName').val();
var email = $('#inputEmail').val();
var phone = $('#inputPhone').val();
var message = $('#inputMessage').val();
if(name.trim() == '' ){
alert('Please enter your name.');
$('#inputName').focus();
return false;
}else if(email.trim() == '' ){
alert('Please enter your email.');
$('#inputEmail').focus();
return false;
}else if(email.trim() != '' && !reg.test(email)){
alert('Please enter valid email.');
$('#inputEmail').focus();
return false;
}else if(phone.trim() == '' ){
alert('Please enter valid phone number.');
$('#inputPhone').focus();
return false;
}else{
$.ajax({
type:'POST',
url:'contactForm.php',
data:'contactFrmSubmit=1&name='+name+'&email='+email+'&phone='+phone+'&message='+message,
beforeSend: function () {
$('.submitBtn').attr("disabled","disabled");
$('.modal-body').css('opacity', '.5');
},
success:function(msg){
if(msg == 'ok'){
$('#inputName').val('');
$('#inputEmail').val('');
$('#inputPhone').val('');
$('#inputMessage').val('');
$('.statusMsg').html('<span style="color:green;">Thanks for contacting us, we\'ll get back to you as soon as possible.</p>');
}else{
$('.statusMsg').html('<span style="color:red;">Some problem occurred, please try again.</span>');
}
$('.submitBtn').removeAttr("disabled");
$('.modal-body').css('opacity', '');
}
});
}
}
</script>
这是我在网上找到的:
$("#my-form").submit(function(e) {
e.preventDefault();
var $form = $(this);
$.post($form.attr("action"), $form.serialize()).then(function() {
alert("Thank you!");
});
});
根据表格的提交,目标 url 是 contactForm.php
。
$.ajax({
type:'POST',
url:'contactForm.php'
.
.
.....
尽管 Netlify 在静态站点构建时确实允许 运行 of PHP 代码,但 CDN 上没有 php 运行时,因此不会有php 处理您提交的端点。
这是不可能的。
一些选项
Post 您的表单到外部服务器(旧服务器)url 将接受您的 PHP 表单提交。
使用第三方表单 API 提交您的表单。
使用 Netlify 表单。
我将我所有的网站都切换到 git 和 netlify,现在 none 的联系表格适用于我的静态网站。有谁知道他们是否阻止您使用自己的 php 表单处理?
他们以前都工作过。我阅读了一些关于表单处理的 netlify 信息,但它听起来不是强制性的。我想保留我已有的表格而不使用他们的。
这是我拥有的: (我无法显示联系表格,因为堆栈溢出实际上是在挑选 html 并阅读它。没有发布代码。它只会把标签之间的文字放在上面而不是标签本身......虽然她是一张照片:
<script>
function submitContactForm(){
var reg = /^[A-Z0-9._%+-]+@([A-Z0-9-]+\.)+[A-Z]{2,4}$/i;
var name = $('#inputName').val();
var email = $('#inputEmail').val();
var phone = $('#inputPhone').val();
var message = $('#inputMessage').val();
if(name.trim() == '' ){
alert('Please enter your name.');
$('#inputName').focus();
return false;
}else if(email.trim() == '' ){
alert('Please enter your email.');
$('#inputEmail').focus();
return false;
}else if(email.trim() != '' && !reg.test(email)){
alert('Please enter valid email.');
$('#inputEmail').focus();
return false;
}else if(phone.trim() == '' ){
alert('Please enter valid phone number.');
$('#inputPhone').focus();
return false;
}else{
$.ajax({
type:'POST',
url:'contactForm.php',
data:'contactFrmSubmit=1&name='+name+'&email='+email+'&phone='+phone+'&message='+message,
beforeSend: function () {
$('.submitBtn').attr("disabled","disabled");
$('.modal-body').css('opacity', '.5');
},
success:function(msg){
if(msg == 'ok'){
$('#inputName').val('');
$('#inputEmail').val('');
$('#inputPhone').val('');
$('#inputMessage').val('');
$('.statusMsg').html('<span style="color:green;">Thanks for contacting us, we\'ll get back to you as soon as possible.</p>');
}else{
$('.statusMsg').html('<span style="color:red;">Some problem occurred, please try again.</span>');
}
$('.submitBtn').removeAttr("disabled");
$('.modal-body').css('opacity', '');
}
});
}
}
</script>
这是我在网上找到的:
$("#my-form").submit(function(e) {
e.preventDefault();
var $form = $(this);
$.post($form.attr("action"), $form.serialize()).then(function() {
alert("Thank you!");
});
});
根据表格的提交,目标 url 是 contactForm.php
。
$.ajax({
type:'POST',
url:'contactForm.php'
.
.
.....
尽管 Netlify 在静态站点构建时确实允许 运行 of PHP 代码,但 CDN 上没有 php 运行时,因此不会有php 处理您提交的端点。
这是不可能的。
一些选项
Post 您的表单到外部服务器(旧服务器)url 将接受您的 PHP 表单提交。
使用第三方表单 API 提交您的表单。
使用 Netlify 表单。