проста проверка на скрип

mirela_ivanova_

Registered
някой може ли да направи този скрип преди да запише в sql да проверява дали вече реда който записва от txt файла не съществува в sql и да записва само новите редове които го няма в sql.
Код:
$emails = file('filename.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
for( $i = count($emails); $i > 0; $i--) {
    $email = trim($emails[$i]); 
    mysql_query("INSERT INTO `users` (`email`) VALUE ('".$emails[$i]."')") or die(mysql_error());
}
 
До колкото разбрах трябва да направиш проверка дали
email съществува
Код:
$emails = file('filename.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
for( $i = count($emails); $i > 0; $i--) {

    $email = trim($emails[$i]);
 $proverka="SELECT * FROM `users` WHERE `email`='$email'";
$result=mysql_query($proverka);
if (mysql_num_rows==0){

    mysql_query("INSERT INTO `users` (`email`) VALUE ('".$emails[$i]."')") or die(mysql_error());}
else {echo "Вече съществува";}
}

Пробвай така,трябва да стане!
 
Вместо да се правят двойно повече заявки, колоната email се прави unique, а в заявката за добавяне на нов имейл се добавя IGNORE:

INSERT IGNORE into `users` ......
 

Back
Горе