Limite d'envoie de mail



  • Bonsoir,

    J'aimerai savoir à combien est la limite de mail ?
    Pour un mailling à 500 adresses puis-je le faire en même temps ? ou j'ai une limite ?

    Un autre question le time limit est de combien ?

    Bonne soirée

    Solce


  • Administrateur

    Pas de limite en tant que tel, le time_out est à 30 sec.

    Si jamais ton mailing utilise trop de ressources, on est susceptible de le bloquer, voire de l'annuler et de suspendre temporairement ton compte.



  • Ok bon je vais essayé de prendre un service de newsletters ailleurs…

    Voici mon script :

    <?php
    $mysql_host = "localhost";
    $mysql_database = " ";
    $mysql_user = " ";
    $mysql_password = " ";

    mysql_connect($mysql_host, $mysql_user, $mysql_password);
    mysql_select_db($mysql_database);
    unset($mysql_password);

    $from = $from ? $from : ' ';// TODO : Mettre le bon NDD
    $from_name = $from_name ? $from_name : ' ';// TODO : Mettre le bon NDD
    // Préparation de l'email :
    $headers ="From: "$from_name"<$from>rn"
    ."Reply-To: $fromrn"
    .'Content-Type: text/html; charset="iso-8859-15"'."rn"
    .'Content-Transfer-Encoding: 8bit';
    .'MIME-version: 1.0n';

    $title = (htmlentities((get_magic_quotes_gpc()?stripslashes($_POST['titre']):$_POST['titre'])));

    $message = "<html><head><title>$title</title></head><body>".nl2br((get_magic_quotes_gpc()?stripslashes($_POST['message']):$_POST['message'])).'</body></html>';

    $message_mail = utf8_encode($message);

    $retour = mysql_query("SELECT mail FROM membres LIMIT 0,300 ORDER BY id DESC");
    while ($donnees = mysql_fetch_array($retour))
    {
    $to_email = $donnees['mail'];
    mail($to_email, $title, $message_mail, $headers);
    echo "$to_email:envoyé<br />";
    }
    mysql_close();
    ?>

    J'ai 367 membres j'ai fais une limite à id>300 pour éviter les soucis demande trop de ressources !

    Voyez-vous un soucis ?



  • Hum j'ai une doute sur ta requête sql tu devrais plutôt faire un limit … :D

    Corentin



  • $retour = mysql_query("SELECT * FROM membres WHERE id > 300 LIMIT 0,67 ORDER BY id DESC");

    du genre la ?



  • $retour = mysql_query("SELECT * FROM membres LIMIT 0,300 ORDER BY id DESC"); 
    

    Plutôt comme sa …

    Corentin :D



  • ok merci pour l'aide :)



  • N'oublie pas de précisé à la place de * se que tu veut récupéré car sa va mettre tu temps sinon et tu risque de planter ta page ….



  • aussi une question de sécurité, il faut éviter de tout sélectionner, mais plutôt spécifier et n'utiliser que ce dont tu as réellement besoin.



  • @equinox:

    aussi une question de sécurité, il faut éviter de tout sélectionner, mais plutôt spécifier et n'utiliser que ce dont tu as réellement besoin.

    Oui, enfin le coté sécuritaire est très minim, c'est surtout et parce que l'étoile fait l'équivalent de 2 requêtes au lieu d'une seul… Bref, c'est surtout pour la performance du script.



  • ah ok je l'ajoute alors :)


Se connecter pour répondre
 

Il semble que votre connexion ait été perdue, veuillez patienter pendant que nous vous re-connectons.