Probleme de script en PHP 5 ?

Petit nouveau ! | 7 Messages

14 févr. 2013, 18:39

Bonjour,

J'utilise un vieux script qui avec la mise à jour en php 5 ne fonctionne plus... il s'agit d'un script pour l'envoi de données d'un formulaire par mail.
Mon hébergeur est en php5.2 et va passer en php5.4Je n'ai aucun message d'erreur mais ne reçois plus le mail avec le contenu du formulaire.
J'ai deux fichiers :

formulaire.php

Code : Tout sélectionner

<SCRIPT language="JavaScript" title="G1SCRIPT">function checkrequired(which){var pass=true if(document.images){for(i=0;i<which.length;i++){var tempobj=which.elements[i] if(tempobj.name.substring(0,8)=="required"){if(((tempobj.type=="text"||tempobj.type=="textarea")&&tempobj.value=='')||(tempobj.type.toString().charAt(0)=="s"&&tempobj.selectedIndex==-1)){pass=false break}}}}if(!pass){alert("Un ou des éléments ne sont pas inscrit! Vérifier votre formulaire!") return false}else return true}</SCRIPT> <FORM action=confirme_formulaire.php method=post onSubmit="return checkrequired(this)"> <INPUT type=hidden value=oui name=formulaire> <input size=25 type=text name=requiredNom> <input size=25 type=text name=requiredadresse > <input size=25 type=text name=requiredmessage > <input size=25 type=text name=email > <input type=submit value=Envoyer name=envoyer> </form>
et
confirme_formulaire.php

Code : Tout sélectionner

Merci, nous avons bien reçu votre message<br> <? if ($email > "") { ?> Vous allez recevoir un email de confirmation <? } ?> <? if ($formulaire=="oui"){ $emaisociete = "[email protected]"; $entete="from:$email"; $fin="merci de votre demande Elle sera traitée le plus rapidement possible\n\n"; $signature=" Ma signature email : $emaisociete ********************************************"; $titre="Annonce"; $line1=" ************** $titre ************** Nom : $requiredNom Adresse : $requiredadresse message : $requiredmessage E-mail : $email ********************************* "; $messageclient=strval($line1)."\n".strval($fin)."\n".strval($signature); $messagesociete=strval($line1); //envoie message au client if ($email == "") { } else { mail("$email",$titre,$messageclient,$entete); } //envoie message à la societe mail("$emaisociete",$titre,$messagesociete,$entete); } ?>
Merci de bien vouloir me dire ce qui ne va plus....

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

14 févr. 2013, 23:28

salut,


ce qui ne va pas :
- short tags
- utilisation de l'auto déclaration des variables (register globals on, ce paramètre est supprimé avec php 5.4).

un cours sur l'utilisation des formulaires : http://www.lephpfacile.com/cours/8-recu ... ormulaires

au passage il serait bien de rendre ton code html valide.
Pour commencer utilise des " pour tous les attributs, par exemple
<input type="text" name="truc" />

@+
Il en faut peu pour être heureux ......

Petit nouveau ! | 7 Messages

18 févr. 2013, 11:06

Merci beaucoup Moogli,

En fait je suis assez nul en php et j'avais récupéré ce script à l'époque. Serait-ce abusé de te demander de me corriger le script ?
:oops:
En te remerciant par avance

Petit nouveau ! | 7 Messages

19 févr. 2013, 12:57

Help