Hello PHP Gurus,
I need help for a registration form I’ve received…
I get an error:
Parse error: syntax error, unexpected T_ELSE in /home/elitemma/public_html/inscription_Bis.php on line 1
I’m a graphic designer and really don’t know what’s going on…
Please Help me, I really need this think to work!
Thanks a million
Benji
Here is the code
[php]<?php
error_reporting (E_ERROR | E_WARNING | E_PARSE);
/*
Envoi de formulaire sans javascript avec pièce jointe proposé par Pierre Pesty http://dev.ppan.net/
Variables A MODIFIER selon vos besoins :
*/
remplacez login@fai par votre email
$destinataire = "[email protected]";
nom et titre de page
$pageName = “PARTICIPER AU CONCOURS LUX”;
en-tête de l’objet du mail (option: vide)
$entete = “Elite Model Look Inscription”;
envoi en copie carbone (option: vide)
$email_cc = “”;
envoi en copie cachée (option: vide)
$email_bcc = "[email protected]";
emplacement de la feuille de styles
$cssform = “”;
nom du répertoire pour upload des pièces jointes
le répertoire (ici “upload”) doit être créé sur le serveur
$rep = “upload/”; // ne pas oublier le slash /
taille max de la pièce jointe (multiple de 1024)
$taillemax = 819200;
menu déroulant pour l’objet (option: vide)
ajout d’option : ‘n’=>‘Choix 1’, ‘n+1’=>‘Choix 2’, etc.
la première ligne (optionnelle) impose un choix
$objets = array(
0 => ‘168’,
1 => ‘169’,
2 => ‘170’,
3 => ‘171’,
4 => ‘172’,
5 => ‘173’,
6 => ‘174’,
7 => ‘175’,
8 => ‘176’,
9 => ‘177’,
10 => ‘178’,
11 => ‘179’,
12 => ‘180’,
13 => ‘181’,
14 => ‘182’,
15 => ‘183’,
16 => ‘184’,
17 => ‘185’,
18 => ‘186’,
19 => ‘187’,
20 => ‘188’,
21 => ‘189’,
22 => ‘190’,
23 => ‘191’,
24 => ‘192’,
25 => ‘193’,
26 => ‘194’,
27 => ‘195’,
28 => ‘196’,
29 => ‘197’,
30 => ‘198’,
31 => ‘199’,
32 => ‘200’,
);
page vers laquelle rediriger le script après envoi réussi
$pageconfirme = “casting.html”;
traiter $_GET[‘mailOK’] dans $pageconfirme (ex. index.php) comme ceci :
if(isset($_GET[‘mailOK’])) echo “Votre message a été envoyé”;
/*
fin des modifications
*/
$erreur = false;
$message = false;
$focus = 0;
l’utilisateur a validé le formulaire
if (!empty($_POST)) {
# vérification des champs requis (Nom, Objet, Message, Email ou Tel)
if (empty($_POST['Message'])) {
$erreur = "Merci de renseigner le message";
$focus = 1; // modification couleur du champ de saisie concerné
}
if (empty($_POST['Date'])) {
$erreur = "Merci de renseigner votre date de naissance";
$focus = 2; // modification couleur du champ de saisie concerné
}
if (empty($_POST['Objet'])) {
$erreur = "Merci de renseigner l'objet";
$focus = 3;
}
if (empty($_POST['Nom'])) {
$erreur = "Merci de renseigner votre nom";
$focus = 4;
}
if (empty($_POST['Adresse'])) {
$erreur = "Merci de renseigner votre adresse complète";
$focus = 5;
}
if (empty($_POST['Ville'])) {
$erreur = "Merci de renseigner votre ville complète";
$focus = 6;
}
if (empty($_POST['Cp'])) {
$erreur = "Merci de renseigner votre Code Postal complèt";
$focus = 7;
}
if (empty($_POST['Prenom'])) {
$erreur = "Merci de renseigner votre Prenom";
$focus = 8;
}
if (empty($_POST['Mensurations'])) {
$erreur = "Merci de renseigner vos Mensurationsurations";
$focus = 9;
}
# email et tel sont vides : pas glop !
if (empty($_POST['Email']) && empty($_POST['Tel'])) {
$erreur = "Saisir email et/ou téléphone SVP";
$focus = 10;
}
# vérification de l'email non vide
elseif (!empty($_POST['Email'])) {
if(!preg_match('`^[[:alnum:]]([-_.]?[[:alnum:]])*@[[:alnum:]]([-_.]?[[:alnum:]])*\.([a-z]{2,4})$`',$_POST['Email'])) {
$erreur = "Email non conforme";
$_POST['Email'] = "";
$focus = 11;
}
# vérification du téléphone (sans espaces)
} elseif (!is_numeric(str_replace(" ","",$_POST['Tel']))) {
$erreur = "Téléphone non conforme";
$_POST['Tel'] = "";
$focus = 12;
}
# pièce jointe (nouveauté 12.10.2005)
$piecejointe = "";
if(!$erreur && strlen($_FILES['Fichier']['name'])) {
$fichier = $_FILES['Fichier'];
# upload du fichier sur le serveur
$temp = $fichier['tmp_name'];
$name = $fichier['name'];
$size = $fichier['size'];
$destination = $rep.$name;
if($size > $taillemax)
$erreur = "Taille du fichier $name > ".(int)($taillemax/1024)." Ko";
elseif(!@is_uploaded_file($temp))
$erreur = "Téléchargement du fichier $name impossible";
elseif(!@move_uploaded_file($temp, $destination))
$erreur = "Problème de transfert du fichier $name";
if($erreur) $focus = 13;
else {
# lecture du type de fichier
if(!function_exists('mime_content_type')) {
function mime_content_type($fichier) {
# ajouter autant de combinaisons que souhaitées
$mime = array(
'.gif' => 'image/gif',
'.jpg' => 'image/jpeg',
'.png' => 'image/png',
);
# par défaut
if(!$type = $mime[strrchr($fichier,'.')]) $type = "application/octet-stream";
return $type;
}
}
/*
pour utiliser mime_content_type()
éditer le fichier php.ini et enlever le commentaire sur :
extension=php_mime_magic.dll
sous Windows ajouter ces 2 lignes :
mime_magic.debug = On
mime_magic.magicfile = "c:\chemin_du_fichier\magic.mime"
NB : fonction non activée chez OVH
*/
$mimetype = mime_content_type($destination);
# lecture et conversion du fichier
if($openf = @fopen($destination, "rb")) {
$fichier = fread($openf, filesize($destination));
@fclose($openf);
# encodage norme RFC 2045
$piecejointe = chunk_split(base64_encode($fichier));
} else {
$erreur = "Problème de lecture du fichier $name";
$focus = 14;
}
}
}
# pas d'erreur donc on continue
if(!$erreur) {
# traitement du tableau $_POST qui contient les paires name => value
$message_final = "";
foreach($_POST as $key => $value) {
# la boucle passe les champs vides ou non désirés
# pour passer d'autres champs les séparer par |
if (!strlen($value) || eregi("(MAX_FILE_SIZE|Objet)", $key)) continue;
$message_final .= "$key : ".strip_tags($value)."\n";
}
# formatage du message de confirmation affiché (option)
# conversion des sauts de ligne et des caractères spéciaux
$message = ereg_replace("(\n|\r|\r\n)", "<br>", htmlentities($message_final));
# si $objets est un tableau : Objet = select donc index = $_POST['Objet']
if(is_array($objets))
$objet = "$entete ".$objets[$_POST['Objet']];
# sinon Objet = input donc en français dans le texte !
else
$objet = "$entete ".$_POST['Objet'];
# si l'email n'est pas renseigné on le remplace par celui
# du destinataire, en ajoutant une alerte au message
$final_mail = $_POST['Email'];
if(empty($_POST['Email'])) {
$final_mail = $destinataire;
$message_final .= "\nNe pas répondre par mail : email absent.\n";
}
# en-têtes
$headers = "From: ".$final_mail;
if(strlen($email_cc))
$headers .= "\nCC: ".$email_cc;
if(strlen($email_bcc))
$headers .= "\nBCC: ".$email_bcc;
# si pièce jointe on ajoute l'en-tête spécifique avec séparateurs
if(strlen($piecejointe)) {
$boundary = "/-------".md5(uniqid(rand()))."-------/"; // séparateur
$headers .= "\nMIME-Version: 1.0\nContent-Type: multipart/mixed; boundary=\"$boundary\"\n";
$message_final =
"This is a multi-part message in MIME format.\n--$boundary\n".
"Content-Type: text/plain; charset=ISO-8859-1\n".
"Content-Transfer-Encoding: 7bit\n\n".
"$message_final\n\n--$boundary\n".
"Content-Type: $mimetype; name=\"$name\"\n".
"Content-Transfer-Encoding: base64\n".
"Content-Disposition: attachment; filename=\"$name\"\n\n".
"$piecejointe\n--".
$boundary."--\n";
}
# envoi du mail
if (@mail($destinataire, stripslashes($objet), stripslashes($message_final), $headers)) {
@unlink($destination); // suppression de la pièce jointe
@header("Location: ".$pageconfirme."?mailenvoye");
exit;
} else {
$pageName = "Echec !";
$erreur = "Echec de l'envoi ! Merci d'essayer encore";
}
} else {
$pageName = "Erreur de saisie !";
} // if(!$erreur)
} // if ($_POST)
?>
PARTICIPER AU CONCOURS
Participez au plus prestigieux concours international de mannequins.
Conditions de participation:&#38;#38;#202;tre une jeune fille
Avoir entre 14 et 22 ans
Mesurer plus de 172cm
Merci de renseigner les champs marqués d'un astérisque (email et/ou téléphone)
<? } else { ?><? echo $erreur?>
<? } ?>Nom name="Nom" maxlength="30" value="<? echo htmlentities($_POST['Nom'], ENT_QUOTES)?>">
Prenom name="Prenom" maxlength="30" value="<? echo htmlentities($_POST['Prenom'], ENT_QUOTES)?>">
E-mail name="Email" maxlength="60" value="<? echo htmlentities($_POST['Email'], ENT_QUOTES)?>">
Téléphone name="Tel" maxlength="15" value="<? echo htmlentities($_POST['Tel'])?>">
Adresse name="Adresse" maxlength="100" value="<? echo htmlentities($_POST['Adresse'])?>">
Code Postal name="Cp" maxlength="5" value="<? echo htmlentities($_POST['Cp'])?>">
Ville name="Ville" maxlength="25" value="<? echo htmlentities($_POST['Ville'])?>">
Date de Naissance (Format XX-XX-XXXX) name="Date" maxlength="10" value="<? echo htmlentities($_POST['Date'])?>">
<? if (is_array($objets)) { ?> Taille (en cm) id="objet"> <? foreach($objets as $key => $val) { echo " $val\n"; } ?> <? } else { ?> Taille name="Objet" maxlength="60" value="<? echo htmlentities($_POST['Objet'], ENT_QUOTES)?>"> <? } ?>
Message id="message" name="Message"><? echo htmlentities(stripslashes($_POST['Message']))?>
Mensurations id="Mensurations" name="Mensurations"><? echo htmlentities(stripslashes($_POST['Mensurations']))?>
<? if (file_exists($rep)) { ?>
Pièce jointe* name="Fichier" size="35">
NB : taille du fichier inférieure à <?= (int)($taillemax/1024)?> Ko
<? } ?>
</form>