Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara menambah pengesahan e-mel pada borang PHP untuk meningkatkan keselamatan

Cara menambah pengesahan e-mel pada borang PHP untuk meningkatkan keselamatan

PHPz
PHPzasal
2023-06-24 08:42:061209semak imbas

Dengan kemajuan berterusan teknologi rangkaian, aplikasi laman web menjadi semakin matang, tetapi terdapat juga lebih banyak serangan terhadap program. Antaranya, kaedah serangan biasa ialah menggunakan kelemahan untuk menyuntik kod jahat ke dalam laman web untuk mendapatkan maklumat sensitif laman web tersebut. Untuk mengukuhkan keselamatan tapak web, kami bukan sahaja perlu mengukuhkan kawalan keselamatan di latar belakang, tetapi juga perlu menambah mekanisme pengesahan pada borang bahagian hadapan.

Artikel ini menggunakan borang PHP untuk mengesahkan alamat e-mel bagi meningkatkan keselamatan borang hadapan. Dengan mempelajari artikel ini, anda akan belajar cara menggunakan PHP untuk menulis kod pengesahan e-mel dan menggunakannya pada borang.

  1. Pembinaan borang HTML

Sebelum menulis kod PHP, anda perlu membina borang HTML terlebih dahulu. Bina borang asas menggunakan teg ff9c23ada1bcecdd1a0fb5d5a0f18437 HTML dan teg d5fd7aea971a85678ba271703566ebfd

<form method="post" action="submit.php">
  <label>姓名</label>
  <input type="text" name="name"><br>
  <label>电子邮箱</label>
  <input type="text" name="email"><br>
  <input type="submit" name="submit" value="提交">
</form>
  1. Penulisan kod PHP

Selepas borang diserahkan, alamat e-mel yang dimasukkan disahkan. PHP menyediakan fungsi filter_var() untuk mengesahkan sama ada alamat e-mel yang dimasukkan mematuhi format yang ditentukan. Jika alamat e-mel yang dimasukkan mematuhi format yang ditentukan, maklumat yang betul akan dicetak, jika tidak, pengguna akan digesa untuk memasukkan format alamat e-mel yang salah.

<?php
if (isset($_POST['submit'])) {
  $name = $_POST['name'];
  $email = $_POST['email'];

  // 验证电子邮箱格式是否正确
  if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
    echo "电子邮箱格式不正确!";
  }
  else {
    echo "姓名:".$name."<br>";
    echo "电子邮箱:".$email."<br>";
  }
}
?>
  1. Menulis kod JavaScript

Untuk menjadikan pengalaman pengguna lebih baik, kami boleh menggunakan kod JavaScript untuk mengesahkan format e-mel apabila pengguna meninggalkan kotak input. Apabila pengguna meninggalkan kotak input e-mel, sahkan bahawa alamat e-mel yang dimasukkan mematuhi format yang ditentukan. Jika format e-mel tidak betul, kotak gesaan akan muncul untuk menggesa pengguna memasukkannya semula.

<script>
function checkEmail() {
  var email = document.getElementById("email").value;
  var regExp = /^([w_.-+])+@([w-]+.)+([w]{2,10})+$/;
  if (!regExp.test(email)) {
    alert("电子邮箱格式不正确!");
    document.getElementById("email").focus();
    return false;
  }
  return true;
}
</script>
  1. Sepadukan tiga kod

Dua keping kod di atas melengkapkan pengesahan e-mel asas, tetapi dalam proses permohonan sebenar, kita sering perlu menyepadukan HTML, PHP, kod JavaScript.

<html>
<head>
  <title>电子邮箱验证</title>
  <script>
    function checkEmail() {
      var email = document.getElementById("email").value;
      var regExp = /^([w_.-+])+@([w-]+.)+([w]{2,10})+$/;
      if (!regExp.test(email)) {
        alert("电子邮箱格式不正确!");
        document.getElementById("email").focus();
        return false;
      }
      return true;
    }
  </script>
</head>
<body>
  <form method="post" action="submit.php" onsubmit="return checkEmail()">
    <label>姓名</label>
    <input type="text" name="name"><br>
    <label>电子邮箱</label>
    <input type="text" name="email" id="email"><br>
    <input type="submit" name="submit" value="提交">
  </form>
  <?php
  if (isset($_POST['submit'])) {
    $name = $_POST['name'];
    $email = $_POST['email'];

    // 验证电子邮箱格式是否正确
    if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
      echo "电子邮箱格式不正确!";
    }
    else {
      echo "姓名:" . $name . "<br>";
      echo "电子邮箱:" . $email . "<br>";
    }
  }
  ?>
</body>
</html>

Kami menggunakan acara onsubmit untuk mencetuskan kod JavaScript untuk melengkapkan pengesahan format e-mel. Dengan menyepadukan tiga keping kod di atas, kami boleh menambah pengesahan e-mel pada borang untuk meningkatkan keselamatan bahagian hadapan.

Ringkasan:

Artikel ini menyediakan kaedah pengesahan e-mel berasaskan PHP dan menggunakan kod JavaScript untuk meningkatkan pengalaman pengguna. Dengan mempelajari artikel ini, anda boleh mengetahui lebih lanjut tentang cara menambahkan mekanisme pengesahan pada borang anda untuk menambah lebih keselamatan pada tapak web anda. Dalam aplikasi sebenar, kami juga boleh menambah baik mekanisme pengesahan mengikut keperluan khusus.

Atas ialah kandungan terperinci Cara menambah pengesahan e-mel pada borang PHP untuk meningkatkan keselamatan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn