You are not logged in.

Announcement

 Téléchargez la dernière version stable de GLPI      -     Et vous, que pouvez vous faire pour le projet GLPI ? :  Contribuer
 Download last stable version of GLPI                      -     What can you do for GLPI ? :  Contribute

#1 2004-12-07 17:15:49

saturn
Member
Registered: 2004-11-18
Posts: 5
Website

Proposition de remplacement de la fonction php mail()

Si comme nous, vous n'avez pas sendmail d'installé sur votre serveur  web
vous ne pouvez donc pas utiliser la fonction php mail() et donc le suivi par mail de GLPI.

Pour palier à ce pb, il est possible d'utiliser la classe Mail fournie par PEAR (pear install Mail)
et d'éditer le fichier glpi/common/classes.php en ligne 718 et y ajouter le code suivant:
// Debut de la modif
                            require_once('Mail.php');
                for ($i=0;$i<count($users);$i++)
                {
                  $AMparams['host']="xxx.xxx.xxx.xxx"; //Adresse IP du serveur smtp
                  $AMmail = &Mail::factory('smtp', $AMparams);
                  $AMheaders = array('From'    => $sender,
                           'Subject' => $subject);
                  $AMmail->send($users[$i], $AMheaders, $body);
// FIN MODIF                  
/* en remplacement de
                mail($users[$i],$subject,$body,
                "From: $sender\r\n" .
                "Reply-To: $replyto\r\n" .
                    "X-Powered: by GLPI\r\n" .
           "X-Mailer: PHP/" . phpversion()) ;
*/

Voila pour nous ca fonctionne, par contre dans ce code les erreurs ne sont pas geres.... si besoin est je peux l'étoffer un peu.
Voila.
@+

Last edited by saturn (2004-12-08 15:34:09)


Antoine Michéa

Offline

#2 2004-12-07 22:32:34

JMD
GLPI - Lead
Registered: 2004-09-13
Posts: 9,180
Website

Re: Proposition de remplacement de la fonction php mail()

Je m'interroge :

Si sendmail ou qmail n'est pas installé sur le serveur, cela signifit que vous n'avez pas la main sur le serveur sinon vous l'auriez installé. (supposition).

Or là votre solution est d'installer un package pear, ce qui tend à laisser croire que vous avez la main sur le serveur...

Donc là je saisis pas bien.

Ou alors, vous avez installé GLPI sur un serveur Window$ et  vous ne pouvez pas utiliser le serveur smtp de votre FAI ?

vous pouvez m'expliquer, je suis curieux wink.

Remarque : cela n'enlève rien à la valeur de votre contribution pour laquelle je vous remercie.

Cordialement


JMD / Jean-Mathieu Doléans - Glpi-project.org - Association Indepnet
Apportez votre pierre au  projet GLPI   : Soutenir

Offline

#3 2004-12-08 15:33:15

saturn
Member
Registered: 2004-11-18
Posts: 5
Website

Re: Proposition de remplacement de la fonction php mail()

>Je m'interroge :
>
>Si sendmail ou qmail n'est pas installé sur le serveur, cela signifit que vous n'avez pas la main sur le >serveur sinon vous l'auriez installé. (supposition).

Il est effectivement théoriquement possible d'installer GLPI sans etre l'admin du serveur web

>Or là votre solution est d'installer un package pear, ce qui tend à laisser croire que vous avez la main >sur le serveur...

En fait selon l'install est il aussi possible d'installer des classes PEAR sans etre root, d'autre part, il est aussi possible d'intergrer ces classes directement à GLPI.

>Donc là je saisis pas bien.
>Ou alors, vous avez installé GLPI sur un serveur Window$ et  vous ne pouvez pas utiliser le serveur >smtp de votre FAI ?

Ce n'est pas le cas pour deux raisons :
1) j'aime pas windows ;-)
2) meme si j'avais installé ca sous ouinouin, il est possible de specifier le smtp dans php.ini

>vous pouvez m'expliquer, je suis curieux wink.

Oui san soucis, le 'truc' c'est simplement de dire que 'qui peut le plus, peut le moins' et que donc en utilisant pear, on peut tres bien utiliser le smtp local si il y en a un monté sur la machie qui fait serveur web ou bien d'en utiliser un distant si besoin.

>Remarque : cela n'enlève rien à la valeur de votre contribution pour laquelle je vous remercie.

Il n'y a pas de quoi.

>Cordialement

En esperant vous avoir eclairé...

Cordialement,


Antoine Michéa

Offline

#4 2004-12-08 18:21:15

JMD
GLPI - Lead
Registered: 2004-09-13
Posts: 9,180
Website

Re: Proposition de remplacement de la fonction php mail()

Merci pour les explications

La piste à creuser est peut etre l'intégration direct de ces classes dans GLPi ça permettrait de bénéficier de la fonction de suivi par mail quelque soit la config.

Bref c'est à creuser.


JMD / Jean-Mathieu Doléans - Glpi-project.org - Association Indepnet
Apportez votre pierre au  projet GLPI   : Soutenir

Offline

#5 2004-12-09 22:37:45

Haldan
Member
Registered: 2004-11-26
Posts: 43
Website

Re: Proposition de remplacement de la fonction php mail()

Dans le cas de Windows, le problème est présent pour les SMTP qui recquiert une authentification : PHP à ma connaissance gère pas bien du tout ce type de serveur.

Sinon, la solution est d'installer un serveur SMTP gratuit toujours sur notre bon vieux et très cher Windows.

N'empeche que la solution apportée est intéressante et évite de se prendre la tête avec ce que j'ai décrit ci-dessus.

On va tester tout çà wink


$bouh="Hello World";
for ($i=0;$i<(strlen ($bouh));$i++) {
    echo $bouh[$i];
}

Offline

#6 2004-12-12 14:09:18

MoYo
GLPI - Lead
From: Poitiers
Registered: 2004-09-13
Posts: 14,513
Website

Re: Proposition de remplacement de la fonction php mail()

C'est une solution qui m'a déjà été proposée... Je l'ai mis de coté pour le moment.

Mais une alternative beaucoup plus propre pour des serveurs qui ne sont pas sensées héberger de serveur SMTP est d'utiliser mini_sendmail qui permet juste d'envoyer les mails. C'est configurable sans problème dans le php.ini.


MoYo - Julien Dombre - Association INDEPNET
Contribute to GLPI :    Support     Contribute     References     Freshmeat

Offline

Board footer

Powered by FluxBB