sql >> Databáze >  >> RDS >> Mysql

Zkontrolujte e-mail, aby byl jedinečný php

  • Nejprve.. jak již poznamenal @RamRaider, musíte do email přidat jedinečný index sloupec
  • Za druhé, musíte přestat používat mysql_* funkce, protože jsou zastaralé. Můžete použít mysqli_* funkce, MySQLi třídy nebo PDO . Použitím připravených příkazů se také vyhnete injekcím SQL
  • I když nastavíte jedinečný index, měli byste jej před vložením vždy ověřit:

    <?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. Zpracovat hodnotu NULL v UNPIVOT

  2. Efektivní ukládání obrázků nahraných uživatelem do systému souborů

  3. Jak vybrat rozsahy v rozsahu záznamu v oracle

  4. Automaticky vyplnit zemi a město z PSČ a naopak