Help ! Formulaire : Problème redirection page

olo
Eléphanteau du PHP | 11 Messages

19 juin 2008, 16:00

Alors comme on est dans le session débutant et que j'en suis vraiment un bah je vous reposte le code :D
<?php



// 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['zone_email1'] = $_POST['zone_email1'];

//Enregistrement des param?tres de la case 1...
$_SESSION['case1_'][0] = "";
if (isset($_POST['case1_'][0])) {
$_SESSION['case1_'][0] = $_POST['case1_'][0];
} // Fin du if...

$_SESSION['case1_'][1] = "";
if (isset($_POST['case1_'][1])) {
$_SESSION['case1_'][1] = $_POST['case1_'][1];
} // Fin du if...


// Nbre de zones de s?lection de fichiers -1 car on commence le tableau ? z?ro...
	$nbre_zones_fichiers = 4 - 1;

	// R?pertoire de t?l?chargement du fichier...
	$repertoire = "./miresfolio/";

	// Taille maximale autoris?e en octets...
	$taille_max_fichier = 8192000;

	// Extensions de fichiers autoris?es...
	$extensions_autorisees = array("jpg","jpeg","","","","","");

// 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;

//Validation PHP des ?l?ments du formulaire...
if ($_POST['champ1'] == "") {
$erreur_champ1 = "veuillez nous indiquer votre nom";
$flag_erreur = 1;
} // Fin du if...

if ($_POST['champ2'] == "") {
$erreur_champ2 = "veuillez nous indiquer votre numéro de téléphone";
$flag_erreur = 1;
} // Fin du if...



if ($_FILES['fichier']['name']['0'] == "") {
			$erreur_fichier[0] = "veuillez choisir au moins une photo à nous envoyer";
			$flag_erreur = 1;
			} // Fin du if...
//Envoi avec fichier...

	if (($_FILES['fichier']['name']['0'] !="") && is_array($_FILES)) {

		

if (!is_dir($repertoire)) {
		$erreur_fichier[0] = "Le r?pertoire de t?l?chargement sp?cifi? n'existe pas!";
		$flag_erreur = 1;
		} else {

			// V?rifier si le r?pertoire a les droits en ?criture...
			if (!is_writeable($repertoire)) {
			$erreur_fichier[0] = "Le r?pertoire sp?cifi? n'a pas les droits d'acc?s en ?criture.";
			$flag_erreur = 1;
			} else {
		
				// On boucle x nbre de fois, sauf si aucun fichier n'a ?t? s?lectionn?...
				for ($u = 0; $u <= $nbre_zones_fichiers, $_FILES['fichier']['name'][$u] != ""; $u++) {
		
					// V?rifier les ?ventuelles erreurs de t?l?chargement du fichier...
					if ($_FILES['fichier']['error'][$u] != 0) {
			
			
						switch ($_FILES['fichier']['error'][$u]) {
   						//case UPLOAD_ERR_OK:
						case 0;
       					break;
   						//case UPLOAD_ERR_INI_SIZE:
						case 1;
       					$erreur_fichier[$u] = "Le fichier t?l?charg? d?passe la taille maximale autoris?e par le serveur.";
						$flag_erreur = 1;
       					break;
   						//case UPLOAD_ERR_FORM_SIZE:
						case 2;
      					$erreur_fichier[$u] = "Le fichier t?l?charg? d?passe la taille maximale autoris?e par le formulaire.";
						$flag_erreur = 1;
						break;
   						//case UPLOAD_ERR_PARTIAL:
						case 3;
      	 				$erreur_fichier[$u] = "Le fichier n'a ?t? t?l?charg? que partiellement.";
						$flag_erreur = 1;
       					break;
   						//case UPLOAD_ERR_NO_FILE:
						case 4;
      					$erreur_fichier[$u] = "Aucun fichier n'a ?t? t?l?charg?.";
						$flag_erreur = 1;
       					break;
   						// case UPLOAD_ERR_NO_TMP_DIR:
						case 6:
       					$erreur_fichier[$u] = "R?pertoire temporaire manquant.";
						$flag_erreur = 1;
       					break;
  						// case UPLOAD_ERR_CANT_WRITE:
						case 7:
       					$erreur_fichier[$u] = "Echec d'?criture du fichier";
						$flag_erreur = 1;
      					break;
   						default:
    	   				$erreur_fichier[$u] = "Erreur de fichier inconnue";
						$flag_erreur = 1;
						} // fin du switch
			
					} else {
			
			
            		// On v?rifie si la taille du fichier ne d?passe pas le maximum autoris?
            		if ($_FILES['fichier']['size'][$u] > $taille_max_fichier) {
            		$erreur_fichier[$u] = "Le fichier t?l?charg? d?passe la taille maximum autoris?e.";
					$flag_erreur = 1;
            		} else {

                	// On met le nom du fichier en minuscules...
                	$nom_fichier = strToLower($_FILES['fichier']['name'][$u]);

            		// On recherche la position du point dans le nom de fichier...
					$dernPos = strRChr($nom_fichier, ".");

            		// On extrait l'extension du fichier...
            		$extension = strToLower(subStr($dernPos, 1));

            		// Si l'extension n'existe pas ou qu'elle ne fait pas partie des extensions autoris?es...
            		if (($dernPos == "") OR (in_array($extension, $extensions_autorisees) == false)) {
            		$erreur_fichier[$u] = "L'extension de fichier sp?cifi?e n'est pas autoris?e.";
					$flag_erreur = 1;
            		} else {

                   	//On extrait seulement le nom du fichier sans l'extension, $dernPos donnant l'extension avec le point.
                   	$posExtension = strpos($nom_fichier, $dernPos);
                   	$nom_sans_extension = substr($nom_fichier,0,$posExtension);
                   
                   	// On ajoute au nom du fichier un num?ro unique puis l'extension du fichier...
                   	$nom_unique[$u] = $nom_sans_extension. "_ID_" . uniqid(rand()).$dernPos;
				
					} // Fin du else
	
                  } // Fin du else 
				  
              }	// Fin du else
			
						
            } // Fin de la boucle for... ()
			
		// On boucle une seconde fois, et on ne copie les fichiers que si aucun d'eux n'a retourn? d'erreurs...
		$u = 0;
		while ((($u<= $nbre_zones_fichiers) && ($_FILES['fichier']['name'][$u] != "") && ($flag_erreur !=1))) {
						
				// On d?place le fichier t?l?charg? du r?pertoire temporaire sur le r?pertoire sp?cifi?
                if (!move_uploaded_file($_FILES['fichier']['tmp_name'][$u], $repertoire."/".$nom_unique[$u])) {
                $erreur_move_uploaded[$u] = "Impossible de d?placer le fichier dans le r?pertoire de destination...";
				$flag_erreur = 1;
                } // Fin du if
		$u++;		
		} // Fin de la boucle while

		
		}	// Fin du else
		
	}	// Fin du else
	
} // Fin du if (($_FILES['fichier']['name']['0'] !="") && is_array($_FILES)) {

// 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 = "[email protected]";
$sujet = "proposition location";

if (($_FILES['fichier']['name']['0'] !="") && is_array($_FILES)) {


	// En-t?tes sp?cifiques de l'e-mail AVEC pi?ce jointe:
	// G?n?ration d'une cha?ne de d?limitation
	$semi_rand = md5(time());
	$mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";
							
	$entetes ="MIME-Version: 1.0 \n";
	$entetes .="From: mires<[email protected]>\n";
	$entetes .="Content-Type: multipart/mixed;\n";
	$entetes .=" boundary=\"{$mime_boundary}\"";
							
	$partie_entete = "Message au format MIME.\n\n" .
	"--{$mime_boundary}\n" .
	"Content-Type: text/html; charset=\"iso-8859-1\"\n" .
	"Content-Transfer-Encoding: 7bit\n\n" .
	"<html>\n<head>\n<meta http-equiv=Content-Type content=text/html; charset=iso-8859-1>\n</head>\n<body bgcolor=#FFFFFF>\n";
	} else { // En-t?tes de l'e-mail sans envoi de fichier...
	$entetes ="MIME-Version: 1.0 \n";
	$entetes .="From: mires<[email protected]>\n";
	$entetes .="Return-Path: mires<[email protected]>\n";
	$entetes .="Reply-To: mires<[email protected]>\n";
	$entetes .="Content-Type: text/html; charset=iso-8859-1 \n";
	
	$partie_entete = "<html>
<head>
<title>Formulaire</title>
<meta http-equiv=Content-Type content=text/html; charset=iso-8859-1>
</head>
<body bgcolor=#FFFFFF>\n";

	} // fin du else...



//Partie HTML de l'e-mail...
$partie_champs_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">votre nom = " . $_SESSION['champ1'] . "</font><br>\n";
$partie_champs_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">votre numéro de téléphone = " . $_SESSION['champ2'] . "</font><br>\n";
$partie_zone_email .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">votre adresse mail = " . $_SESSION['zone_email1'] . "</font><br>\n";
$partie_cases .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Vous seriez prêt à louer votre décors pour :</font><br>\n";
$partie_cases .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Case 1 = " . $_SESSION['case1_'][0] . "</font><br>\n";
$partie_cases .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Case 2 = " . $_SESSION['case1_'][1] . "</font><br>\n";


// Enfin, on indique le nom et l'emplacement de la pi?ce jointe sur le serveur.
if (($_FILES['fichier']['name']['0'] !="") && is_array($_FILES)) {

// On boucle x nbre de fois, sauf si aucun fichier n'a ?t? s?lectionn?...
									for ($u = 0; $u <= $nbre_zones_fichiers, $_FILES['fichier']['name'][$u] != ""; $u++) {
									$a = $u + 1;
									$partie_fichier .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Pi?ce jointe $a : " . $nom_unique[$u] . "</font><br>";
									} // Fin de la boucle for...
									
									$partie_fichier .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Pi?ces jointes conserv?es dans le r?pertoire : http://reggaeinlyon.com/odg/miresfolio/</font><br>";
								} // Fin du if...
						$fin = "</body></html>\n\n";

// Si envoi de fichier...
if (($_FILES['fichier']['name']['0'] !="") && is_array($_FILES)) {

		
					// Construction de la pi?ce jointe...
                    for ($u = 0; $u <= $nbre_zones_fichiers, $_FILES['fichier']['name'][$u] != ""; $u++) {

                    $type = $_FILES['fichier']['type'][$u];
					
					// Lecture du fichier ('rb' = lecture en binaire)
					$fichier = fopen($repertoire . "/" . $nom_unique[$u],'rb');
					$donnees = fread($fichier,filesize($repertoire . "/" . $nom_unique[$u]));
					fclose($fichier);
							
					// Encodage Base64 des donn?es
					$donnees = chunk_split(base64_encode($donnees));
							
					// Partie piece jointe de l'e-mail
					$piece_jointe .= "--{$mime_boundary}\n" .
              		"Content-Type: {$type};\n" .
              		" name=\"{$nom_unique[$u]}\"\n" .
              		"Content-Disposition: attachment;\n" .
              		" filename=\"{$nom_unique[$u]}\"\n" .
              		"Content-Transfer-Encoding: base64\n\n" .
              		$donnees . "\n\n";

                    } // Fin de la boucle for...

					// Fin de la pi?ce jointe...
                    $piece_jointe .= "--{$mime_boundary}--\n";
					
					$sortie = $partie_entete . $partie_champs_texte . $partie_zone_email . $partie_listes . $partie_boutons . $partie_cases . $partie_zone_texte . $partie_fichier . $fin . $piece_jointe;
					
					} else {
					$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://miresparis.com/miresmerci.html");  
                    //exit(); 
                    echo "Merci beaucoup";
                  } // Fin else 
			    } // Fin du if ($flag_erreur == 0) {
			} // Fin de if POST
?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


<html xmlns="http://www.w3.org/1999/xhtml">
<head><script language="JavaScript">


function verifSelection() {


if (document.mail_form.champ1.value == "") {
alert("veuillez nous indiquer votre nom")
return false
} 

if (document.mail_form.champ2.value == "") {
alert("veuillez nous indiquer votre numéro de téléphone")
return false
} 


var selectionFichier1 = document.getElementById("fichier1");
	if(selectionFichier1.value == "") {
  alert("veuillez choisir au moins une photo à nous envoyer")
return false
}

} // Fin de la fonction
</script>

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>mires shooting locations</title>
<style type="text/css">
<!--
body,td,th {
	color: #6C7176;
	font-family: Times New Roman, Times, serif;
}
body {
	background-color: #000000;
}
#Layer1 {
	position:absolute;
	width:634px;
	height:469px;
	z-index:1;
	left: 222px;
	top: 9px;
}
.style17 {font-family: "Times New Roman", Times, serif; color: #6C7176; font-size: 15px; }
.style6 {font-family: "Times New Roman", Times, serif; color: #6A717A; font-size: 14px; }
#Layer3 {	position:absolute;
	width:192px;
	height:48px;
	z-index:2;
	left: 25px;
	top: 139px;
}
a:link {
	color: #6C7176;
	text-decoration: none;
}
a:visited {
	text-decoration: none;
	color: #6C7176;
}
a:hover {
	text-decoration: none;
	color: #FFFFFF;
}
a:active {
	text-decoration: none;
}
-->
</style></head>

<body>
<div id="Layer1">
  <div align="center"><form name="mail_form" method="post" action="<?=$_SERVER['PHP_SELF']?>" enctype="multipart/form-data" onSubmit="return verifSelection()">
  <div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif, Tahoma">proposer un décors</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_email1) {
	  echo(stripslashes($erreur_email1));
	  } else {
if ($erreur_case1) {
	  echo(stripslashes($erreur_case1));
	  } else {
if ($erreur_fichier[0]) {
	  echo(stripslashes($erreur_fichier[0]));
	  } else {
if ($erreur_fichier[1]) {
	  echo(stripslashes($erreur_fichier[1]));
	  } else {
if ($erreur_fichier[2]) {
	  echo(stripslashes($erreur_fichier[2]));
	  } else {
if ($erreur_fichier[3]) {
	  echo(stripslashes($erreur_fichier[3]));
	  } else {
} // Fin du 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">votre 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="<?=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">votre numéro de téléphone</font></div></td>
	  <td align="center" valign="middle" width="30">
      <?php
	  if ($erreur_champ2) {
	  echo($icone);
	  }
	  ?>
      </td>
      <td><input name="champ2" type="text" value="<?=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">votre adresse mail</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="<?=stripslashes($_SESSION['zone_email1']);?>"></td>
    </tr></table><table width="566" border="0" align="center"><tr>
      <td width="140"><div align="right"><font face="Verdana" size="2">vous seriez prêt à louer votre décors pour :</font></div></td>
      <td width="30" align="center" valign="middle">
	  <?php
	  if ($erreur_case1) {
	  echo($icone);
	  }
	  ?>
	  </td>
      <td><input type="checkbox" name="case1_[0]" id="case1_" value="prise de vue"<?php
if ($_SESSION['case1_'][0] == "prise de vue") {
echo(" checked");
}
?>><font face="Verdana" size="2">prise de vue</font><br><input type="checkbox" name="case1_[1]" id="case1_" value="tournage"<?php
if ($_SESSION['case1_'][1] == "tournage") {
echo(" checked");
}
?>><font face="Verdana" size="2">tournage</font></td></tr></table><table width="566" border="0" align="center"><tr>
      <td width="140" align="right"><font face="Verdana" size="2">photo<input name="MAX_FILE_SIZE" type="hidden" value="8192000"></font></td>
	  <td width="30" align="center" valign="middle">
	  <?php
	  if ($erreur_fichier[0]) {
	  echo($icone);
	  }
	  ?>
	  </td>
	  
      <td><input type="file" name="fichier[]" id="fichier1">
        <font face="Verdana" size="2">(8 Mo maximum)</font></td>
    </tr></table><table width="566" border="0" align="center"><tr>
      <td width="140" align="right"><font face="Verdana" size="2">photo<input name="MAX_FILE_SIZE" type="hidden" value="8192000"></font></td>
	  <td width="30" align="center" valign="middle">
	  <?php
	  if ($erreur_fichier[1]) {
	  echo($icone);
	  }
	  ?>
	  </td>
	  
      <td><input type="file" name="fichier[]" id="fichier2">
        <font face="Verdana" size="2">(8 Mo maximum)</font></td>
    </tr></table><table width="566" border="0" align="center"><tr>
      <td width="140" align="right"><font face="Verdana" size="2">photo<input name="MAX_FILE_SIZE" type="hidden" value="8192000"></font></td>
	  <td width="30" align="center" valign="middle">
	  <?php
	  if ($erreur_fichier[2]) {
	  echo($icone);
	  }
	  ?>
	  </td>
	  
      <td><input type="file" name="fichier[]" id="fichier3">
        <font face="Verdana" size="2">(8 Mo maximum)</font></td>
    </tr></table><table width="566" border="0" align="center"><tr>
      <td width="140" align="right"><font face="Verdana" size="2">photo<input name="MAX_FILE_SIZE" type="hidden" value="8192000"></font></td>
	  <td width="30" align="center" valign="middle">
	  <?php
	  if ($erreur_fichier[3]) {
	  echo($icone);
	  }
	  ?>
	  </td>
	  
      <td><input type="file" name="fichier[]" id="fichier4">
        <font face="Verdana" size="2">(8 Mo maximum)</font></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="4"></div></form></div>
</div>
<p><a href="index.html"><img src="imgg/logomires.jpg" alt="mires paris" width="196" height="137" border="0" /></a></p>
<div id="Layer3">
  <div align="justify">
    <p class="style6"><a href="contact.html" onclick="window.open(this.href, 'exemple', 'height=350, width=215, top=100, left=100, toolbar=no, menubar=yes, location=no, resizable=yes, scrollbars=no, status=no'); return false;">contact</a> - <a href="form.php">proposer un d&eacute;cors </a></p>
    <p class="style17">&nbsp;</p>
  </div>
</div>
</body>
</html>

Mammouth du PHP | 1668 Messages

19 juin 2008, 16:12

Ce script marche ?
Pourquoi tu as fait ça :
//header("Location: http://miresparis.com/miresmerci.html");   
//exit();  
Essai de faire ça :
header("Location:miresmerci.html");   
exit();  
"À ceux qui poursuivent leurs rêves et se spécialisent dans l'impossible" Joseph Kong

10 ans de PHP, déjà.

"moi jtrouve que katagoto il déchire!" Nagol

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

19 juin 2008, 16:25

Résumons le problème :

Tu avais du code HTML avant le bloc PHP, c'est pour cela que le header() ne fonctionnait pas.

Maintenant que tu as viré ce code HTML et que ta page commence immédiatement par du code PHP, ton header() doit fonctionner comme je t'ai dis :
header("Location: http://miresparis.com/miresmerci.html"); //redirection
exit(); //obligatoire pour arrêter l'exécution du script actuel
Modifié en dernier par sadeq le 19 juin 2008, 16:38, modifié 1 fois.
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

olo
Eléphanteau du PHP | 11 Messages

19 juin 2008, 16:29

mainenant c'est ce message :

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /srv/www/miresparis/form.php:3) in /srv/www/miresparis/form.php on line 13

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /srv/www/miresparis/form.php:3) in /srv/www/miresparis/form.php on line 13

Warning: Cannot modify header information - headers already sent by (output started at /srv/www/miresparis/form.php:3) in /srv/www/miresparis/form.php on line 311


EN FAIT CA MARCHE !!!!!!!!!! MERCI A TOUS !!!!!! COOL !

voici le code final..
<?php

// 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['zone_email1'] = $_POST['zone_email1'];

//Enregistrement des param?tres de la case 1...
$_SESSION['case1_'][0] = "";
if (isset($_POST['case1_'][0])) {
$_SESSION['case1_'][0] = $_POST['case1_'][0];
} // Fin du if...

$_SESSION['case1_'][1] = "";
if (isset($_POST['case1_'][1])) {
$_SESSION['case1_'][1] = $_POST['case1_'][1];
} // Fin du if...


// Nbre de zones de s?lection de fichiers -1 car on commence le tableau ? z?ro...
	$nbre_zones_fichiers = 4 - 1;

	// R?pertoire de t?l?chargement du fichier...
	$repertoire = "./miresfolio/";

	// Taille maximale autoris?e en octets...
	$taille_max_fichier = 8192000;

	// Extensions de fichiers autoris?es...
	$extensions_autorisees = array("jpg","jpeg","","","","","");

// 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;

//Validation PHP des ?l?ments du formulaire...
if ($_POST['champ1'] == "") {
$erreur_champ1 = "veuillez nous indiquer votre nom";
$flag_erreur = 1;
} // Fin du if...

if ($_POST['champ2'] == "") {
$erreur_champ2 = "veuillez nous indiquer votre numéro de téléphone";
$flag_erreur = 1;
} // Fin du if...



if ($_FILES['fichier']['name']['0'] == "") {
			$erreur_fichier[0] = "veuillez choisir au moins une photo à nous envoyer";
			$flag_erreur = 1;
			} // Fin du if...
//Envoi avec fichier...

	if (($_FILES['fichier']['name']['0'] !="") && is_array($_FILES)) {

		

if (!is_dir($repertoire)) {
		$erreur_fichier[0] = "Le r?pertoire de t?l?chargement sp?cifi? n'existe pas!";
		$flag_erreur = 1;
		} else {

			// V?rifier si le r?pertoire a les droits en ?criture...
			if (!is_writeable($repertoire)) {
			$erreur_fichier[0] = "Le r?pertoire sp?cifi? n'a pas les droits d'acc?s en ?criture.";
			$flag_erreur = 1;
			} else {
		
				// On boucle x nbre de fois, sauf si aucun fichier n'a ?t? s?lectionn?...
				for ($u = 0; $u <= $nbre_zones_fichiers, $_FILES['fichier']['name'][$u] != ""; $u++) {
		
					// V?rifier les ?ventuelles erreurs de t?l?chargement du fichier...
					if ($_FILES['fichier']['error'][$u] != 0) {
			
			
						switch ($_FILES['fichier']['error'][$u]) {
   						//case UPLOAD_ERR_OK:
						case 0;
       					break;
   						//case UPLOAD_ERR_INI_SIZE:
						case 1;
       					$erreur_fichier[$u] = "Le fichier t?l?charg? d?passe la taille maximale autoris?e par le serveur.";
						$flag_erreur = 1;
       					break;
   						//case UPLOAD_ERR_FORM_SIZE:
						case 2;
      					$erreur_fichier[$u] = "Le fichier t?l?charg? d?passe la taille maximale autoris?e par le formulaire.";
						$flag_erreur = 1;
						break;
   						//case UPLOAD_ERR_PARTIAL:
						case 3;
      	 				$erreur_fichier[$u] = "Le fichier n'a ?t? t?l?charg? que partiellement.";
						$flag_erreur = 1;
       					break;
   						//case UPLOAD_ERR_NO_FILE:
						case 4;
      					$erreur_fichier[$u] = "Aucun fichier n'a ?t? t?l?charg?.";
						$flag_erreur = 1;
       					break;
   						// case UPLOAD_ERR_NO_TMP_DIR:
						case 6:
       					$erreur_fichier[$u] = "R?pertoire temporaire manquant.";
						$flag_erreur = 1;
       					break;
  						// case UPLOAD_ERR_CANT_WRITE:
						case 7:
       					$erreur_fichier[$u] = "Echec d'?criture du fichier";
						$flag_erreur = 1;
      					break;
   						default:
    	   				$erreur_fichier[$u] = "Erreur de fichier inconnue";
						$flag_erreur = 1;
						} // fin du switch
			
					} else {
			
			
            		// On v?rifie si la taille du fichier ne d?passe pas le maximum autoris?
            		if ($_FILES['fichier']['size'][$u] > $taille_max_fichier) {
            		$erreur_fichier[$u] = "Le fichier t?l?charg? d?passe la taille maximum autoris?e.";
					$flag_erreur = 1;
            		} else {

                	// On met le nom du fichier en minuscules...
                	$nom_fichier = strToLower($_FILES['fichier']['name'][$u]);

            		// On recherche la position du point dans le nom de fichier...
					$dernPos = strRChr($nom_fichier, ".");

            		// On extrait l'extension du fichier...
            		$extension = strToLower(subStr($dernPos, 1));

            		// Si l'extension n'existe pas ou qu'elle ne fait pas partie des extensions autoris?es...
            		if (($dernPos == "") OR (in_array($extension, $extensions_autorisees) == false)) {
            		$erreur_fichier[$u] = "L'extension de fichier sp?cifi?e n'est pas autoris?e.";
					$flag_erreur = 1;
            		} else {

                   	//On extrait seulement le nom du fichier sans l'extension, $dernPos donnant l'extension avec le point.
                   	$posExtension = strpos($nom_fichier, $dernPos);
                   	$nom_sans_extension = substr($nom_fichier,0,$posExtension);
                   
                   	// On ajoute au nom du fichier un num?ro unique puis l'extension du fichier...
                   	$nom_unique[$u] = $nom_sans_extension. "_ID_" . uniqid(rand()).$dernPos;
				
					} // Fin du else
	
                  } // Fin du else 
				  
              }	// Fin du else
			
						
            } // Fin de la boucle for... ()
			
		// On boucle une seconde fois, et on ne copie les fichiers que si aucun d'eux n'a retourn? d'erreurs...
		$u = 0;
		while ((($u<= $nbre_zones_fichiers) && ($_FILES['fichier']['name'][$u] != "") && ($flag_erreur !=1))) {
						
				// On d?place le fichier t?l?charg? du r?pertoire temporaire sur le r?pertoire sp?cifi?
                if (!move_uploaded_file($_FILES['fichier']['tmp_name'][$u], $repertoire."/".$nom_unique[$u])) {
                $erreur_move_uploaded[$u] = "Impossible de d?placer le fichier dans le r?pertoire de destination...";
				$flag_erreur = 1;
                } // Fin du if
		$u++;		
		} // Fin de la boucle while

		
		}	// Fin du else
		
	}	// Fin du else
	
} // Fin du if (($_FILES['fichier']['name']['0'] !="") && is_array($_FILES)) {

// 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 = "[email protected]";
$sujet = "proposition location";

if (($_FILES['fichier']['name']['0'] !="") && is_array($_FILES)) {


	// En-t?tes sp?cifiques de l'e-mail AVEC pi?ce jointe:
	// G?n?ration d'une cha?ne de d?limitation
	$semi_rand = md5(time());
	$mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";
							
	$entetes ="MIME-Version: 1.0 \n";
	$entetes .="From: mires<[email protected]>\n";
	$entetes .="Content-Type: multipart/mixed;\n";
	$entetes .=" boundary=\"{$mime_boundary}\"";
							
	$partie_entete = "Message au format MIME.\n\n" .
	"--{$mime_boundary}\n" .
	"Content-Type: text/html; charset=\"iso-8859-1\"\n" .
	"Content-Transfer-Encoding: 7bit\n\n" .
	"<html>\n<head>\n<meta http-equiv=Content-Type content=text/html; charset=iso-8859-1>\n</head>\n<body bgcolor=#FFFFFF>\n";
	} else { // En-t?tes de l'e-mail sans envoi de fichier...
	$entetes ="MIME-Version: 1.0 \n";
	$entetes .="From: mires<[email protected]>\n";
	$entetes .="Return-Path: mires<[email protected]>\n";
	$entetes .="Reply-To: mires<[email protected]>\n";
	$entetes .="Content-Type: text/html; charset=iso-8859-1 \n";
	
	$partie_entete = "<html>
<head>
<title>Formulaire</title>
<meta http-equiv=Content-Type content=text/html; charset=iso-8859-1>
</head>
<body bgcolor=#FFFFFF>\n";

	} // fin du else...



//Partie HTML de l'e-mail...
$partie_champs_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">votre nom = " . $_SESSION['champ1'] . "</font><br>\n";
$partie_champs_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">votre numéro de téléphone = " . $_SESSION['champ2'] . "</font><br>\n";
$partie_zone_email .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">votre adresse mail = " . $_SESSION['zone_email1'] . "</font><br>\n";
$partie_cases .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Vous seriez prêt à louer votre décors pour :</font><br>\n";
$partie_cases .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Case 1 = " . $_SESSION['case1_'][0] . "</font><br>\n";
$partie_cases .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Case 2 = " . $_SESSION['case1_'][1] . "</font><br>\n";


// Enfin, on indique le nom et l'emplacement de la pi?ce jointe sur le serveur.
if (($_FILES['fichier']['name']['0'] !="") && is_array($_FILES)) {

// On boucle x nbre de fois, sauf si aucun fichier n'a ?t? s?lectionn?...
									for ($u = 0; $u <= $nbre_zones_fichiers, $_FILES['fichier']['name'][$u] != ""; $u++) {
									$a = $u + 1;
									$partie_fichier .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Pi?ce jointe $a : " . $nom_unique[$u] . "</font><br>";
									} // Fin de la boucle for...
									
									$partie_fichier .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Pi?ces jointes conserv?es dans le r?pertoire : http://reggaeinlyon.com/odg/miresfolio/</font><br>";
								} // Fin du if...
						$fin = "</body></html>\n\n";

// Si envoi de fichier...
if (($_FILES['fichier']['name']['0'] !="") && is_array($_FILES)) {

		
					// Construction de la pi?ce jointe...
                    for ($u = 0; $u <= $nbre_zones_fichiers, $_FILES['fichier']['name'][$u] != ""; $u++) {

                    $type = $_FILES['fichier']['type'][$u];
					
					// Lecture du fichier ('rb' = lecture en binaire)
					$fichier = fopen($repertoire . "/" . $nom_unique[$u],'rb');
					$donnees = fread($fichier,filesize($repertoire . "/" . $nom_unique[$u]));
					fclose($fichier);
							
					// Encodage Base64 des donn?es
					$donnees = chunk_split(base64_encode($donnees));
							
					// Partie piece jointe de l'e-mail
					$piece_jointe .= "--{$mime_boundary}\n" .
              		"Content-Type: {$type};\n" .
              		" name=\"{$nom_unique[$u]}\"\n" .
              		"Content-Disposition: attachment;\n" .
              		" filename=\"{$nom_unique[$u]}\"\n" .
              		"Content-Transfer-Encoding: base64\n\n" .
              		$donnees . "\n\n";

                    } // Fin de la boucle for...

					// Fin de la pi?ce jointe...
                    $piece_jointe .= "--{$mime_boundary}--\n";
					
					$sortie = $partie_entete . $partie_champs_texte . $partie_zone_email . $partie_listes . $partie_boutons . $partie_cases . $partie_zone_texte . $partie_fichier . $fin . $piece_jointe;
					
					} else {
					$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:miresmerci.html");   
exit(); 
                    echo "Merci beaucoup";
                  } // Fin else 
			    } // Fin du if ($flag_erreur == 0) {
			} // Fin de if POST
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head><script language="JavaScript">


function verifSelection() {


if (document.mail_form.champ1.value == "") {
alert("veuillez nous indiquer votre nom")
return false
} 

if (document.mail_form.champ2.value == "") {
alert("veuillez nous indiquer votre numéro de téléphone")
return false
} 


var selectionFichier1 = document.getElementById("fichier1");
	if(selectionFichier1.value == "") {
  alert("veuillez choisir au moins une photo à nous envoyer")
return false
}

} // Fin de la fonction
</script>

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>mires shooting locations</title>
<style type="text/css">
<!--
body,td,th {
	color: #6C7176;
	font-family: Times New Roman, Times, serif;
}
body {
	background-color: #000000;
}
#Layer1 {
	position:absolute;
	width:634px;
	height:469px;
	z-index:1;
	left: 222px;
	top: 9px;
}
.style17 {font-family: "Times New Roman", Times, serif; color: #6C7176; font-size: 15px; }
.style6 {font-family: "Times New Roman", Times, serif; color: #6A717A; font-size: 14px; }
#Layer3 {	position:absolute;
	width:192px;
	height:48px;
	z-index:2;
	left: 25px;
	top: 139px;
}
a:link {
	color: #6C7176;
	text-decoration: none;
}
a:visited {
	text-decoration: none;
	color: #6C7176;
}
a:hover {
	text-decoration: none;
	color: #FFFFFF;
}
a:active {
	text-decoration: none;
}
-->
</style></head>

<body>
<div id="Layer1">
  <div align="center"><form name="mail_form" method="post" action="<?=$_SERVER['PHP_SELF']?>" enctype="multipart/form-data" onSubmit="return verifSelection()">
  <div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif, Tahoma">proposer un décors</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_email1) {
	  echo(stripslashes($erreur_email1));
	  } else {
if ($erreur_case1) {
	  echo(stripslashes($erreur_case1));
	  } else {
if ($erreur_fichier[0]) {
	  echo(stripslashes($erreur_fichier[0]));
	  } else {
if ($erreur_fichier[1]) {
	  echo(stripslashes($erreur_fichier[1]));
	  } else {
if ($erreur_fichier[2]) {
	  echo(stripslashes($erreur_fichier[2]));
	  } else {
if ($erreur_fichier[3]) {
	  echo(stripslashes($erreur_fichier[3]));
	  } else {
} // Fin du 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">votre 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="<?=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">votre numéro de téléphone</font></div></td>
	  <td align="center" valign="middle" width="30">
      <?php
	  if ($erreur_champ2) {
	  echo($icone);
	  }
	  ?>
      </td>
      <td><input name="champ2" type="text" value="<?=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">votre adresse mail</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="<?=stripslashes($_SESSION['zone_email1']);?>"></td>
    </tr></table><table width="566" border="0" align="center"><tr>
      <td width="140"><div align="right"><font face="Verdana" size="2">vous seriez prêt à louer votre décors pour :</font></div></td>
      <td width="30" align="center" valign="middle">
	  <?php
	  if ($erreur_case1) {
	  echo($icone);
	  }
	  ?>
	  </td>
      <td><input type="checkbox" name="case1_[0]" id="case1_" value="prise de vue"<?php
if ($_SESSION['case1_'][0] == "prise de vue") {
echo(" checked");
}
?>><font face="Verdana" size="2">prise de vue</font><br><input type="checkbox" name="case1_[1]" id="case1_" value="tournage"<?php
if ($_SESSION['case1_'][1] == "tournage") {
echo(" checked");
}
?>><font face="Verdana" size="2">tournage</font></td></tr></table><table width="566" border="0" align="center"><tr>
      <td width="140" align="right"><font face="Verdana" size="2">photo<input name="MAX_FILE_SIZE" type="hidden" value="8192000"></font></td>
	  <td width="30" align="center" valign="middle">
	  <?php
	  if ($erreur_fichier[0]) {
	  echo($icone);
	  }
	  ?>
	  </td>
	  
      <td><input type="file" name="fichier[]" id="fichier1">
        <font face="Verdana" size="2">(8 Mo maximum)</font></td>
    </tr></table><table width="566" border="0" align="center"><tr>
      <td width="140" align="right"><font face="Verdana" size="2">photo<input name="MAX_FILE_SIZE" type="hidden" value="8192000"></font></td>
	  <td width="30" align="center" valign="middle">
	  <?php
	  if ($erreur_fichier[1]) {
	  echo($icone);
	  }
	  ?>
	  </td>
	  
      <td><input type="file" name="fichier[]" id="fichier2">
        <font face="Verdana" size="2">(8 Mo maximum)</font></td>
    </tr></table><table width="566" border="0" align="center"><tr>
      <td width="140" align="right"><font face="Verdana" size="2">photo<input name="MAX_FILE_SIZE" type="hidden" value="8192000"></font></td>
	  <td width="30" align="center" valign="middle">
	  <?php
	  if ($erreur_fichier[2]) {
	  echo($icone);
	  }
	  ?>
	  </td>
	  
      <td><input type="file" name="fichier[]" id="fichier3">
        <font face="Verdana" size="2">(8 Mo maximum)</font></td>
    </tr></table><table width="566" border="0" align="center"><tr>
      <td width="140" align="right"><font face="Verdana" size="2">photo<input name="MAX_FILE_SIZE" type="hidden" value="8192000"></font></td>
	  <td width="30" align="center" valign="middle">
	  <?php
	  if ($erreur_fichier[3]) {
	  echo($icone);
	  }
	  ?>
	  </td>
	  
      <td><input type="file" name="fichier[]" id="fichier4">
        <font face="Verdana" size="2">(8 Mo maximum)</font></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="4"></div></form></div>
</div>
<p><a href="index.html"><img src="imgg/logomires.jpg" alt="mires paris" width="196" height="137" border="0" /></a></p>
<div id="Layer3">
  <div align="justify">
    <p class="style6"><a href="contact.html" onclick="window.open(this.href, 'exemple', 'height=350, width=215, top=100, left=100, toolbar=no, menubar=yes, location=no, resizable=yes, scrollbars=no, status=no'); return false;">contact</a> - <a href="form.php">proposer un d&eacute;cors </a></p>
    <p class="style17">&nbsp;</p>
  </div>
</div>
</body>
</html>