0
如何验证邮件上使用javascript时,服务器端无法验证客户端?从我的理解中,Javascript可以关闭,那么如何实现这一点,并防止我接收PCI警告?
$(document).ready(function() {
var clearMePrevious = "";
// clear input on focus
$("#email").focus(function() {
if($(this).val()==$(this).attr("title")) {
clearMePrevious = $(this).val();
$(this).val("");
}
});
// if field is empty afterward, add text again
$("#email").blur(function() {
if($(this).val()=="") {
$(this).val(clearMePrevious);
}
});
$('#submitemail').click(function() {
app.ajax.load({
reqName : 'emailSubmit',
url: '$httpUrl('Bronto-OptIn')$?email=' + $('#email').val(),
selector : '#emailbox',
callback: function(responseText, textStatus) { }
});
return false;
});
});
<form id="emailsignup_form" name="emailsignup_form" method="post" action="$httpUrl('Bronto-OptIn', 'fid', 'information')$">
<div class="fl"><input class="email-signup-input" type="text" title="Enter Your Email Address" value="Enter Your Email Address" name="email" id="email" /></div>
<div class="fl"><button class="email-signup-btn" value="Submit" name="submitemail" id="submitemail">Submit</button></div>
<div class="clear"> </div>
为什么能”服务器验证?无论你做什么,客户端验证都是不安全的。 – elclanrs
不完全了解你的问题。您可以使用正则表达式验证客户端(类似于** ^。+ @。+(\ .. +)+ $ **)。但是,如果用户禁用JavaScript,您总是希望再次在服务器上验证输入。这个问题与PCI有什么关系? – Sam
客户端验证通常只是给用户提供快速反馈,并且所有的验证都必须在服务器上重做,因为服务器必须保持其数据库不会收到不良内容,并保护自己免受恶意输入。 –