Forum-webmaster
Technique - programmation => PHP / MySQL => Message commencé par: ridershow le le 10-05-2009 a 02:13:02

Titre: Probleme avec un formulaire php
Posté par: ridershow le le 10-05-2009 a 02:13:02

Bonjour,

Je commence la creation de site pour un contest et j'ai un probleme avec mon formulaire, si vous pouviez y jeter un petit coup d'oeil et me dire ou sa plante pourrait m'aider ... Car sa fait un bout de temps que je planche dessus et ne trouve pas de solution ..

<?php
if (!empty($_POST['send'])){
$recipient = ' *******@gmail.com';

$email = $_POST['email'];

$subject=stripslashes($_POST['subject']);

$message = $_POST['message'];

$message.="\n\nCe courrier électronique vous a été
envoyé à partir du site web
http://".$_SERVER['SERVER_NAME']."/\n avec l'adresse IP
".$_SERVER['REMOTE_ADDR'];

list($user, $domain) = split("@",$email, 2);

header("Location: ok.php?send=ok");
exit();

?>

<form method="post">

<table>
<tbody>
<tr>
<td class="Style4"><strong> Ton nom [Obligatoire] : </strong></td>

<td class="Style4"><input maxlength="35" name="nom" size="37" value=" Ton nom" /> </td>

</tr>
<tr>
   
<td class="Style4"><strong> Ton prenom [Obligatoire] : </strong></td>
      
<td class="Style4"><input maxlength="35" name="prenom" size="37" value=" Ton prenom " /> </td>

</tr>
<tr>

   <td class="Style4" valign="top"><strong>Rentre ici ta discipline [Skate/Trott] :</strong></td>
      
<td class="Style4"><input name="discipline" type="radio" value="Trott" checked="checked" />
trott

   <input type="radio" name="discipline" value="Skate" /> Skate </td>
</tr>
    <tr>
   
<td class="Style4" valign="top"><strong>Rentre ici ta categorie [Amateur/pro] :</strong></td>

<td class="Style4"><input name="categorie" type="radio" value="Amateur" checked="checked" />
Amateur
<input type="radio" name="categorie" value="pro" />Pro

       </td>
</tr>
<tr>

<td colspan="2" class="Style4">
<input name="send" value="Envoyer" type="submit" />
<input type="reset" name="Retablir" value="retablir" />
      
      </td>
</tr>
</tbody>
</table>

</form>

Voila donc le probleme ^^
je vous remercie d'avance de votre aide ;D

Titre: Re:Probleme avec un formulaire php
Posté par: Krash le le 10-05-2009 a 12:58:32

Quel est ton problème ?

penses déjà à mettre une action dans ton form

je connais pas le nom de ton fichier mais comme le traitement se fait sur la même page mets ceci

<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">

Titre: Re:Probleme avec un formulaire php
Posté par: Lilian le le 11-05-2009 a 19:16:53

+1 pour Krash, merci de préciser le problème ?

Titre: Re:Probleme avec un formulaire php
Posté par: ridershow le le 11-05-2009 a 19:42:29

hello,

Desoler dans tout ces codes j'en ai oublié de preciser mon probleme, veuillez m'en excuser ...
Le probleme est que lorsque je clique sur le bouton envoyer de mon formulaire, il m'indique que le formulaire a été envoyé mais je ne l'ai jamais reçu ...
Voila au point ou j'en suit ...

Dsl de ne pas avoir pu repondre plus tot mais hier je n'ai pas pu me connecter au forum, probleme de php apparament XD

merci

Titre: Re:Probleme avec un formulaire php
Posté par: Lilian le le 11-05-2009 a 19:53:19

Un header(Location) va supprimer les données en POST ...

Il faut donc effectuer votre traitement puis afficher le ok.

(Pour ce qui est de Forum-Webmaster, il y a effectivement des corrections et des améliorations qui sont apportées ce qui engendre quelques petits bugs de temps en temps ... :-\ )

Titre: Re:Probleme avec un formulaire php
Posté par: ridershow le le 11-05-2009 a 20:45:11

Donc si je supprime le header, en theorie, cela devrait fonctionner ?
De plus je voulais savoir si je pouvais mettre deux adresse e-mail dans recipient ?

C'est pas un probleme que le site ne fonctionne pas des fois, sa prouve qu'il est entretenu ;)
Merci

Titre: Re:Probleme avec un formulaire php
Posté par: Lilian le le 11-05-2009 a 21:13:11

2 adresses dans le recipient, sans problème, comme puis un mail standard avec un ;

Pour ce qui est du header, tout dépend la fonction réelle qui l'a ... si vous envoyer un mail, vous pouvez l'envoyer directement dans la même page, cela ne pose aucun problème

Titre: Re:Probleme avec un formulaire php
Posté par: ridershow le le 11-05-2009 a 21:30:19

Ba le header me permet de confirmer l'envoi du formulaire grace a une autre page php qui marque juste que le fichier m'a été envoyé , afin de rassurer l'utilisateur.


Titre: Re:Probleme avec un formulaire php
Posté par: Lilian le le 11-05-2009 a 21:35:30

Dans ce cas directement dans la page et le serveur sera encore plus content :)

Titre: Re:Probleme avec un formulaire php
Posté par: ridershow le le 11-05-2009 a 21:37:26

ba je me disais aussi que ce serait plus simple mais je n'ai pas encore les competences pour avoir un texte qui s'affiche que lorsque l'action envoyer est actionner..
Quel balise utiliser ?

Titre: Re:Probleme avec un formulaire php
Posté par: Lilian le le 11-05-2009 a 21:49:30

La balise "echo" tout simplement :)

Titre: Re:Probleme avec un formulaire php
Posté par: ridershow le le 11-05-2009 a 21:59:23

ok super merci :P
je vais potasser la dessus et je vous tiens au courant

merci :)

Titre: Re:Probleme avec un formulaire php
Posté par: ridershow le le 11-05-2009 a 22:39:34

Bon ba finalement j'ai reussit a faire un truc mais sa marche toujours pas ...
Je me suis aidé d'un document que me passé l'hebergeur et sa donne un truc comme sa :

<?php
if (!empty($_POST['send'])){
$recipient = 'l********@gmail.com';

$email = $_POST['email'];

$subject=stripslashes($_POST['subject']);

$message = $_POST['message'];

$message.="\n\nCe courrier électronique vous a été
envoyé à partir du site web
http://".$_SERVER['SERVER_NAME']."/\n avec l'adresse IP
".$_SERVER['REMOTE_ADDR'];

list($user, $domain) = split("@",$email, 2);
   
if (!checkdnsrr($domain, "MX")) {
header("Location: mail.php?mail=nok");
exit();
}
if (mail($recipient, $subject, $message,'From:'.$email))
{
header("Location: mail.php?send=ok");
exit();
}
}

?>

<?
if (isset($_GET['send']) and $_GET['send']=="ok")
echo "Le formulaire a &eacute;t&eacute; envoy&eacute;";

if (isset($_GET['mail']) and $_GET['mail']=="nok")
echo "Le formulaire n'a pas pu être envoyé";
?>


<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">

<table>
<tbody>
<tr>
<td class="Style4"><strong> Ton nom [Obligatoire] : </strong></td>

<td class="Style4"><input maxlength="35" name="nom" size="37" value=" Ton nom" /> </td>

</tr>
<tr>
   
<td class="Style4"><strong> Ton prenom [Obligatoire] : </strong></td>
      
<td class="Style4"><input maxlength="35" name="prenom" size="37" value=" Ton prenom " /> </td>

</tr>
<tr>

    <td class="Style4" valign="top"><strong>Rentre ici ta discipline [Skate/Trott] :</strong></td>
      
<td class="Style4"><input name="discipline" type="radio" value="Trott" checked="checked" />
trott

   <input type="radio" name="discipline" value="Skate" /> Skate </td>
</tr>
    <tr>
   
<td class="Style4" valign="top"><strong>Rentre ici ta categorie [Amateur/pro] :</strong></td>

<td class="Style4"><input name="categorie" type="radio" value="Amateur" checked="checked" />
Amateur
<input type="radio" name="categorie" value="pro" />Pro

       </td>
</tr>
   
<tr>

<td colspan="2" class="Style4">
<input name="send" value="Envoyer" type="submit" />
<input type="reset" name="Retablir" value="retablir" />
      
      </td>
</tr>
</tbody>
</table>

</form>

Si vous pourriez m'indiquer ou j'ai pu commetre une erreur .
Car la des que j'envoi mon formulaire, j'ai le droit à: " la page internet rechercher n'exisre pas "

Voila , merci de votre aide


Forum-webmaster | Actionné par YaBB SE
© 2001-2003, YaBB SE Dev Team. Tous droits réservés.