Posez votre question Signaler

Joomla Ne peut instancier la fonction mail [Résolu]

sasha - Dernière réponse le 20 août 2010 à 00:48
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
Lire la suite 
Réponse
+3
moins plus
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

@+
Ajouter un commentaire
Réponse
+0
moins plus
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é.++
Ajouter un commentaire
Réponse
+0
moins plus
Re,

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

Refaites vos tests.
@+

Ajouter un commentaire
Réponse
+0
moins plus
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 ?
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,

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

Pourquoi créer un alias ?

@+
Ajouter un commentaire
Réponse
+0
moins plus
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
Ajouter un commentaire
Réponse
+0
moins plus
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.
@+
Ajouter un commentaire
Réponse
+0
moins plus
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.
Ajouter un commentaire
Réponse
+0
moins plus
Quelqu'un pour m'aider?
Please.
rescue 1031Messages postés vendredi 16 novembre 2007Date d'inscription ContributeurStatut 18 décembre 2014Dernière intervention - 18 mars 2009 à 10:40
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
@+
Répondre
Ajouter un commentaire
Réponse
+0
moins plus
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.
Ajouter un commentaire
Réponse
+0
moins plus
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
Ajouter un commentaire
Réponse
+0
moins plus
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.
Ajouter un commentaire
Réponse
+0
moins plus
J'ai essayer avec orange et ça ne fonctionne pas.
Je continue de chercher.
Ajouter un commentaire
Réponse
+0
moins plus
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.

@+
Ajouter un commentaire
Réponse
+0
moins plus
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.
Ajouter un commentaire
Réponse
+0
moins plus
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
@+
Ajouter un commentaire
Réponse
+0
moins plus
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.
Ajouter un commentaire
Réponse
+0
moins plus
J'ai essayer de me connecter à mon site avec http://localhost/ et j'ai reçue cette réponse:Database Error: Unable to connect to the database:Could not connect to MySQL

J'ai bien mis le contenue de mon site dans le répertoire www de wamp.

Et j'ai retrouver la solution pour ça il fallait modifier la configuration du fichier config.inc.php situé C:\Wamp\apps\phpmyadmin3.1.1 ou le password etait $password = ''; j'ai ensuite été dans configuration.php de mon site situé dans le répertoire www de wamp pour modifier le password.

Et là ça marche, lors d'une inscription sur le site en local je reçois bien un mail de demande de confirmation de création de compte sur mon adresse gmail, j'ai réessayer avec mon adresse hotmail et ça ne fonctionne pas.
Voila encore merci rescue.
Ajouter un commentaire
Réponse
+0
moins plus
rescue une dernière question c'est la première fois que je pose une question sur ce forum, comment mettre le sujet en résolut?
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,

Ben c'est super Bravo.
Pour mettre en résolu :

1 - allez sur votre premier post
2 - à droite vous avez des boutons options du statut
3 - Cocher résolu
4 - Valider par OK

Cordialement
Ajouter un commentaire
Ce document intitulé «  Joomla Ne peut instancier la fonction mail  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.