繁体   English   中英

Jquery 验证:如何调用 PHP 文件

[英]Jquery Validate: How do I call the PHP file

我对这个 javascipt,jquery 世界非常陌生,我很难掌握它。

我的 HTML 中有以下内容

$(document).ready(function(){
   $("#frmEnquiry").validate();
});  
</script>

尽管我不明白该语句背后发生了什么,但它可以工作,尤其是当它在每个字段条目上进行验证时(这很棒)。

我的表单定义中有 action="" 和一个提交按钮,并且我创建了一个 process.php 文件,该文件进一步验证并发送 email,但我不知道我如何调用该 ZE1BFD762321E409CEE4AC0B6E81 文件语法是用来做的。 我假设它基于 validate() 的返回。

此外,从 PHP 文件返回成功或失败消息的正确程序是什么。

如果有人可以在简单的语法级别上提供帮助,我将不胜感激,因为我已经看过这么多可能的解决方案,我的脑袋完全糊涂了。

对于可能提出一个非常常见的问题,我深表歉意,但是当您刚开始时,很难找到一个您完全理解的示例。

不要忘记原则:

  • PHP 在服务器端执行
  • javascript 在客户端执行

因此,PHP 只有在您调用服务器时才会执行,也就是说,如果您调用 URL (http://mydomain.com/MyPHPpage.php) 或者如果您通过ZA34A6659BCEAE7ABFCAE5Z 请求调用您的服务器(看似757ABFCAE5Z11相同,除了没有重新加载客户端)。

相反, javascript 仅称为 client-side 因此,用于validate()您的表单的代码仅在客户端调用(除非您有一个特定的 function 后面会调用服务器)。 因此,javascript 将使用您给他的参数来验证表单,而无需调用服务器 这是一个很好的方法,不会因为不需要的请求(空字段、错误的电子邮件地址......)而使您的服务器过载。

无论如何,您仍然可以在服务器端进行一些其他检查(如果用户存在则检查您的数据库......)并向用户返回另一条消息。

为了回答您的问题,我会问其他一些问题:您要验证什么? 你想检查客户端还是服务器端? 哪些数据和用于什么目的?

嗯,有两种通用方法:

  1. Oldschool 表单处理:您设置<form action='process.php'>以便将您的请求提交到该页面。 浏览器重新加载并显示您在进程中渲染的内容process.php
  2. Ajax-submit:这样你将action留空,用类似<form onSubmit = 'return false'>东西阻止提交,然后使用 jQuery 的 AJAX 方法之一发送内容: getpostajax 它看起来像这样:

     $(document).ready(function(){ if($('form').validate()){ $('form').submit(function{ //Personally I prefer ajax as get and post are just shorthands for this method $.ajax({ url:'process.php', dataType:'json', data:{name:nameVal, value:valueVal} success: function(){ /*server returned some data, process it as you wish*/ } }); }); } });

您需要对 PHP 脚本进行 AJAX 调用。 如果您的表单数据有效,您将进行此类调用。 您可以将成功回调分配给 ajax 请求,您可以在其中处理来自 PHP 的返回数据并更新数据、显示错误消息或其他内容。 从 PHP 您可以返回 object 或数组,您可以在其中详细说明是否发生错误以及错误类型。 更多关于 AJAX -> http://api.jquery.com/jQuery.ajax/

在您的情况下,通过检查每个字段的值通过 javascript 执行表单验证是合理的。 无需向服务器发送数据并接收有关其正确性的信息。 这种方法使验证复杂化,并且不能提高对不良数据的保护。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM