salve sono un novellino del webdesing in genere ma sopratutto di php e mi sto creando uno script che invia email in una determinata data in automatico, per fare ciò ho pensato di realizzare questo script in questo modo:
1 creare un form html che inserisca dei dati tipo email e una data di scadenza (data in formato mysql YYYY-MM-DD) e questo primo passo è stato risolto e gira tutto bene
2 creare lo script che controlli giornalmente ( utilizzo crontab ) i dati inseriti in questa tabella creata appositamente in un db mysql.
ecco nella creazione di questa seconda parte di script mi sono inceppato, ho realizzato tutto sino al punto del controllo della data, quindi ho usato questa ipotesi avendo creato una variabile e avedo detto che questa variabile è uguale alla data odierna ho creato una query al db che interroga sta tabella e ho detto nella query utilizzando il paramentro SELECT seleziona email quando la data=$variabile, fino a qui penso di esserci riuscito il problema me lo pongo adesso so che perinviare email si usa la funzione mail ma come faccio a dire prendi da quella tabella il campo email quando si verifica questa condizione ben precisa e invia questo messaggio?
spero di essere stato chiaro, posto parte del codice da me creato sperando di avere aiuto da qualcuno di voi....
<?php
$link = mysql_connect('host', 'user', 'pass');
if (!$link) {
die ('Non riesco a connettermi: ' . mysql_error());
}
$db_selected = mysql_select_db('database', $link);
if (!$db_selected) {
die ("Errore nella selezione del database: " . mysql_error());
}
$var = (date("y-m-d"));
$query = "SELECT * FROM ". tabella ." email WHERE data=$var";
$result = mysql_query($query);
if (!$result) {
die("Errore nella query $query: " . mysql_error());
sino a qui gira, ora non so come continuare vi posto cosa ho provato senza avere il risultato ottenuto cioè ricevere la mail lanciando lo script perchè la cosa che mi risulta difficile e far inserire il destinatario dell'email prendendo l'indirizzo dalla tabella mysql in quella condizione ben precisa...ovviamente il tutto è continuanto
} else {
$headers = "Da: Esempio <[email protected]>\r\n";
while (list($destinatario) = mysql_fetch_row($query))
$oggetto ="prova di email";
$info="questa è una prova di email generata automaticamente";
mail ($destinatario, $oggetto, $info, $headers);
echo 'email inviata correttamente<br><br><a href="LINK">Torna alla HomePage</a> ';
}
?>
spero di non avere scritto assai baggianate e che qualcuno mi sappia aiutare...
1 creare un form html che inserisca dei dati tipo email e una data di scadenza (data in formato mysql YYYY-MM-DD) e questo primo passo è stato risolto e gira tutto bene
2 creare lo script che controlli giornalmente ( utilizzo crontab ) i dati inseriti in questa tabella creata appositamente in un db mysql.
ecco nella creazione di questa seconda parte di script mi sono inceppato, ho realizzato tutto sino al punto del controllo della data, quindi ho usato questa ipotesi avendo creato una variabile e avedo detto che questa variabile è uguale alla data odierna ho creato una query al db che interroga sta tabella e ho detto nella query utilizzando il paramentro SELECT seleziona email quando la data=$variabile, fino a qui penso di esserci riuscito il problema me lo pongo adesso so che perinviare email si usa la funzione mail ma come faccio a dire prendi da quella tabella il campo email quando si verifica questa condizione ben precisa e invia questo messaggio?
spero di essere stato chiaro, posto parte del codice da me creato sperando di avere aiuto da qualcuno di voi....
<?php
$link = mysql_connect('host', 'user', 'pass');
if (!$link) {
die ('Non riesco a connettermi: ' . mysql_error());
}
$db_selected = mysql_select_db('database', $link);
if (!$db_selected) {
die ("Errore nella selezione del database: " . mysql_error());
}
$var = (date("y-m-d"));
$query = "SELECT * FROM ". tabella ." email WHERE data=$var";
$result = mysql_query($query);
if (!$result) {
die("Errore nella query $query: " . mysql_error());
sino a qui gira, ora non so come continuare vi posto cosa ho provato senza avere il risultato ottenuto cioè ricevere la mail lanciando lo script perchè la cosa che mi risulta difficile e far inserire il destinatario dell'email prendendo l'indirizzo dalla tabella mysql in quella condizione ben precisa...ovviamente il tutto è continuanto
} else {
$headers = "Da: Esempio <[email protected]>\r\n";
while (list($destinatario) = mysql_fetch_row($query))
$oggetto ="prova di email";
$info="questa è una prova di email generata automaticamente";
mail ($destinatario, $oggetto, $info, $headers);
echo 'email inviata correttamente<br><br><a href="LINK">Torna alla HomePage</a> ';
}
?>
spero di non avere scritto assai baggianate e che qualcuno mi sappia aiutare...