Ciao a tutti,
ho bisogno di un aiuto da parte vostra, un po' di tempo fa uno script ho scaricato da questo sito internet e modificato i vari campi in cui dovevo modificare, ma mi succede una cosa strana, cioè all'interno del file .txt ci sono circa una dozzina di mail ma ne manda solamente a 4-5 indirizzi mail, volevo sapere come mai mi succedeva questa cosa, qualcuno mi sa dare una mano?
Il codice PHP che vi dicevo è:
codice:
<?
// Alcune variabili e inserimento della lista;
$filelist = "emails.txt";
//E-mail dell'amministratore;
$adminmail = "oratoriobreccia@gmail.com";
$emailheaders = "From: " . $adminmail . "\nReplay-To: " . $adminmail;
// Display di default;
if (!isset($mode))
$mode = "unknown";
// Tutti i vari indirizzi da inviare che creeremo ora;
switch ($mode) {
case "create": createList (); break;
case "display": displayEntries($filelist); break;
case "add": addEntry($email); break;
case "edit": displayEditForm($id); break;
case "doEdit": editEntry($email, $oldvalue); break;
case "delete": deleteEntry ($id); break;
case "send": sendNews($subject, $message); break;
default:
if (file_exists($filelist)) {
displayEntries(); displayAddEntryForm();
}
}
// Creazione della mail-list automatica;
if (!file_exists($filelist)) {
echo "<h2>Crei la newsletter!</h2>";
echo "<form name=createFile action=admin_mailing.php method=post>";
echo "<input type=submit name=mode value=create mailing list file>";
echo "</form>";
exit;
}
function createList() {
$fp = fopen($GLOBALS["filelist"], "w");
if ($fp) {
echo "<h2>Newsletter aggiornato con successo!</h2>";
echo "" . $GLOBALS["filelist"] . "";
echo "<meta http-equiv='Refresh' content='1; URL=admin_mailing.php'>";
exit;
}
else
echo "Errore!";
}
//Invio della newsletter agli iscritti;
function sendNews ($subject, $message) {
$filecontents = file($GLOBALS["filelist"]);
for ($i=0;$i<sizeof($filecontents);$i++) {
$a = mail($filecontents[$i], $subject, stripslashes($message), $GLOBALS["emailheaders"]);
if (!$a)
exit;
}
echo "Invio spam!)";
echo "<meta http-equiv='Refresh' content='1; URL=admin_mailing.php'>";
exit;
}
//Visualizzazione del form dell'aggiunta di mail nella lista;
function displayAddEntryForm() {
echo "<h1>Aggiungere e-mail nella lista:</h1>";
echo "<form name=addEntry action=admin_mailing.php method=get>";
echo "<input type=text name=email>";
echo "<input type=hidden name=mode value=add>";
echo "<input type=submit name=submit value=add>";
echo "</form>";
}
//Inserimento e-mail nella lista;
function addEntry($email) {
$fp = fopen($GLOBALS["filelist"], "a");
$emailsize = strlen($email . "\n");
$fw = fwrite($fp, $email . "\n", $emailsize);
if ($fw) {
echo "<h2><div align=center>Inserimento effettuato con successo!</div></h2>";
echo "<meta http-equiv='Refresh' content='1, URL=admin_mailing.php'>";
exit;
}
else
echo "Errore!";
}
//Visualizzazione e-mail della lista dopo la decima mail;
function displayEntries() {
echo "Visualizza dopo || <a href=admin_mailing.php?limit=20>20 e-mail || || <a href=admin_mailing.php?showall=>Show all
";
$filecontents = file($GLOBALS["filelist"]);
if (isset($GLOBALS["limit"]))
$limit = $GLOBALS["limit"];
if ((!isset($GLOBALS["limit"])) and (!isset($GLOBALS["showall"])))
$limit = 10;
if (isset($GLOBALS["showall"])) {
for ($i = sizeof($filecontents)-1;$i>=0;$i--) {
echo $filecontents[$i] . " <a href=admin_mailing.php?mode=edit&id=" . $filecontents[$i] . ">Edit</a> || <a href=admin_mailing.php?mode=delete&id=" . $filecontents[$i] . ">Delete</a>
";
}
}
elseif (isset($limit)) {
$count = 1;
for ($i=sizeof($filecontents)-1;$count<=$limit;$i--) {
echo $filecontents[$i] . " <a href=admin_mailing.php?mode=edit&id=" . $filecontents[$i] . ">Edit</a> || <a href=admin_mailing.php?mode=delete&id=" . $filecontents[$i] . ">Delete</a>
";
$count++;
}
}
}
//Visualizzazione del form di redazione di una mail;
function displayEditForm ($id) {
echo "<h1>Edit mail:</h1>";
echo "<form name=editForm action=admin_mailing.php method=get>";
echo "<input type=text name=email value=" . $id . ">";
echo "<input type=hidden name=oldvalue value=" . $id . ">";
echo "<input type=hidden name=mode value=doEdit>";
echo "<input type=submit name=submit value=update>";
echo "</form>";
exit;
}
//Redarre una mail e scrivere nel file di upload;
function editEntry($email, $oldvalue) {
$filecontents = file($GLOBALS["filelist"]);
for ($i=0;$i<sizeof($filecontents);$i++) {
if (chop($filecontents[$i]) == $oldvalue) {
$filecontents[$i] = $email . "\n";
$fp = fopen($GLOBALS["filelist"], "w+");
for ($a=0;$a<sizeof($filecontents);$a++) {
$emailsize = strlen($filecontents[$a] . "\n");
$fw = fwrite($fp, $filecontents[$a], $emailsize);
}
echo "<h2><div align=center>Entry Change!</div></h2>";
echo "<meta http-equiv='Refresh' content='1; URL=admin_mailing.php'>";
exit;
}
}
}
//Cancellare una mail e scriverlo nel file upload;
function deleteEntry($id) {
$filecontents = file($GLOBALS["filelist"]);
for ($i=0;$i<sizeof($filecontents);$i++) {
if (chop($filecontentes[$i]) == $id) {
$filecontents[$i] = "";
$fp = fopen($GLOBALS["filelist"], "w+");
for ($a=0;$a<sizeof($filecontents);$a++) {
$emailsize = strlen($filecontents[$a]);
$fw = fwrite($fp, $filecontentes[$a], $emailsize);
}
echo "<h2><div align=center>Entry deleted!</div></h2>";
echo "<meta http-equiv='Refresh' content='1; URL=admin_mailing.php'>";
exit;
}
}
}
?>
<h2>Inserisci qui il testo e invialo a tutti sotto-iscritti alla newsletter:</h2>
<form name="sendEmail" action="admin_mailing.php" method="post">
Oggetto:
<input type="text" name="subject">
Testo:
<textarea name="message" rows="10" cols="50"></textarea>
<input type="submit" name="mode" value="send">
</form>
Vi ringrazio anticipatamente dell'aiuto che mi darete.