Rechercher : dans
Par :

Joomla Ne peut instancier la fonction mail

Dernière réponse le 25 mar 2009 à 14:05:55 sasha, le 12 mar 2009 à 15:12:45 
 Signaler ce message aux modérateurs

Bonjour, je suis en train de faire un site en joomla en local, et j'essaie en fessant une nouvelle inscription de teste l'envoie de mail, j'ai commencer par vouloir envoyer des newsletter mais j'ai reçus le message Ne peut instancier la fonction mail.
j'ai remarquer qu'en ajoutant un utilisateur j'avais le même message, voila pourquoi je teste de cette façon, bref.
J'ai parcourue le net pour trouver des réponses et j'ai au passage modifier le fichier souvent nommé php.ini (qui s'appelle php chez moi) ->ligne changer:
[mail function]
; For Win32 only.
SMTP = smtp.wanadoo.fr <-
smtp_port = 25

; For Win32 only.
;sendmail_from = monadresse@hotmail.fr <-

; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
;sendmail_path =
voila, je ne voit pas quoi changer de plus pour que mon Easy php laisse passer les mails.
Easy php 3.0
Joomla 1.59
merci d'avance

Configuration: Windows Vista
Firefox 3.0.7

Meilleures réponses pour « Joomla Ne peut instancier la fonction mail » dans :
[PHP] Fonction mail() Voir La fonction mail() est bloquée chez certains des hébergeurs gratuits pour des raisons de sécurité (afin d'éviter le spam notamment), l'adresse ip de la machine qui a demandé le script sera alors indiquée dans le header 'X-MM-Mail-From-IP'. renseignez...
PHP - Mail et fonctions réseau VoirPHP étant un langage consacré au Web, il possède bien évidemment des fonctions lui permettant de communiquer avec le "monde extérieur" à l'aide de fonctions standards. Le service le plus utilisé sur Internet étant la messagerie électronique, il est...

1

rescue, le 12 mar 2009 à 15:28:18

Bonjour,

Avez vous essayé d'envoyer un mail en php ?
Vous verrez ainsi si votre Easyphp fonctionne correctement.

Voici la syntaxe :

<?php
mail('votre_email', 'sujet', 'message');
?>

1 - Mettre ce code dans un fichier, par exemple : essaimail.php
2 - placer ce fichier dans votre répertoire joomla.
3 - appelez l'url de votre serveur web avec votre joomla et placer le nom de ce fichier à la fin.

exemple: http://localhost/joomla/essaimail.php

Tenez nous au courant

@+
Vivre pour le libre et respirer le bonheur c'est la santé toute l'année.
Portable Acer TravelMate 4020 triple boot : Ubuntu, OpenSuse, XP Pro

Répondre à rescue

2

sasha35, le 12 mar 2009 à 16:07:16

1 - Mettre ce code dans un fichier, par exemple : essaimail.php FAIT
2 - placer ce fichier dans votre répertoire joomla.
J'ai installer joomla dans une partition de dique que j'ai crée et appelle F:/ et cette partition porte aussi le nom joomla le chemin pour retrouver le fichier est F:/essaimail.php est-ce bien ça que vous vouliez dire
3 - appelez l'url de votre serveur web avec votre joomla et placer le nom de ce fichier à la fin.
Quel serveur web ? ->Easy php?
J'ai ouvert l'alias qui menvoie sur l'index du site(page d'acceuil) et dans la barre d'adresse j'ai remplacer:
http://127.0.0.1/joomla/
par
http://127.0.0.1/joomla/essaimail.php
et j'ai eu cette réponse:
Warning: mail() [function.mail]: "sendmail_from" not set in php.ini or custom "From:" header missing in F:\essaimail.php on line 2
Ce qui me laisse à penser que le fichier que je prend pour php.ini et qui s'appelle php n'est pas le bon même si je retrouve les lignes SMTP = et ;sendmail_from = .
J'ai avec l'aide de la fonction rechercher dans les fichier d'un dossier de notepad++ ->sendmail_from pour voir si je ne tomberai pas sur le fichier php.ini (juste au cas où je n'aurai pas trouver le bon)
Notepad++ à planter.
voila je continue à chercher de mon côté.++

Répondre à sasha35

3

rescue, le 12 mar 2009 à 16:12:16

Re,

Si vous souhaitez un serveur correct prenez Wamp ou Xampp.
Évitez EasyPHP.

Refaites vos tests.
@+

Vivre pour le libre et respirer le bonheur c'est la santé to­ute l'année.
Portable Acer TravelMate 4020 triple boot : Ubuntu, OpenSuse­, XP Pro

Répondre à rescue

4

sasha35, le 13 mar 2009 à 10:59:31

Voila j'ai installer Wamp mais je n'arrive pas à créer un alias.
Pour exécuter le fichier essaimail.php j'ai essayer de faire un alias, je fait donc clique gauche sur le signe de wamp a coté de l'horloge puis apache->répertoire alias créer un alias.
une fenêtre s'ouvre je rentre http://localhost/envoiemailessai/ puis entrer et je tape ensuite le chemin F:/
ou F:/essaimail.php ou bien encore F:/essaimail.php/ et à chaque fois il ne fait pas d'alias.
Where is the problem ?

Répondre à sasha35

5

rescue, le 14 mar 2009 à 10:37:27

Bonjour,

C'est quoi votre objectif final ?
Je ne comprends plus ce que vous souhaitez faire ?

Pourquoi créer un alias ?

@+
Vivre pour le libre et respirer le bonheur c'est la santé to­ute l'année.
Portable Acer TravelMate 4020 triple boot : Ubuntu, OpenSuse­, XP Pro

Répondre à rescue

6

sasha35, le 14 mar 2009 à 16:20:40

C'est quoi votre objectif final ?
-L'envoie de newsletter que dont je teste en premier la faisabilité d'envoi de mail (ici pour une inscription)
Je ne comprends plus ce que vous souhaitez faire ?

Pourquoi créer un alias ?
Avec Easyphp j'ai créer un alias qui lorsque je clique dessus m'envoie vers ma page principale et d'autre alias que j'ai fait avant me permette d'ouvrir des pages php et tester ce qu'elle renvoie.

Pourquoi créer un alias ?
si vous poser cette question c'est peut être qu'il n'y à pas besoin d'en faire un, mais la je sais pas comment.

Merci de votre aide

Répondre à sasha35

7

rescue, le 14 mar 2009 à 20:53:18

Bonsoir,

Je vous invite à refaire les mêmes tests que vous aviez commencer à faire sur Easyphp avec Wamp.

Appeler l'url de votre serveur localhost en ayant au préalable mis votre fichier d'envoi mail à la racine de votre serveur web comme ceci : http://127.0.0.1/essaimail.php

Ne pas oublier de modifier le php.ini de Wamp comme vous l'avez déjà pour EasyPHP.

J'aurai une question à vous posez : Pourquoi Joomla ?

Je connais un CMS beaucoup moins complexe que je vous invite à découvrir IGSW : http://www.igswsoft.com/

C'est le CMS de l'avenir.

@+ Vivre pour le libre et respirer le bonheur c'est la santé to­ute l'année.
Portable Acer TravelMate 4020 triple boot : Ubuntu, OpenSuse­, XP Pro

Répondre à rescue

8

sasha35, le 16 mar 2009 à 10:03:55

http://127.0.0.1/essaimail.php
J'arrive à aller sur la page(wamp la trouve), mais je ne reçois pas de mail.
mon code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1250">
<meta name="generator" content="PSPad editor, www.pspad.com">
</head>
<body>
<?php
mail('******@hotmail.fr', 'test', 'Envoie mess pour test');
?>
</body>
</html>

Ne pas oublier de modifier le php.ini de Wamp comme vous l'avez déjà pour EasyPHP.
C'est fait.

J'aurai une question à vous posez : Pourquoi Joomla ?
Je suis en train de faire des modification d'un site déjà existant fait en joomla dans le cadre d'un stage de licence pro et ma formation ne ma fait voir que Joomla pour les CMS.


Je connais un CMS beaucoup moins complexe que je vous invite à découvrir IGSW
J'irai voir ce CMS si je doit créer un autre site en CMS.

Répondre à sasha35

9

rescue, le 16 mar 2009 à 13:11:48

Bonjour,

1 - Maintenant configurer votre php.ini au niveau du SMTP ex: smtp.free.fr
2 - Redemarrer votre serveur
3 - Relancer votre url de test d'envoi de mail.

NB :Ne prenez pas mon exemple de SMTP prenez le votre celui de votre FAI.
@+
Vivre pour le libre et respirer le bonheur c'est la santé toute l'année.
Portable Acer TravelMate 4020 triple boot : Ubuntu, OpenSuse, XP Pro

Répondre à rescue

10

sasha35, le 17 mar 2009 à 09:20:58

Voila le chemin pour essaimail.php:
C:\wamp\www\essaimail.php

Voila ce que je tape dans la barre d'adresse de firefox:
http://127.0.0.1/essaimail.php

Voila ce que j'ai dans php.ini:
SMTP = smtp.wanadoo.fr
smtp_port = 21 <!--ou bien smtp_port = 25 (comme c'était à l'origine)-->

; For Win32 only.
sendmail_from = *******@hotmail.fr

Avec smtp_port = 25 la page est bien appeler mais rien ne s'affiche et je ne reçois pas de mail

Avec smtp_port = 21 qui est le port que j'ai utiliser pour passer par fillezila pour récupérer le contenue du site, j'obtient ce message:
Warning: mail() [function.mail]: Failed to connect to mailserver at "smtp.wanadoo.fr" port 21, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\wamp\www\essaimail.php on line 9

Je pense pourtant avoir fait ce qu'il faut mais pourtant ça ne fonctionne pas.

Répondre à sasha35

11

sasha35, le 18 mar 2009 à 09:12:43

Quelqu'un pour m'aider?
Please.

Répondre à sasha35

12

rescue, le 18 mar 2009 à 10:40:03

Bonjour,

Alors vérifier pare feu ou Antivirus il y a quelque chose qui bloque le serveur pour l'envoi de mail.
Le port du SMTP par defaut de votre FAI c'est : 25

Cordialement
@+ Vivre pour le libre et respirer le bonheur c'est la santé toute l'année.
Portable Acer TravelMate 4020 triple boot : Ubuntu, OpenSuse, XP Pro

Répondre à rescue

13

sasha35, le 20 mar 2009 à 10:39:07

J'ai été voir au niveau du par feu et antivirus je n'ai rien trouver qui pourrait bloquer, après je suis peut être passer à côté de quelque chose.
Sinon j'en est parler à un prof de l'université où je suis et il m'a dit que sendmail_from = *******@hotmail.fr était un élément qui bloquait. Il faut une adresse du FAI (ici wanadoo) l'adresse doit donc être une des adresses répertorier portant l'extension @wanadoo.fr ou .com.Mais il m'a aussi dit que Le problème ne se résumait pas à ça et que la fonctionnalité mail avec Easyphp ne devait pas être installer et que pour wamp ça devrait fonctionner si je change sendmail_from.
Voila je renverrait mes résultats au plus tôt.

Répondre à sasha35

14

rescue, le 20 mar 2009 à 13:27:56

Bonjour,

Le smtp avec le nom wanadoo aujourd'hui ne fonctionne plus sauf erreur de ma part.
Utiliser : orange

Dans votre php.ini de Wamp retrouvez les lignes suivantes :

[mail function]
; For Win32 only.
SMTP = smtp.orange.fr

; For Win32 only.
sendmail_from = Ne rien mettre ici à part votre E-mail


NB : Je travaille sous linux j'ai du booté en windaub XP pour installer un Wamp pour vous aidez.
Mais cela me fait très plaisir de vous aidez.

Cordialement Vivre pour le libre et respirer le bonheur c'est la santé to­ute l'année.
Portable Acer TravelMate 4020 triple boot : Ubuntu, OpenSuse­, XP Pro

Répondre à rescue

15

sasha35, le 20 mar 2009 à 14:04:22

J'essaie avec ce que vous m'avez mis dans votre dernier message et je vous tien au courant.
Et merci de porter autant d'attention à m'aider.

Répondre à sasha35

16

sasha35, le 23 mar 2009 à 15:23:01

J'ai essayer avec orange et ça ne fonctionne pas.
Je continue de chercher.

Répondre à sasha35

17

rescue, le 23 mar 2009 à 16:09:58

Bonjour,

Avez une autre adresse mail que hotmail ?
Si oui utilisez là.
Car je pense que ça pourrait provenir aussi du type mime le content-type par défaut de hotmail ne prend que text/html et ça peut poser problème pour des tests avec que du texte.

@+
Vivre pour le libre et respirer le bonheur c'est la santé to­ute l'année.
Portable Acer TravelMate 4020 triple boot : Ubuntu, OpenSuse­, XP Pro

Répondre à rescue

18

sasha35, le 23 mar 2009 à 17:20:54

Je vient d'essayer avec une adresse gmail et la j'ai bien reçue un mail mais maintenant je voudrait savoir comment je peut accéder à mon site joomla local avec wamp, pour easyphp j'avais fait un alias qui m'envoie dans ma partition nommé F:/ qui contient le site.
J'ai déjà essayer de faire un alias avec wamp et je n'ai pas réussi.

Répondre à sasha35

19

rescue, le 24 mar 2009 à 16:33:44

Bonjour,

Comprend pas votre alias et pourquoi ?

Vous déposez normalement votre répertoire Joomla dans le répertoire www de Wamp et c'est tout.

1 - Vous appelez l'url de votre serveur web wamp : http://localhost/
2 - Vous avez un page index qui affiche des informations et par défaut les répertoires de tous vos projets.
3 - Vous cliquez sur le projet Joomla et votre site Joomla s'affiche (après installation bien entendu).

Cordialement
@+ Vivre pour le libre et respirer le bonheur c'est la santé to­ute l'année.
Portable Acer TravelMate 4020 triple boot : Ubuntu, OpenSuse­, XP Pro

Répondre à rescue

20

sasha35, le 24 mar 2009 à 16:58:06

D'accord je vais essayer ça, c'était de déposer le répertoire Joomla dans le répertoire www de Wamp que je n'avait pas compris.

Répondre à sasha35