Script PHP et IIS
Fermé
Gratfouille
Messages postés
8
Date d'inscription
lundi 13 octobre 2008
Statut
Membre
Dernière intervention
13 octobre 2008
-
13 oct. 2008 à 09:54
Gratfouille Messages postés 8 Date d'inscription lundi 13 octobre 2008 Statut Membre Dernière intervention 13 octobre 2008 - 13 oct. 2008 à 18:41
Gratfouille Messages postés 8 Date d'inscription lundi 13 octobre 2008 Statut Membre Dernière intervention 13 octobre 2008 - 13 oct. 2008 à 18:41
A voir également:
- Script PHP et IIS
- Script vidéo youtube - Guide
- Easy php - Télécharger - Divers Web & Internet
- Ghost script - Télécharger - Polices de caractères
- Microsoft activation script - Accueil - Windows
- Script bat - Guide
16 réponses
hani_
Messages postés
333
Date d'inscription
lundi 22 septembre 2008
Statut
Membre
Dernière intervention
18 novembre 2009
20
13 oct. 2008 à 10:43
13 oct. 2008 à 10:43
ÿÀ�Ñú�ÿÄ�±������������������������� ��!U1Ñ"’“ÓAQ2#³Tt”5SaBRÔqb3$‘rE¡±C¤Á£����!1AQaq"ð‘¡±Á2BRÑñbár‚¢²’#3ScÂÒâò³ÿÚ���?�ýR€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ �€ Éï|uzµN(ú‘K)œ±”ŸöÊ1ffúŠtsŸ›ûi=úÑÎ~n·í¤÷èG9ùºß¶“ß çæë~ÚO~€tsŸ›ûi=úÑÎ~n·í¤÷èG9ùºß¶“ß çæë~ÚO~€tsŸ›ûi=úÑÎ~n·í¤÷èG9ùºß¶“ß çæë~ÚO~€tsŸ›ûi=úÑÎ~n·í¤÷èG9ùºß¶“ß çæë~ÚO~€tsŸ›ûi=ú—+^Ý@žh%ŠÄ¥0Bq“iÈÎÄòÈÞXþ¤Š…�€ �€ �€ �€ �€ �€ �€ �€ �€ >mÈy#Ä|É™ÞÖþ%Ž¡FLŠ7xÚüö!{+WH
voici une toute petite partie de ce que je vois en inspectant le code source en clic droit
<img style="cursor: -moz-zoom-in;" alt="http://gratfouille.levillage.org/formulairephp.jpg" src="http://gratfouille.levillage.org/formulairephp.jpg" width="458">
et voici le code complet de ta page vu par firebug...
Bonjour hani_
Je crois que tu n'as pas compris que le lien de gratfouille n'est pas sur sa page, mais sur une capture d'écran de sa page, c'est à dire une image.
Je crois que tu n'as pas compris que le lien de gratfouille n'est pas sur sa page, mais sur une capture d'écran de sa page, c'est à dire une image.
hani_
Messages postés
333
Date d'inscription
lundi 22 septembre 2008
Statut
Membre
Dernière intervention
18 novembre 2009
20
13 oct. 2008 à 10:49
13 oct. 2008 à 10:49
ben forcement dit comme ça...
dans ce cas si je peut pas faire grand chose... les indices c'est le code qui me les donnes... sans code pas d'indices sans indices pas de solutions possibles
dans ce cas si je peut pas faire grand chose... les indices c'est le code qui me les donnes... sans code pas d'indices sans indices pas de solutions possibles
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Gratfouille
Messages postés
8
Date d'inscription
lundi 13 octobre 2008
Statut
Membre
Dernière intervention
13 octobre 2008
13 oct. 2008 à 12:50
13 oct. 2008 à 12:50
Alors, mon premier problème est résolu, il a fallu changer tous les <? par <?php
Maintenant, mon formulaire ne veut pas envoyer...
Voici le code source
Maintenant, mon formulaire ne veut pas envoyer...
Voici le code source
<?php // On vérifie si la fonction ini_set() a été désactivée... $desactive = ini_get('disable_functions'); if (preg_match("/ini_set/i", "$desactive") == 0) { // Si elle n'est pas désactivée, on définit ini_set de manière à n'afficher que les erreurs... ini_set("error_reporting" , "E_ALL & ~E_NOTICE"); } // Vérifier que le formulaire a été envoyé... if (isset($_POST['envoi'])) { //On commence une session pour enregistrer les variables du formulaire... session_start(); $_SESSION['champ1'] = $_POST['champ1']; $_SESSION['champ2'] = $_POST['champ2']; $_SESSION['champ3'] = $_POST['champ3']; $_SESSION['champ4'] = $_POST['champ4']; $_SESSION['champ5'] = $_POST['champ5']; $_SESSION['zone_email1'] = $_POST['zone_email1']; //Enregistrement des zones de texte... $_SESSION['zone_texte1'] = $_POST['zone_texte1']; // Définir l\'icone apparaissant en cas d\'erreur... // Définir sur 0 pour afficher un petit x de couleur rouge. // Définir sur 1 pour afficher l\'image d\'une croix rouge telle que celle utilisée dans l\'assistant // Si vous utilisez l\'option 1, l\'image de la croix rouge \'icone.gif\' doit se trouver dans le répertoire \'images\', // ce dernier devant se trouver au même niveau que votre formulaire... $flag_icone = 0; // On vérifie si $flag_icone est défini sur 0 ou 1... if ($flag_icone == 0) { $icone = "<b><font size=\"3\" face=\"Arial, Verdana, Helvetica, sans-serif\" color=\"#CC0000\">x</font></b>"; } else { $icone = "<img src=\"images/icone.gif\""; } // Définir l'indicateur d'erreur sur zéro... $flag_erreur = 0; // N'envoyer le formulaire que s'il n'y a pas d'erreurs... if ($flag_erreur == 0) { // Addresse de réception du formulaire $email_dest = "mail@orange.fr"; $sujet = "Demande d'étude"; $entetes ="MIME-Version: 1.0 \n"; $entetes .="From: Société<mail@orange.fr>\n"; $entetes .="Return-Path: Société<mail@orange.fr>\n"; $entetes .="Reply-To: Société<mail@orange.fr>\n"; $entetes .="Content-Type: text/html; charset=iso-8859-1 \n"; $partie_entete = "<html>\n<head>\n<title>Formulaire</title>\n<meta http-equiv=Content-Type content=text/html; charset=iso-8859-1>\n</head>\n<body bgcolor=#FFFFFF>\n"; //Partie HTML de l'e-mail... $partie_champs_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Nom = " . $_SESSION['champ1'] . "</font><br>\n"; $partie_champs_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Prénom = " . $_SESSION['champ2'] . "</font><br>\n"; $partie_champs_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Société = " . $_SESSION['champ3'] . "</font><br>\n"; $partie_champs_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Téléphone = " . $_SESSION['champ4'] . "</font><br>\n"; $partie_champs_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Type de PLV récherchée = " . $_SESSION['champ5'] . "</font><br>\n"; $partie_zone_email .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Adresse Email = " . $_SESSION['zone_email1'] . "</font><br>\n"; $partie_zone_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Votre demande = " . $_SESSION['zone_texte1'] . "</font><br>\n"; // Fin du message HTML $fin = "</body></html>\n\n"; $sortie = $partie_entete . $partie_champs_texte . $partie_zone_email . $partie_listes . $partie_boutons . $partie_cases . $partie_zone_texte . $fin; // Send the e-mail if (@!mail($email_dest,$sujet,$sortie,$entetes)) { echo("Envoi du formulaire impossible"); exit(); } else { // Rediriger vers la page de remerciement header("Location:http://www.monsite.com/merci.php"); exit(); } // Fin else } // Fin du if ($flag_erreur == 0) { } // Fin de if POST ?> <html> <!-- Assistant de création de formulaires PHP pour les nuls - Version gratuite 1.6 Auteur : Frédéric Ménard (assistant@f1-fantasy.net) Site : http://www.f1-fantasy.net/assistant --> <head> <title>Formulaire</title> <script language="JavaScript"> function verifSelection() { if (document.mail_form.champ1.value == "") { alert("Merci de nous communiquer votre Nom") return false } if (document.mail_form.champ3.value == "") { alert("Merci de nous communiquer le nom de votre société") return false } if (document.mail_form.champ4.value == "") { alert("Merci de nous communiquer votre numéro de portable") return false } if (document.mail_form.zone_email1.value == "") { alert("Merci de nous communiquer une adresse Email valide") return false } invalidChars = " /:,;'" for (i=0; i < invalidChars.length; i++) { // does it contain any invalid characters? badChar = invalidChars.charAt(i) if (document.mail_form.zone_email1.value.indexOf(badChar,0) > -1) { alert("Votre adresse e-mail contient des caractères invalides. Veuillez vérifier.") document.mail_form.zone_email1.focus() return false } } atPos = document.mail_form.zone_email1.value.indexOf("@",1) // there must be one "@" symbol if (atPos == -1) { alert('Votre adresse e-mail ne contient pas le signe "@". Veuillez vérifier.') document.mail_form.zone_email1.focus() return false } if (document.mail_form.zone_email1.value.indexOf("@",atPos+1) != -1) { // and only one "@" symbol alert('Il ne doit y avoir qu\'un signe "@". Veuillez vérifier.') document.mail_form.zone_email1.focus() return false } periodPos = document.mail_form.zone_email1.value.indexOf(".",atPos) if (periodPos == -1) { // and at least one "." after the "@" alert('Vous avez oublié le point "." après le signe "@". Veuillez vérifier.') document.mail_form.zone_email1.focus() return false } if (periodPos+3 > document.mail_form.zone_email1.value.length) { // must be at least 2 characters after the alert('Il doit y avoir au moins deux caractères après le signe ".". Veuillez vérifier.') document.mail_form.zone_email1.focus() return false } } // Fin de la fonction </script> </head><body><form name="mail_form" method="post" action="<?php echo $_SERVER['PHP_SELF']?>" onSubmit="return verifSelection()"> <div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif, Tahoma"><strong>Formulaire de contact</strong></font></div><br><table align="center" width="566" border="0" cellspacing="0" cellpadding="0"> <tr> <td height="16"><div align="center"> <font color="#CC0000" size="2" face="Verdana, Arial, Helvetica, sans-serif, Tahoma"><strong><?php if ($erreur_champ1) { echo(stripslashes($erreur_champ1)); } else { if ($erreur_champ2) { echo(stripslashes($erreur_champ2)); } else { if ($erreur_champ3) { echo(stripslashes($erreur_champ3)); } else { if ($erreur_champ4) { echo(stripslashes($erreur_champ4)); } else { if ($erreur_champ5) { echo(stripslashes($erreur_champ5)); } else { if ($erreur_email1) { echo(stripslashes($erreur_email1)); } else { if ($erreur_texte1) { echo(stripslashes($erreur_texte1)); } else { } // Fin du else... } // Fin du else... } // Fin du else... } // Fin du else... } // Fin du else... } // Fin du else... } // Fin du else... ?> </strong></font> </div></td> </tr> </table> <p align="center"></p><table width="566" border="0" align="center"><tr> <td width="140"><div align="right"><font face="Verdana" size="2">Nom</font></div></td> <td align="center" valign="middle" width="30"> <?php if ($erreur_champ1) { echo($icone); } ?> </td> <td><input name="champ1" type="text" value="<?php echo stripslashes($_SESSION['champ1']);?>"></td> </tr></table><table width="566" border="0" align="center"><tr> <td width="140"><div align="right"><font face="Verdana" size="2">Prénom</font></div></td> <td align="center" valign="middle" width="30"> <?php if ($erreur_champ2) { echo($icone); } ?> </td> <td><input name="champ2" type="text" value="<?php echo stripslashes($_SESSION['champ2']);?>"></td> </tr></table><table width="566" border="0" align="center"><tr> <td width="140"><div align="right"><font face="Verdana" size="2">Société</font></div></td> <td align="center" valign="middle" width="30"> <?php if ($erreur_champ3) { echo($icone); } ?> </td> <td><input name="champ3" type="text" value="<?php echo stripslashes($_SESSION['champ3']);?>"></td> </tr></table><table width="566" border="0" align="center"><tr> <td width="140"><div align="right"><font face="Verdana" size="2">Téléphone</font></div></td> <td align="center" valign="middle" width="30"> <?php if ($erreur_champ4) { echo($icone); } ?> </td> <td><input name="champ4" type="text" value="<?php echo stripslashes($_SESSION['champ4']);?>"></td> </tr></table><table width="566" border="0" align="center"><tr> <td width="140"><div align="right"><font face="Verdana" size="2">Type de PLV récherchée</font></div></td> <td align="center" valign="middle" width="30"> <?php if ($erreur_champ5) { echo($icone); } ?> </td> <td><input name="champ5" type="text" value="<?php echo stripslashes($_SESSION['champ5']);?>"></td> </tr></table><table width="566" border="0" align="center"><tr> <td width="140"><div align="right"><font face="Verdana" size="2">Adresse Email</font></div></td> <td width="30" align="center" valign="middle"> <?php if ($erreur_email1) { echo($icone); } ?> </td> <td><input name="zone_email1" type="text" value="<?php echo stripslashes($_SESSION['zone_email1']);?>"></td> </tr></table><table width="566" border="0" align="center"><tr> <td width="140" valign="top"><div align="right"><font face="Verdana" size="2">Votre demande</font></div></td> <td width="30" align="center" valign="top"> <?php if ($erreur_texte1) { echo($icone); } ?> </td> <td><textarea name="zone_texte1" cols="45" rows="10"><?php echo stripslashes($_SESSION['zone_texte1']);?></textarea></td> </tr></table><table width="566" border="0" align="center"><tr> <td valign="top"><div align="center"> <input type="reset" name="Reset" value=" Effacer "> <input type="submit" name="envoi" value="Envoyer"> </div></td></tr></table><div align="center"><input name="nbre_fichiers" type="hidden" id="nbre_fichiers" value=""></div></form></body></html>
Supprimer l'affichage des NOTICE est une très mauvaise idée tant que ton script n'est pas au point. Tu te prives (et tu nous prives) d'une information capitale pour la mise au point.
Que se passe-t-il finalement ? Quel affichage, quel message d'erreur ?
Que se passe-t-il finalement ? Quel affichage, quel message d'erreur ?
Gratfouille
Messages postés
8
Date d'inscription
lundi 13 octobre 2008
Statut
Membre
Dernière intervention
13 octobre 2008
13 oct. 2008 à 13:25
13 oct. 2008 à 13:25
Le message d'erreur est
Envoi du formulaire impossible
issu de la portion de code
Envoi du formulaire impossible
issu de la portion de code
// Send the e-mail if (@!mail($email_dest,$sujet,$sortie,$entetes)) { echo("Envoi du formulaire impossible"); exit(); } else {
Remet l'affichage des NOTICE
Enlève le @ devant @!mail : if (!mail($email_dest,$sujet,$sortie,$entetes)) {
encore une c..!#$..ie qui empêche de voir ce qui se passe
et redonne le message d'erreur
Enlève le @ devant @!mail : if (!mail($email_dest,$sujet,$sortie,$entetes)) {
encore une c..!#$..ie qui empêche de voir ce qui se passe
et redonne le message d'erreur
Gratfouille
Messages postés
8
Date d'inscription
lundi 13 octobre 2008
Statut
Membre
Dernière intervention
13 octobre 2008
13 oct. 2008 à 13:49
13 oct. 2008 à 13:49
Pour remettre les NOTICES je fais ça?
// On vérifie si la fonction ini_set() a été désactivée... $desactive = ini_get('disable_functions'); if (preg_match("/ini_set/i") == 0) { // Si elle n'est pas désactivée, on définit ini_set de manière à n'afficher que les erreurs... ini_set("error_reporting" , "E_ALL & ~E_NOTICE"); }
Gratfouille
Messages postés
8
Date d'inscription
lundi 13 octobre 2008
Statut
Membre
Dernière intervention
13 octobre 2008
13 oct. 2008 à 13:53
13 oct. 2008 à 13:53
Quoi que je fasse, c'est toujours la même phrase qui remonte
Envoi du formulaire impossible
Envoi du formulaire impossible
Normal, les messages d'erreur sont très probablement masqués.
Mets en commentaire tout le passage :
// On vérifie si la fonction ini_set() a été désactivée...
$desactive = ini_get('disable_functions');
if (preg_match("/ini_set/i") == 0) {
// Si elle n'est pas désactivée, on définit ini_set de manière à n'afficher que les erreurs...
ini_set("error_reporting" , "E_ALL & ~E_NOTICE");
}
et remplace par
ini_set("error_reporting" , E_ALL); // pas de guillemets autour de E_ALL
Mets en commentaire tout le passage :
// On vérifie si la fonction ini_set() a été désactivée...
$desactive = ini_get('disable_functions');
if (preg_match("/ini_set/i") == 0) {
// Si elle n'est pas désactivée, on définit ini_set de manière à n'afficher que les erreurs...
ini_set("error_reporting" , "E_ALL & ~E_NOTICE");
}
et remplace par
ini_set("error_reporting" , E_ALL); // pas de guillemets autour de E_ALL
Gratfouille
Messages postés
8
Date d'inscription
lundi 13 octobre 2008
Statut
Membre
Dernière intervention
13 octobre 2008
13 oct. 2008 à 15:32
13 oct. 2008 à 15:32
Impossible, je n'y arrive pas. J'ai contrôler les paramètres mail sur mon serveur, mais rien ne change.
Ce formulaire fonctionne au village, alors je pense que cela viens de mon serveur mais je ne vois pas d'ou.
Ce formulaire fonctionne au village, alors je pense que cela viens de mon serveur mais je ne vois pas d'ou.
Impossible, je n'y arrive pas
Si c'est possible
A quoi n'arrives-tu pas ? à mettre le passage indiqué en commentaire ? A afficher les erreurs ?
As-tu bien retiré le @avant le !mail ( ?
Que ça aie déjà marché au village (bonjour chez vous, N°6) ne prouve pas qu'l n'y a pas d'erreur. Tu l'essayes où, la version qui ne marche pas ?
Si c'est possible
A quoi n'arrives-tu pas ? à mettre le passage indiqué en commentaire ? A afficher les erreurs ?
As-tu bien retiré le @avant le !mail ( ?
Que ça aie déjà marché au village (bonjour chez vous, N°6) ne prouve pas qu'l n'y a pas d'erreur. Tu l'essayes où, la version qui ne marche pas ?
Gratfouille
Messages postés
8
Date d'inscription
lundi 13 octobre 2008
Statut
Membre
Dernière intervention
13 octobre 2008
13 oct. 2008 à 15:51
13 oct. 2008 à 15:51
En fait, j'ai modifié le code avec les éléments que tu m'as donné, puis envelvé le @
Puis
Mais la réponse de ma page au moment de l'envoi de mail est Envoi du formulaire impossible
J'ai contrôlé les paramètres du serveur pourla fonction mail, et tout me parait correct...
// On vérifie si la fonction ini_set() a été désactivée... $desactive = ini_get('disable_functions'); if (preg_match("/ini_set/i") == 0) { // Si elle n'est pas désactivée, on définit ini_set de manière à n'afficher que les erreurs... ini_set("error_reporting" , E_ALL); } // Vérifier que le formulaire a été envoyé... if (isset($_POST['envoi'])) {
Puis
// Send the e-mail if (!mail($email_dest,$sujet,$sortie,$entetes)) { echo("Envoi du formulaire impossible"); exit(); } else {
Mais la réponse de ma page au moment de l'envoi de mail est Envoi du formulaire impossible
J'ai contrôlé les paramètres du serveur pourla fonction mail, et tout me parait correct...
// On vérifie si la fonction ini_set() a été désactivée...
$desactive = ini_get('disable_functions');
if (preg_match("/ini_set/i") == 0) {
// Si elle n'est pas désactivée, on définit ini_set de manière à n'afficher que les erreurs...
ini_set("error_reporting" , E_ALL);
}
tu n'as pas mis le passage en commentaire. Ne laisse que ini_set("error_reporting" , E_ALL);
( d'ailleurs preg_match("/ini_set/i") est une erreur )
Tu peux aussi modifier le error_reporting = E_ALL directement dans ton fichier php.ini (il faut peut-être relancer IIS, je ne sais pas)
$desactive = ini_get('disable_functions');
if (preg_match("/ini_set/i") == 0) {
// Si elle n'est pas désactivée, on définit ini_set de manière à n'afficher que les erreurs...
ini_set("error_reporting" , E_ALL);
}
tu n'as pas mis le passage en commentaire. Ne laisse que ini_set("error_reporting" , E_ALL);
( d'ailleurs preg_match("/ini_set/i") est une erreur )
Tu peux aussi modifier le error_reporting = E_ALL directement dans ton fichier php.ini (il faut peut-être relancer IIS, je ne sais pas)
Gratfouille
Messages postés
8
Date d'inscription
lundi 13 octobre 2008
Statut
Membre
Dernière intervention
13 octobre 2008
13 oct. 2008 à 18:41
13 oct. 2008 à 18:41
Désolé pour la coupure j'ai du m'absenter.
Je viens de faire les modifications mais sans succès.
Je vais chercher du côté de la configuration de mon serveur et attendre ton analyse niveau PHP car là je sèche.
Merci
Je viens de faire les modifications mais sans succès.
Je vais chercher du côté de la configuration de mon serveur et attendre ton analyse niveau PHP car là je sèche.
Merci