Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > it.comp.www.php > #21065 > unrolled thread

inviare email 1 volta a settimana o un x giorno del mese

Started byalex <alex@nomailno.it>
First post2016-08-04 17:01 +0200
Last post2016-08-13 12:48 +0200
Articles 7 — 4 participants

Back to article view | Back to it.comp.www.php


Contents

  inviare email 1 volta a settimana o un x giorno del mese alex <alex@nomailno.it> - 2016-08-04 17:01 +0200
    Re: inviare email 1 volta a settimana o un x giorno del mese Leonardo Serni <lserni@gmail.com> - 2016-08-04 18:22 +0200
      Re: inviare email 1 volta a settimana o un x giorno del mese alex <alex@nomailno.it> - 2016-08-05 10:37 +0200
        Re: inviare email 1 volta a settimana o un x giorno del mese Alessandro Pellizzari <shuriken@amiran.it> - 2016-08-05 10:27 +0100
          Re: inviare email 1 volta a settimana o un x giorno del mese alex <alex@nomailno.it> - 2016-08-05 16:34 +0200
            Re: inviare email 1 volta a settimana o un x giorno del mese Alessandro Pellizzari <shuriken@amiran.it> - 2016-08-06 17:35 +0000
    Re: inviare email 1 volta a settimana o un x giorno del mese maryma <maryma@maryma.ma> - 2016-08-13 12:48 +0200

#21065 — inviare email 1 volta a settimana o un x giorno del mese

Fromalex <alex@nomailno.it>
Date2016-08-04 17:01 +0200
Subjectinviare email 1 volta a settimana o un x giorno del mese
Message-ID<nnvlbe$1i9n$1@gioia.aioe.org>
che codice x far inviare una email con del testo xxxx
ad esempio
una volta alla settimaa
una volta al mese es il primo lunedi o il primo del mese
o solo in alcuni mesi dell'anno

[toc] | [next] | [standalone]


#21066

FromLeonardo Serni <lserni@gmail.com>
Date2016-08-04 18:22 +0200
Message-ID<ftq6qb9735lpmlksgudv7bdgr2hvcnd2rr@L.Serni>
In reply to#21065
On Thu, 4 Aug 2016 17:01:05 +0200, alex <alex@nomailno.it> wrote:

>che codice x far inviare una email con del testo xxxx
>ad esempio
>una volta alla settimaa
>una volta al mese es il primo lunedi o il primo del mese
>o solo in alcuni mesi dell'anno

Direi niente a che vedere con il PHP: qui ti serve ma un buon crontab.

Leonardo
-- 

A terrible beauty is born.
                                     - W. B. Yeats, Easter 1916

[toc] | [prev] | [next] | [standalone]


#21067

Fromalex <alex@nomailno.it>
Date2016-08-05 10:37 +0200
Message-ID<no1j7n$1c4k$1@gioia.aioe.org>
In reply to#21066
Il 04/08/2016 18:22, Leonardo Serni ha scritto:
> On Thu, 4 Aug 2016 17:01:05 +0200, alex <alex@nomailno.it> wrote:
>
>> che codice x far inviare una email con del testo xxxx
>> ad esempio
>> una volta alla settimaa
>> una volta al mese es il primo lunedi o il primo del mese
>> o solo in alcuni mesi dell'anno
>
> Direi niente a che vedere con il PHP: qui ti serve ma un buon crontab.
>
> Leonardo
>

dimenticato di specificare che va inserito dentro una funzione php e 
deve funzionare solo quando viene usata tala funzione;
per cui se la funzione non è utilizzata non deve fare niente;
se invece è utilizzata va a verificare le date programmate

[toc] | [prev] | [next] | [standalone]


#21068

FromAlessandro Pellizzari <shuriken@amiran.it>
Date2016-08-05 10:27 +0100
Message-ID<e0j4fgFlntnU1@mid.individual.net>
In reply to#21067
On 05/08/2016 09:37, alex wrote:
> Il 04/08/2016 18:22, Leonardo Serni ha scritto:
>> On Thu, 4 Aug 2016 17:01:05 +0200, alex <alex@nomailno.it> wrote:
>>
>>> che codice x far inviare una email con del testo xxxx
>>> ad esempio
>>> una volta alla settimaa
>>> una volta al mese es il primo lunedi o il primo del mese
>>> o solo in alcuni mesi dell'anno
>>
>> Direi niente a che vedere con il PHP: qui ti serve ma un buon crontab.
>>
>> Leonardo
>>
>
> dimenticato di specificare che va inserito dentro una funzione php e
> deve funzionare solo quando viene usata tala funzione;
> per cui se la funzione non è utilizzata non deve fare niente;
> se invece è utilizzata va a verificare le date programmate

In meta-codice:

$lastSent = $trackerDb->getLastTimeSent($mailType);
if ($lastSent < time() - $days * 60 * 60) {
   mail($params...);
   $trackerDb->setLastTimeSentToNow($mailType);
}

Cambia l'if con la condizione che ti serve.

Se devi generalizzare molto e hai diverse cose da controllare, puoi 
wrappare questa logica in una funzione dentro un oggetto che implementa 
un'interfaccia:

interface CronSender {
   public function sendIfItsTime($to, $subject, $body, ...);
}

class SendWeekly implements CronSender {
  public function sendIfItsTime($to, $subject, $body, ...) {
   $lastSent = $this->trackerDb->getLastTimeSent($mailType);
   if ($lastSent < time() - 7 * 60 * 60) {
    mail($params...);
    $this->trackerDb->setLastTimeSentToNow($mailType);
  }
}


Bye.

[toc] | [prev] | [next] | [standalone]


#21069

Fromalex <alex@nomailno.it>
Date2016-08-05 16:34 +0200
Message-ID<no2869$ef0$1@gioia.aioe.org>
In reply to#21068
grazie provo a studiare il codice
volendolo usare con php 5.2.x servono funzioni diverse?

[toc] | [prev] | [next] | [standalone]


#21070

FromAlessandro Pellizzari <shuriken@amiran.it>
Date2016-08-06 17:35 +0000
Message-ID<e0mlfvFaqi1U1@mid.individual.net>
In reply to#21069
Il Fri, 05 Aug 2016 16:34:55 +0200, alex ha scritto:

> grazie provo a studiare il codice volendolo usare con php 5.2.x servono
> funzioni diverse?

Come ho detto, è meta-codice, non codice PHP vero. Ci somiglia solo.
Tu dovresti implementare tutte le funzioni che non ti ho mostrato (come 
quelle per l'accesso al DB per salvare e recuperare la data di ultimo 
invio).

Bye.

[toc] | [prev] | [next] | [standalone]


#21077

Frommaryma <maryma@maryma.ma>
Date2016-08-13 12:48 +0200
Message-ID<nomtu0$m9d$1@gioia.aioe.org>
In reply to#21065
Il 04/08/2016 17:01, alex ha scritto:
> che codice x far inviare una email con del testo xxxx
> ad esempio
> una volta alla settimaa
> una volta al mese es il primo lunedi o il primo del mese
> o solo in alcuni mesi dell'anno
>

per php basta la funziona mail

<?
mail(xxx,xxx,xxx);
?>

poi sul server metti un crontab che esegue lo script php quando vuoi tu

[toc] | [prev] | [standalone]


Back to top | Article view | it.comp.www.php


csiph-web