recherche
Maisoninterface Webjs tutorielComment utiliser le plug-in de validation de formulaire Jquery formValidator_jquery

使用步骤:

1.首先在项目中添加必备js与css

 

2.代码中添加引用(必备引用)

  <script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script> <!--jquery必须库-->
  <script src="formValidator1/formValidator-4.0.1.min.js" type="text/javascript"></script> <!--表单验证必须库-->
  <script src="formValidator1/formValidatorRegex.js" type="text/javascript"></script> <!--表单验证扩展库-->
  <link href="formValidator1/style/validator.css" rel="stylesheet" type="text/css" /><!--表单验证样式表-->

3.

中要验证的标签(做一些常用的演示)
<table border="0px" style="font-size:12px">
 <tr> 
   <td colpan="3"><input type="submit" name="button" id="button" value="提交" /></td>
  </tr>
  <tr> 
   <td align="right">身份证(正则表达式库):</td>
   <td><input name="sfz" type="text" id="sfz" /></td>
   <td><div id="sfzTip" style="width:300px"></div></td> <!--必须注意这里提示验证信息中的div的id值,跟要验证控件中的id值多了一个Tip,下面的都是这样。必须多的是Tip,也必须要多。-->
  </tr>
  <tr> 
   <td align="right">身份证(外部函数):</td>
   <td><input type="text" id="sfz1" style="width:120px" /></td>
   <td><div id="sfz1Tip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">整数:</td>
   <td><input type="text" id="zs" style="width:120px" /></td>
   <td><div id="zsTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">正整数:</td>
   <td><input type="text" id="zzs" style="width:120px" /></td>
   <td><div id="zzsTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">负整数:</td>
   <td><input type="text" id="fzs" style="width:120px" /></td>
   <td><div id="fzsTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">数字:</td>
   <td><input type="text" id="sz" style="width:120px" /></td>
   <td><div id="szTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">正数(正整数 + 0):</td>
   <td><input type="text" id="zs1" style="width:120px" /></td>
   <td><div id="zs1Tip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">负数(负整数 + 0):</td>
   <td><input type="text" id="fs" style="width:120px" /></td>
   <td><div id="fsTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">浮点数:</td>
   <td><input type="text" id="fds" style="width:120px" /></td>
   <td><div id="fdsTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">正浮点数:</td>
   <td><input type="text" id="zfds" style="width:120px" /></td>
   <td><div id="zfdsTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">负浮点数:</td>
   <td><input type="text" id="ffds" style="width:120px" /></td>
   <td><div id="ffdsTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">非负浮点数(正浮点数 + 0):</td>
   <td><input type="text" id="fffds" style="width:120px" /></td>
   <td><div id="fffdsTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">非正浮点数(负浮点数 + 0):</td>
   <td><input type="text" id="fzfds" style="width:120px" /></td>
   <td><div id="fzfdsTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">颜色:</td>
   <td><input type="text" id="ys" style="width:120px" /></td>
   <td><div id="ysTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">你的EMAIL:</td>
   <td><input type="text" id="email" style="width:120px" /></td>
   <td><div id="emailTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">手机:</td>
   <td><input type="text" id="sj" style="width:120px" /></td>
   <td><div id="sjTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">邮编:</td>
   <td><input type="text" id="yb" style="width:120px" /></td>
   <td><div id="ybTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">非空:</td>
   <td><input type="text" id="fk" style="width:120px" /></td>
   <td><div id="fkTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">图片:</td>
   <td><input type="text" id="tp" style="width:120px" /></td>
   <td><div id="tpTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">压缩文件:</td>
   <td><input type="text" id="rar" style="width:120px" /></td>
   <td><div id="rarTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">ip4:</td>
   <td><input type="text" id="ip4" style="width:120px" /></td>
   <td><div id="ip4Tip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">QQ号码:</td>
   <td><input type="text" id="qq" style="width:120px" /></td>
   <td><div id="qqTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">国内电话:</td>
   <td><input type="text" id="dh" style="width:120px" /></td>
   <td><div id="dhTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">用户名:</td>
   <td><input type="text" id="yhm" style="width:120px" /></td>
   <td><div id="yhmTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">字母:</td>
   <td><input type="text" id="zm" style="width:120px" /></td>
   <td><div id="zmTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">大写字母:</td>
   <td><input type="text" id="dxzm" style="width:120px" /></td>
   <td><div id="dxzmTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">小写字母:</td>
   <td><input type="text" id="xxzm" style="width:120px" /></td>
   <td><div id="xxzmTip" style="width:300px"></div></td>
  </tr>
  <tr> 
   <td align="right">身份证:</td>
   <td><input type="text" id="sfz" style="width:120px" /></td>
   <td><div id="sfzTip" style="width:300px"></div></td>
  </tr>
 </table>

4.<script>中的代码<br /> </script>

<script type="text/javascript">
  $(document).ready(function () {
   $.formValidator.initConfig({ formID: "form1", onError: function () { alert("校验没有通过,具体错误请看错误提示") } });
   $("#sfz").formValidator({ onShow: "请输入15或18位的身份证", onfocus: "输入15或18位的身份证", onCorrect: "输入正确" }).regexValidator({ regExp: "idcard", dataType: "enum", onError: "你输入的身份证格式不正确" }); ;
   $("#sfz1").formValidator({ onShow: "请输入15或18位的身份证", onfocus: "输入15或18位的身份证", onCorrect: "输入正确" }).functionValidator({ fun: isCardID });

   $("#zs").formValidator({ onShow: "请输入整数", onCorrect: "谢谢你的合作,你的整数正确" }).regexValidator({ regExp: "intege", dataType: "enum", onError: "整数格式不正确" });
   $("#zzs").formValidator({ onShow: "请输入正整数", onCorrect: "谢谢你的合作,你的正整数正确" }).regexValidator({ regExp: "intege1", dataType: "enum", onError: "正整数格式不正确" });
   $("#fzs").formValidator({ onShow: "请输入负整数", onCorrect: "谢谢你的合作,你的负整数正确" }).regexValidator({ regExp: "intege2", dataType: "enum", onError: "负整数格式不正确" });
   $("#sz").formValidator({ onShow: "请输入数字", onCorrect: "谢谢你的合作,你的数字正确" }).regexValidator({ regExp: "num", dataType: "enum", onError: "数字格式不正确" });
   $("#zs1").formValidator({ onShow: "请输入正数", onCorrect: "谢谢你的合作,你的正数正确" }).regexValidator({ regExp: "num1", dataType: "enum", onError: "正数格式不正确" });
   $("#fs").formValidator({ onShow: "请输入负数", onCorrect: "谢谢你的合作,你的负数正确" }).regexValidator({ regExp: "num2", dataType: "enum", onError: "负数格式不正确" });

   $("#sj").formValidator({ onShow: "请输入你的手机号码", onfocus: "必须是13或15打头哦", onCorrect: "谢谢你的合作,你的手机号码正确" }).regexValidator({ regExp: "mobile", dataType: "enum", onError: "手机号码格式不正确" });
   //$("#").formValidator({onShow:"",onfocus:"请输入",onCorrect:"谢谢你的合作,你的正确"}).regexValidator({regExp:"",dataType:"enum",onError:"格式不正确"});
   $("#email").formValidator({ onShow: "请输入你的email", onfocus: "请注意你输入的email格式,例如:wzmaodong@126.com", onCorrect: "谢谢你的合作,你的email正确" }).regexValidator({ regExp: "email", dataType: "enum", onError: "email格式不正确" });
   $("#fds").formValidator({ onShow: "请输入浮点数", onCorrect: "谢谢你的合作,你的浮点数正确" }).regexValidator({ regExp: "decmal", dataType: "enum", onError: "浮点数格式不正确" });
   $("#zfds").formValidator({ onShow: "请输入正浮点数", onCorrect: "谢谢你的合作,你的正浮点数正确" }).regexValidator({ regExp: "decmal1", dataType: "enum", onError: "正浮点数格式不正确" });
   $("#ffds").formValidator({ onShow: "请输入负浮点数", onCorrect: "谢谢你的合作,你的负浮点数正确" }).regexValidator({ regExp: "decmal2", dataType: "enum", onError: "负浮点数格式不正确" });
   $("#fffds").formValidator({ onShow: "请输入非负浮点数", onCorrect: "谢谢你的合作,你的非负浮点数正确" }).regexValidator({ regExp: "decmal4", dataType: "enum", onError: "非负浮点数格式不正确" });
   $("#fzfds").formValidator({ onShow: "请输入非正浮点数", onCorrect: "谢谢你的合作,你的非正浮点数正确" }).regexValidator({ regExp: "decmal5", dataType: "enum", onError: "非正浮点数格式不正确" });
   $("#ys").formValidator({ onShow: "请输入16进制颜色", onCorrect: "谢谢你的合作,你的16进制颜色正确" }).regexValidator({ regExp: "color", dataType: "enum", onError: "16进制颜色格式不正确" });
   $("#yb").formValidator({ onShow: "请输入邮编", onfocus: "6位数字组成的哦", onCorrect: "谢谢你的合作,你的邮编正确" }).regexValidator({ regExp: "zipcode", dataType: "enum", onError: "邮编格式不正确" });
   $("#ip4").formValidator({ onShow: "请输入ip4", onfocus: "例如:172.16.201.18", onCorrect: "谢谢你的合作,你的ip4正确" }).regexValidator({ regExp: "ip4", dataType: "enum", onError: "ip4格式不正确" });
   $("#fk").formValidator({ onShow: "请输入非空字符", onCorrect: "谢谢你的合作,你的非空字符正确" }).regexValidator({ regExp: "notempty", dataType: "enum", onError: "非空字符格式不正确" });
   $("#tp").formValidator({ onShow: "请输入图片名", onCorrect: "谢谢你的合作,你的图片名正确" }).regexValidator({ regExp: "picture", dataType: "enum", onError: "图片名格式不正确" });
   $("#rar").formValidator({ onShow: "请输入压缩文件名", onCorrect: "谢谢你的合作,你的压缩文件名正确" }).regexValidator({ regExp: "rar", dataType: "enum", onError: "压缩文件名格式不正确" });
   $("#qq").formValidator({ onShow: "请输入QQ号码", onCorrect: "谢谢你的合作,你的QQ号码正确" }).regexValidator({ regExp: "qq", dataType: "enum", onError: "QQ号码格式不正确" });
   $("#dh").formValidator({ onShow: "请输入国内电话", onfocus: "例如:0577-88888888或省略区号88888888", onCorrect: "谢谢你的合作,你的国内电话正确" }).regexValidator({ regExp: "tel", dataType: "enum", onError: "国内电话格式不正确" });
   $("#yhm").formValidator({ onShow: "请输入用户名", onCorrect: "谢谢你的合作,你的用户名正确" }).regexValidator({ regExp: "username", dataType: "enum", onError: "用户名格式不正确" });
   $("#zm").formValidator({ onShow: "请输入字母", onCorrect: "谢谢你的合作,你的字母正确" }).regexValidator({ regExp: "letter", dataType: "enum", onError: "字母格式不正确" });
   $("#dxzm").formValidator({ onShow: "请输入大写字母", onCorrect: "谢谢你的合作,你的大写字母正确" }).regexValidator({ regExp: "letter_u", dataType: "enum", onError: "大写字母格式不正确" });
   $("#xxzm").formValidator({ onShow: "请输入小写字母", onCorrect: "谢谢你的合作,你的小写字母正确" }).regexValidator({ regExp: "letter_l", dataType: "enum", onError: "小写字母格式不正确" });
   $("#sfz").formValidator({ onShow: "请输入身份证", onCorrect: "谢谢你的合作,你的身份证正确" }).regexValidator({ regExp: "idcard", dataType: "enum", onError: "身份证格式不正确" });
  });
</script>

5.效果图:

6.添加修改说明:

 $.formValidator.reloadAutoTip(); //重新加载表单验证样式
        if(!$.formValidator.pageIsValid('1')) return false;  //如果不通过则不提交
 


    $(document).ready(function () {
      $.formValidator.initConfig({ formID: "form1", onError: function () { alert("校验没有通过,具体错误请看错误提示") } });
      $("#name").formValidator({ onShow: "请输入姓名!", onFocus: "输入一个到十个字符", onCorrect: "输入正确,谢谢您的合作!" }).inputValidator({ min: 1, max: 20, onError: "输入长度,不对!" });
      $("#timelong").formValidator({ onShow: "请输入路演时长!", onFocus: "输入格式为正整数!", onCorrect: "输入正确,谢谢您的合作!" }).regexValidator({ regExp:"intege1",dataType: "enum", onError: "您输入的时长格式不正确!" });
      $("#address").formValidator({ onShow: "请输入路演平台名称!", onFocus: "输入一个到五十个字符", onCorrect: "输入正确,谢谢您的合作!" }).inputValidator({ min: 1, max: 50, onError: "输入长度,不对!" });
      $("#urladdress").formValidator({ onShow: "请输入路演链接地址!", onFocus: "输入格式:http://www.baidu.com", onCorrect: "输入正确,谢谢您的合作!" }).regexValidator({ regExp:"^(http|https|ftp)\://([a-zA-Z0-9\.\-]+(\:[a-zA-Z0-9\.&%\$\-]+)*@)*((25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])|localhost|([a-zA-Z0-9\-]+\.)*[a-zA-Z0-9\-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(\:[0-9]+)*(/($|[a-zA-Z0-9\.\,\&#63;\'\\\+&%\$#\=~_\-]+))*$", onError: "输入格式不正确!" });
      $("#time").formValidator({ onCorrect: "格式正确" }).functionValidator({fun:isDateTime, onError: "输入格式,不对!" });
      $("#txtcontent").formValidator({ onShow: "请输入专家简介!", onFocus: "输入一个到一百个字符", onCorrect: "输入正确,谢谢您的合作!" }).inputValidator({ min: 1, max: 100, onError: "输入长度,不对!" });
    });

ajax验证用户是否存在

js代码 (html中一定要设置name值,否则动态是获取不到值的)

$("#userID").formValidator({ ajax:true,onShow: "请输入账号", onfocus: "最好以字母开头,只能由字母数字组成 ,不能少于6个字符。", onCorrect: "用户名可以使用,请完善下面信息。" }).regexValidator({ regExp: "username", dataType: "enum", onError: "你输入的格式不正确!" }).inputValidator({ min: 6, max: 16, onError: "输入长度不正确!" })
       .ajaxValidator({
         dataType: "text",
         async: true,
         url: "Tool/AddUser.ashx",
         success: function (data) {
           if (data == "0") { return true; }
           else if (data == "null") { return "注意:用户名不能少于6个字符。"; }
           else if (data == "false") { return "该用户名已被注册,请更换用户名。"; }
         },
         buttons: $("#button"),
         error: function (jqXHR, textStatus, errorThrown) { alert("服务器没有返回数据,可能服务器忙,请重试" + errorThrown); },
         onError: "该用户名不可用,请更换用户名",
         onWait: "正在对用户名进行合法性校验,请稍候..."
       }).defaultPassed();  //这里添加defaultPassed()的话,则默认验证通过。

一般处理程序代码

public void ProcessRequest(HttpContext context)
    {
      context.Response.ContentType = "text/plain";
      #region 判断用户是否被注册过
      string returnStr = "";
      //这里其实是context.Request.QueryString根据name获取的值 一定要设置空间的name值
      if (context.Request["userName"] != null && context.Request["userName"].ToString().Length > 0)
      {
        if (isExist(context.Request["userName"].ToString()))
        {
          returnStr = "false";
        }
        else
        {
          returnStr = "0";
        }        
      }
      else
      {
        returnStr = "null";
      }
      context.Response.Write(returnStr);
      context.Response.End();
      #endregion
    }

    #region 判断用户是否被注册过
    public bool isExist(string userName)
    {
      Snet.BLL.UserAccount bll = new BLL.UserAccount();
      return bll.Exists(userName);
    }
    #endregion


以上就是本文的全部内容,希望对大家的学习有所帮助。

Déclaration
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
C et JavaScript: la connexion expliquéeC et JavaScript: la connexion expliquéeApr 23, 2025 am 12:07 AM

C et JavaScript réalisent l'interopérabilité via WebAssembly. 1) Le code C est compilé dans le module WebAssembly et introduit dans un environnement JavaScript pour améliorer la puissance de calcul. 2) Dans le développement de jeux, C gère les moteurs de physique et le rendu graphique, et JavaScript est responsable de la logique du jeu et de l'interface utilisateur.

Des sites Web aux applications: les diverses applications de JavaScriptDes sites Web aux applications: les diverses applications de JavaScriptApr 22, 2025 am 12:02 AM

JavaScript est largement utilisé dans les sites Web, les applications mobiles, les applications de bureau et la programmation côté serveur. 1) Dans le développement de sites Web, JavaScript exploite DOM avec HTML et CSS pour réaliser des effets dynamiques et prend en charge des cadres tels que JQuery et React. 2) Grâce à la réactnative et ionique, JavaScript est utilisé pour développer des applications mobiles multiplateformes. 3) Le cadre électronique permet à JavaScript de créer des applications de bureau. 4) Node.js permet à JavaScript d'exécuter le côté du serveur et prend en charge les demandes simultanées élevées.

Python vs JavaScript: cas d'utilisation et applications comparéesPython vs JavaScript: cas d'utilisation et applications comparéesApr 21, 2025 am 12:01 AM

Python est plus adapté à la science et à l'automatisation des données, tandis que JavaScript est plus adapté au développement frontal et complet. 1. Python fonctionne bien dans la science des données et l'apprentissage automatique, en utilisant des bibliothèques telles que Numpy et Pandas pour le traitement et la modélisation des données. 2. Python est concis et efficace dans l'automatisation et les scripts. 3. JavaScript est indispensable dans le développement frontal et est utilisé pour créer des pages Web dynamiques et des applications à une seule page. 4. JavaScript joue un rôle dans le développement back-end via Node.js et prend en charge le développement complet de la pile.

Le rôle de C / C dans les interprètes et compilateurs JavaScriptLe rôle de C / C dans les interprètes et compilateurs JavaScriptApr 20, 2025 am 12:01 AM

C et C jouent un rôle essentiel dans le moteur JavaScript, principalement utilisé pour implémenter des interprètes et des compilateurs JIT. 1) C est utilisé pour analyser le code source JavaScript et générer une arborescence de syntaxe abstraite. 2) C est responsable de la génération et de l'exécution de bytecode. 3) C met en œuvre le compilateur JIT, optimise et compile le code de point chaud à l'exécution et améliore considérablement l'efficacité d'exécution de JavaScript.

JavaScript en action: Exemples et projets du monde réelJavaScript en action: Exemples et projets du monde réelApr 19, 2025 am 12:13 AM

L'application de JavaScript dans le monde réel comprend un développement frontal et back-end. 1) Afficher les applications frontales en créant une application de liste TODO, impliquant les opérations DOM et le traitement des événements. 2) Construisez RestulAPI via Node.js et Express pour démontrer les applications back-end.

Javascript et le web: fonctionnalité de base et cas d'utilisationJavascript et le web: fonctionnalité de base et cas d'utilisationApr 18, 2025 am 12:19 AM

Les principales utilisations de JavaScript dans le développement Web incluent l'interaction client, la vérification du formulaire et la communication asynchrone. 1) Mise à jour du contenu dynamique et interaction utilisateur via les opérations DOM; 2) La vérification du client est effectuée avant que l'utilisateur ne soumette les données pour améliorer l'expérience utilisateur; 3) La communication de rafraîchissement avec le serveur est réalisée via la technologie AJAX.

Comprendre le moteur JavaScript: détails de l'implémentationComprendre le moteur JavaScript: détails de l'implémentationApr 17, 2025 am 12:05 AM

Comprendre le fonctionnement du moteur JavaScript en interne est important pour les développeurs car il aide à écrire du code plus efficace et à comprendre les goulots d'étranglement des performances et les stratégies d'optimisation. 1) Le flux de travail du moteur comprend trois étapes: analyse, compilation et exécution; 2) Pendant le processus d'exécution, le moteur effectuera une optimisation dynamique, comme le cache en ligne et les classes cachées; 3) Les meilleures pratiques comprennent l'évitement des variables globales, l'optimisation des boucles, l'utilisation de const et de locations et d'éviter une utilisation excessive des fermetures.

Python vs JavaScript: la courbe d'apprentissage et la facilité d'utilisationPython vs JavaScript: la courbe d'apprentissage et la facilité d'utilisationApr 16, 2025 am 12:12 AM

Python convient plus aux débutants, avec une courbe d'apprentissage en douceur et une syntaxe concise; JavaScript convient au développement frontal, avec une courbe d'apprentissage abrupte et une syntaxe flexible. 1. La syntaxe Python est intuitive et adaptée à la science des données et au développement back-end. 2. JavaScript est flexible et largement utilisé dans la programmation frontale et côté serveur.

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Télécharger la version Mac de l'éditeur Atom

Télécharger la version Mac de l'éditeur Atom

L'éditeur open source le plus populaire

DVWA

DVWA

Damn Vulnerable Web App (DVWA) est une application Web PHP/MySQL très vulnérable. Ses principaux objectifs sont d'aider les professionnels de la sécurité à tester leurs compétences et leurs outils dans un environnement juridique, d'aider les développeurs Web à mieux comprendre le processus de sécurisation des applications Web et d'aider les enseignants/étudiants à enseigner/apprendre dans un environnement de classe. Application Web sécurité. L'objectif de DVWA est de mettre en pratique certaines des vulnérabilités Web les plus courantes via une interface simple et directe, avec différents degrés de difficulté. Veuillez noter que ce logiciel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version anglaise

SublimeText3 version anglaise

Recommandé : version Win, prend en charge les invites de code !