** please help me, I'm a real newbie **

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&eacute;l&eacute;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)
?>

Elite Model Look Luxmebourg
logo

PARTICIPER AU CONCOURS


Participez au plus prestigieux concours international de mannequins.
Conditions de participation:&#38;#38;#38;#202;tre une jeune fille
Avoir entre 14 et 22 ans
Mesurer plus de 172cm
<? if (!$erreur) { ?>

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)) { ?>

photo Pièce jointe* name="Fichier" size="35">

 NB : taille du fichier inférieure à <?= (int)($taillemax/1024)?> Ko

<? } ?>

 

	  </form>

logoMini [/php]

Is that the same file the error is referencing (inscription_Bis.php)? I don’t see anything that would generate a parse error - at least as the quick glance through I gave it.

Are you using an IDE like NetBeans or Eclipse? It should show you exactly where the error is and save you some hair-pulling while tracking it down.

try adding open and close brackets in the appropriate places! follow the if and elseif statements from the beginning open bracket and you will see that the brackets are a mess

To me it seems like this isn’t the page that the error is on. The error, according to the message, is on the first line of inscription.Bis.php with a T_ELSE error. Can you bring up the source of inscription.Bis.php? I’m pretty sure this isn’t the page that has the error

Sponsor our Newsletter | Privacy Policy | Terms of Service