Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Periksa email untuk menjadi php yang unik

  • Pertama.. karena @RamRaider sudah berkomentar, Anda harus menambahkan indeks unik ke email kolom
  • Kedua.. Anda harus berhenti menggunakan mysql_* berfungsi karena sudah usang. Anda dapat menggunakan mysqli_* fungsi, MySQLi kelas atau PDO . Selain itu, dengan menggunakan pernyataan yang telah disiapkan, Anda menghindari Injeksi SQL
  • Bahkan jika Anda menetapkan indeks unik, Anda harus selalu memverifikasi sebelum memasukkannya:

    <?php
    
    // PDO instantiation here
    
    $stmt = $pdo->prepare('SELECT COUNT(email) AS EmailCount FROM emails WHERE email = :email');
    $stmt->execute(array('email' => $_POST['email']));
    $result = $stmt->fetch(PDO::FETCH_ASSOC);
    
    if ($result['EmailCount'] == 0) {
        $stmt = $pdo->prepare('INSERT INTO emails (email) VALUES (:email)');
        $stmt->execute(array('email' => $_POST['email']));
        echo 'Thank you for Submitting. Redirecting back to Home Page';
    } else {
        echo 'E-mail exists!';
    }
    


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Server MySQL memulai masalah di Mavericks

  2. Pernyataan MySQL SELECT dengan satu bidang DISTINCT

  3. Permintaan SQL untuk teman bersama

  4. Masalah Kenaikan Otomatis di Mysql

  5. MySQL pilih setelah baris pada aturan tertentu