Precedente :: Successivo |
Autore |
Messaggio |
holifay Dio maturo


Registrato: 08/03/05 10:48 Messaggi: 2912 Residenza: Milano
|
Inviato: 24 Feb 2006 01:38 Oggetto: [php] funzione mail() |
|
|
L'hoster sostiene che è colpa dello script; io dico che è colpa sua. Sono 3 giorni che non partono più le email dal server... eppure io non ho cambiato niente (e lo stesso dice lui)
Lo script l'ho denudato fino ad arrivare all'osso:
Codice: | <?php mail("mia @email.it", "Oggetto", "Corpo della email"); > |
Eppure non va, mentre prima funzionava perfettamente. Qualcuno ha idea di cosa potrebbe essere successo così da consigliare le verifiche da fare all'hoster? Non è che di suo ci capisca quel granchè.... |
|
Top |
|
 |
horus Macchinista


Registrato: 22/03/05 10:48 Messaggi: 2554 Residenza: Sirio e dintorni
|
Inviato: 24 Feb 2006 12:43 Oggetto: |
|
|
Il tuo script è praticamente giusto (a parte lo spazio nella mail e il punto interrogativo finale):
Codice: | <?php mail("mia@email.it", "Oggetto", "Corpo della email"); ?> |
Presupponendo che questi siano accorgimenti da te inseriti per poter postare sul forum allora la colpa è di chi ti fa hosting. Potrebbe essersi bloccato il servizio SMTP oppure hanno cambiato qualche configurazione ad esempio la funzione mail() di default prevede che l'indirizzo SMTP sia localhost e che la porta sia la 25. |
|
Top |
|
 |
holifay Dio maturo


Registrato: 08/03/05 10:48 Messaggi: 2912 Residenza: Milano
|
Inviato: 26 Feb 2006 22:54 Oggetto: |
|
|
Grazie Horus
Sì, il punto interrogativo finale l'ho tralasciato mentre scrivevo, ma nello script dul server c'è.
Infatti penso anche io che sia un problema di configurazioni del server, anche se da quella parte sostengono di non aver cambiato niente.
Domanda1; Sai mica se c'è qualche utility che fa il check dei comandi? Mi spiego: qualcosa che posso caricare e che imi restituisce un errore in base al quale posso capire se il servizio è disattivo, se non ho le autorizzazioni o qualcosa del genere?
Domanda2: c'è un'altra funzione di PHP per inviare le email diversa da quella che ho usato?
 |
|
Top |
|
 |
horus Macchinista


Registrato: 22/03/05 10:48 Messaggi: 2554 Residenza: Sirio e dintorni
|
Inviato: 27 Feb 2006 10:32 Oggetto: |
|
|
Risposta 1: per verificare le impostazioni di php ti basta invocare la funzione phpinfo() in una pagina e ti verrà restituito l'elenco dei parametri del php.ini formattato in tabelle. Non credo però che tu possa accedere alla configurazione dell'SMTP.
Risposta 2: Puoi provare ad inviare tramite socket. Qui trovi un esempio che non ho provato.
In ogni caso la funzione mail funziona bene, se prima andava ed ora no vuol dire che qualcosa è cambiato, se non hai toccato nulla allora sono stati loro.
Se sei su un host serio ti risolvono il casino in poco tempo. A me tempo fa era capitato di modificare involontariamente delle impostazioni e nel giro di qualche ora hanno scoperto cosa avevo toccato (non lo sapevo neppure io) e lo hanno messo a posto. |
|
Top |
|
 |
holifay Dio maturo


Registrato: 08/03/05 10:48 Messaggi: 2912 Residenza: Milano
|
Inviato: 28 Feb 2006 00:52 Oggetto: |
|
|
Grazie Horus, adesso provo il socket
Ho messo il phpinfo(), ma dalle info che mi da non è che capisco molto se il servizio è attivo o no. A me pare di si... La parte della email dice questo: Citazione: | sendmail_from no value
sendmail_path /usr/sbin/sendmail -t -i
serialize_precision 100
short_open_tag On
SMTP localhost
smtp_port 25 |
Però il log è molto più lungo. Devo guardare altro?
Ho provato a cambiare script mettendo questo:
Citazione: | <?PHP
$flag_success = mail("mia@email.it", "oggetto", "rMessage", "From: email");
if (!$flag_success) {
echo "error=true";
}
else
{
echo "error=false";
}
?> |
Ricevo come responso error=false. Questo mi conferma come penso che non invia le email?
Tx  |
|
Top |
|
 |
holifay Dio maturo


Registrato: 08/03/05 10:48 Messaggi: 2912 Residenza: Milano
|
Inviato: 28 Feb 2006 00:59 Oggetto: |
|
|
holifay ha scritto: | Grazie Horus, adesso provo il socket  |
mi quoto da sola: non va neanche questo  |
|
Top |
|
 |
horus Macchinista


Registrato: 22/03/05 10:48 Messaggi: 2554 Residenza: Sirio e dintorni
|
Inviato: 28 Feb 2006 10:14 Oggetto: |
|
|
holifay ha scritto: | Ricevo come responso error=false. Questo mi conferma come penso che non invia le email?  |
La funzione mail restituisce TRUE se la mail è stata accettata per la spedizione con successo, altrimenti restituisce FALSE. Da come hai scritto la funzione se $flag_success è true allora ti scrive error=false quindi a parer mio la mail viene composta correttamente ma rimane nella coda dell'SMTP per qualche motivo.
Io farei una paginetta con solo lo script che hai postato la metterei online e invierei l'indirizzo all'assistenza tecnica dicendo loro di provare. |
|
Top |
|
 |
holifay Dio maturo


Registrato: 08/03/05 10:48 Messaggi: 2912 Residenza: Milano
|
Inviato: 05 Mar 2006 18:46 Oggetto: |
|
|
aggiornamento: non era un problema dei miei script, ma del server. Non lo hanno ammesso, ma adesso funziona tutto di nuovo.
Grazie per l'aiuto  |
|
Top |
|
 |
|