Aller au contenu
  • Pas encore inscrit ?

    Pourquoi ne pas vous inscrire ? C'est simple, rapide et gratuit.
    Pour en savoir plus, lisez Les avantages de l'inscription... et la Charte de Zébulon.
    De plus, les messages que vous postez en tant qu'invité restent invisibles tant qu'un modérateur ne les a pas validés. Inscrivez-vous, ce sera un gain de temps pour tout le monde, vous, les helpeurs et les modérateurs ! :wink:

[Résolu] Besoin d'un coup de main en PHP


Messages recommandés

Posté(e) (modifié)

Bonjour tout le monde,

 

Je ne sais pas si c'est déplacé de demander cela, si c'est le cas je m'en excuse et le sujet peut être supprimé.

 

Voilà, j'ai créé un formulaire de contact en AS3 dans lequel j'ai plusieurs variables qui doivent être obligatoirement remplies et, une fois validé, je lui dis d'envoyer le tout vers un script PHP pour que ledit script envoie le formulaire mis en forme à mon adresse mail personnelle (********@orange.fr).

 

Sauf que j'ai un gros problème avec ce script PHP, c'est que je n'y connais absolument rien en PHP... D'où ma requête, y aurait-il une personne maîtrisant le PHP qui accepterait de me rendre ce grand service en réalisant ce script ?

 

Je vous mets le code qui appelle ce script avec toutes les variables :

 

btEnvoyer.addEventListener(MouseEvent.CLICK, envoyerClick);
function envoyerClick (e:MouseEvent):void
{
envoyerFormulaire ();
}

var chargeur:URLLoader = new URLLoader ();
//chargeur.dataFormat = URLLoaderDataFormat.VARIABLES;

chargeur.addEventListener(Event.COMPLETE, chargeurComplete);
chargeur.addEventListener(IOErrorEvent.IO_ERROR, chargeurErreur);

function chargeurComplete (e:Event):void
{
champMessage.text = "Envoi réussi.";
//trace( chargeur.data.result );
}

function chargeurErreur (e:Event):void
{
champMessage.text = "Erreur d'envoi du formulaire.";
}

function envoyerFormulaire ():void
{
var messageUtilisateur:String = validerFormulaire ();
if (messageUtilisateur != "")
{
	champMessage.text = messageUtilisateur;
}
else
{
	champMessage.text = "Envoi en cours...";
	 //adresse du script serveur réceptionnant les données.
	var urlScriptServeur:String = "mesScripts/script.php";
	var requete:URLRequest = new URLRequest (urlScriptServeur);
	requete.method = URLRequestMethod.POST;
	var vars:URLVariables = new URLVariables ();
	vars.nom = champNom.text;
	vars.prenom = champPrenom.text;
	vars.telephone = champTelephone.text;
	vars.mail = champMail.text;
	vars.zoneMessage = zoneMessage.text;
	requete.data = vars;
	chargeur.load (requete);
}
}

Un énorme merci, si quelqu'un accepte de me rendre ce service :-)

 

Et comme dit plus haut, si ma demande est déplacée, n'hésitez pas à supprimer ce message.

 

Cordialement.

Modifié par lomaster
Pas de coordonnées personnelles sur un espace public SVP ;o)

  • Modérateurs
Posté(e)

Bonsoir Lomaster (ça faisait un moment qu'on ne t'avait vu ici ;)),

 

Ne mets pas ton e-mail sur le forum (même légèrement "maquillé" comme tu l'avais fait), tu t'exposerais à bien des dangers de pollution de ta boîte ! D'autant plus que, dans le cas présent, ça n'apportait rien à l'éclairage de la question…

 

Quant au fond, je laisse quelqu'un d'autre t'aider à résoudre le problème.

Mais ne s'agit-il pas de JavaScript, plutôt que de PHP, en l'occurrence ?

Posté(e)

Bonjour Dylav,

 

Merci pour la modification.

Non je pense pas que se soit du Javascript, la prise en charge des variables, se fait sur le serveur donc je pense que c'est du Php ???

A moins que le Javascript permette la même chose...

  • Modérateurs
Posté(e)

Bonjour Lomaster,

 

Nan nan… :tsss: Le code que tu nous présentes, c'est bien du JavaScript.

 

Le PHP s'insère dans le code d'une page HTML (ou carrément la génère entièrement) pour la « dynamiser » (comme ils disent). Cette insertion se reconnaît à la balise caractéristique <?php /* insérer ici du code PHP */ ?>. Par ailleurs, les noms des variables PHP commencent obligatoirement par un dollar (exemple $maVariable=1;)…

 

Pour revenir à ton script, c'est un fichier genre MonScript.js, qui doit être appelé par ta page HTML à l'aide d'une balise <script> (<script src="MonScript.js" type=text/javascript></script>), que l'on peut placer dans le header (balise <head>) ou dans le corps de la page (balise <body>).

 

L'ambiguïté provient vraisemblablement du fait que ton formulaire semble « envoyé » à un programme PHP nommé script.php

 

Et tes ennuis peuvent provenir soit du mauvais fonctionnement du JavaScript que tu nous a listé, soit du PHP qui en réceptionne le message…

 

Mais j'avoue que je ne suis pas assez calé en JavaScript pour analyser ton script (si c'est lui qui pêche) :chpas:

Posté(e)

Re :)

 

Enfaite mon site est entièrement réalisé, de A à Z dans flash et en Action Script 3 Donc ce n'est pas possible pour moi d'intégrer le php dedans enfin je ne pense pas. Mon script fonctionne bien quand je le test, j'ai juste le message "erreur envoi", mais ça c'est normal car mon AS3 récupère toutes les variables et cherche à les envoyer à un script php pour qu'il traite ces données, mais ce script justement je ne sais pas comment le créer. Je ne m'y connais pas assez pour ne pas dire totalement pas en PHP! D'où m'a requête.

 

Mais ce n'est peut-être pas la meilleure solution ... Même en full flash ?

  • Modérateurs
Posté(e)

var urlScriptServeur:String = "mesScripts/script.php";

C'est toi qui a codé cette assignation ? Parce qu'effectivement les données de ton formulaire devraient probablement être prises en charge par ce programme PHP qui, si j'ai bien compris,

  1. tout d'abord, doit exister (sous le nom script.php et dans le répertoire mesScripts)…
  2. doit prendre en charge les données pour en faire un mail à ton adresse ?

Cette manœuvre en deux temps me semble bien compliquée… mais tu n'as peut-être pas le choix. En tout cas, il va falloir retrousser tes manches et faire un tour sur un bon tutoriel PHP, par exemple celui du Site du ZérO, « Le site pour débutants où tout est expliqué... à partir de Zéro ! » (leurs tutos sont réputés).

 

Ou alors fouiller un peu sur le Net pour espérer y trouver un module déjà prêt à l'emploi… ce n'est pas désespéré, car il s'agit d'une fonctionnalité relativement basique. ;)

Posté(e)

Bonjour :)

 

Oui c'est moi qui est codé cette assignation. Peut-être qu'il y avait une meilleure façon de codé l'AS3 pour envoyer sur une adresse mail, mais il n'y a que cette façon avec laquelle je sais faire...

 

Je vais devoir retrousser mes manches :D Mais le PHP c'est vraiment pas ma tasse de thé xD

 

Merci pour tes réponses :)

Posté(e)

Salut à tous,

 

Bah de ce que je peux voir c'est un code javascript qui récupere les données sur le formulaire et qui envoi ces données à un script php afin que celui-ci traitent ces données.

Ca semble logique, ton formulaire est chez le client, donc du javascript est utilisé pour récupérer les données et les envoyer au script php sur le serveur, qui lui t'enverra ton mail.

 

Le script que tu demande n'est pas bien difficile ni long à faire, mais j'ai pas vraiment le temps de me pencher sur ça cette semaine, envoi moi un mp vendredi si personne n'a répondu à ta demande.

Posté(e)

Bonjour tout le monde,

 

Merci pour la proposition sebdraluorg :) en attendant j'ai trouvé un script sur le net, mais je ne suis pas sur que ça fonctionne correctement.

 

Voici le script :

 

<?php
include("phpmailer/class.phpmailer.php");

$Name=$_POST['nom']." ".$_POST['prenom'];
$Mail=$_POST['mail'];
$Subject="contact";
$Telephone=$_POST['telephone'];
$Sendbody=$_POST['zoneMessage'];

$mail= new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = true;
//$mail->SMTPSecure = "ssl";
$mail->Host = "mail.yourdomain.com"; // SMTP server
$mail->Port = 587; // set the SMTP server port
$mail->CharSet = "utf-8";

$mail->Username = "name@domain.com";// SMTP server username
$mail->Password = "password";// SMTP server password

//$mail->IsSendmail(); // tell the class to use Sendmail. if local not use it.use it when you upon the server

$mail->From = $Mail;
$mail->FromName = $_POST['nom'];

$mail->Subject =$Subject;
$mail->Body = "name:".$Name."<br>E-mail:".$Mail."<br>Subject:".$Subject."<br>Telephone:".$Telephone."<br>Message:".$Sendbody;

$mail->AddAddress("someone@example...com");//send email to ...normal this is your email
$mail->IsHTML(true); 
$mail->Send();

 

Donc si j'ai bien compris, je remplace cette ligne :

someone@example...com"

par mon adresse mail.

 

Mais que dois-je mettre pour cette ligne :

$mail->Host = "mail.yourdomain.com"; // SMTP server

 

Ainsi que ces deux suivantes :

$mail->Username = "name@domain.com";// SMTP server username
$mail->Password = "password";// SMTP server password

 

De plus quand je remplace juste la première ligne avec mon adresse mail et que j'essaye, j'ai le message qui me dit que l'envoi est réussi, mais ne reçois rien... Est-ce que cela fonctionne qu'une fois mis en ligne ou est-ce que cela peut marcher même si le site est toujours en local ?

 

Merci pour vos réponse :)

Posté(e)

Re,

 

J'ai chercher un peu sur le net et je suis arrivé à faire ce script ci :

 

<?php

	$Name=$_POST['nom']." ".$_POST['prenom'];
$Mail=$_POST['mail'];
$Subject="contact";
$Telephone=$_POST['telephone'];
$Sendbody=$_POST['zoneMessage'];

$adresse = "[color="#FF0000"][b]****.****[/b][/color]@orange.fr";

 $headers ='From: "'.$Name.'"<'.$Mail.'>'."\n";
    $headers .='Reply-To: '.$Mail."\n";
    $headers .='Content-Type: text/html; charset="utf-8'."\n";
    $headers .='Content-Transfer-Encoding: 8bit'; 

 mail($adresse,$Subject,$Telephone,$Sendbody,$headers);

?>

 

Le problème c'est que je ne sais pas si il est valide. J'ai bien essayé d'installer MAMP et de voir si cela marche, mais il me marque constamment envoie réussi, mais je ne reçois pas de mail.

Quelqu'un pourrait-il me dire si mon Script est bon ?

 

:)

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.
Remarque : votre message nécessitera l’approbation d’un modérateur avant de pouvoir être visible.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

  • En ligne récemment   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
×
×
  • Créer...