upload qui ne veu rien savoir avec les boucles...

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : upload qui ne veu rien savoir avec les boucles...

upload qui ne veu rien savoir avec les boucles...

par wwwbillgates » 26 mai 2010, 17:31

Bonjour à tous,
Alors mon soucis se trouve sur cette page (il ne s'agit pas du message d'erreur) :
http://www.mabouille.com/mabouille/temp ... ouilles=3#
Page permettant d'uploader des photos. Il s'agit d'un whille qui affiche un certain nombre de boite d'upload en fonction de parametre précédent.

Alors ca fonctionne presque puisque je parvien à uplader les 3 photos de la premiere boite ainsi que les 2 derniere photos des boites suivante. Mais tout se complique lorsque je tente d'uploder la premiere photo des boites suivantes alors que bisarement les autres s'upload parfaitement, arf!!!

Alors j'ai pensé à une erreur de frappe mais j'ai tout revu et ca viendrai pas de là.... Aie Aie Aie là jvois pas :roll:
<?php session_start(); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>&#8362; Une idée cadeau original pour un anniversaire et des cadeaux Personnalisés de départ à la retraite.</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
	   <meta name="description" content="Idée cadeau original pour homme. La boutique des cadeaux originaux pour femme. Idée cadeaux pour anniversaire, noël, saint valentin, départ en retraite...">
	   <meta name="keywords" content="anniversaire, aniversaire, aniverssaire, idée cadeau, idée cadeaux, idées cadeaux, idee, idée, idées,idee,cadeau, cadeaux, original, cadeau original, originaux, cadeaux originaux, sympathique, caricature, carricature, caricature, insolites, carte personnalisée, perssonalisee, rigolo, pas cher, fun">


	   
	   
	   
	   
	   
	   
	   
	   
	   
<!--validation du formmulaire avec message d'alert-->
<script language="javascript" type="text/javascript">
<!--

function validation() 
{
		// if(document.FORMULAIRE.photo.value == "") 
		// { 
        // alert ('Veuillez envoyer au moins une photo'); 
        // document.FORMULAIRE.photo.focus(); 
        // return false; 
    	// }
       	if(document.FORMULAIRE.pseudo.value == "") 
		{ 
        alert ('Veuillez entrer le pseudo de la bouille'); 
        document.FORMULAIRE.pseudo.focus(); 
        return false; 
    	}


else {return true;}
}
// -->
</script>





	   
	   
	   
	   
	   
   </head>
	
<body>
<link rel="stylesheet" media="screen" type="text/css" title="CSS" href="../../templates/css/pages.css" />
<link rel="stylesheet" media="screen" type="text/css" title="CSS" href="../../templates/css/etape3.css" />



<!-------------------->
<!---- Menu haut
<!-------------------->   
<!--connexion mysql-->
<?php include("../../class/bouilleDB.php"); ?>
<!--fonctions-->
<?php include("../../includes/functions/functions.php"); ?>
<!--menu du haut-->
<?php include("../../templates/pages/menu_haut.php"); ?>
<!--script POPUP-->
<?php include("../../includes/scripts/popup.php"); ?>





<!---- page blanche début ---->
<div id="page_blanche">





<!---- Frise ---->
<p >
<img src="../../interface/frise_1.gif" />
<img src="../../interface/frise_2.gif" />
<img src="../../interface/frise_3.gif" />
<img src="../../interface/frise_4off.gif" />
<img src="../../interface/frise_5off.gif" />
<img src="../../interface/frise_6off.gif" />
<img src="../../interface/frise_7off.gif" />
</p>



<br />



<!---- Introduction ---->
<p>
	Description de vos bouilles...
</p>



<?php
// Créer une redirection si on veut changer la quantité de bouille par le GET
if ($_SESSION['nb_de_bouilles'] < $_GET['nombre_bouilles'])
{
	header("Location: http://www.mabouille.com/");
}
?>









<?php
  /***************************************************/
 /*** Affichage de la miniature si la photo existe
/***************************************************/
function affichage_miniature($numero_photo)
{
	if(isset($_SESSION['bouille'][$numero_photo]) == null)
	{
		echo '<img src="../../interface/upload.jpg" alt="Miniature du téléchargement de la photo." />';
	}
	else
	{
		echo '<img src="../../photos/thumb/' . $_SESSION['bouille'][$numero_photo] . '" alt="Miniature du téléchargement de la photo." />';
	}
}
?>







<?php
  /********************************************************/
 /*** Récupération du post prix de la mise en situation
/********************************************************/
if (isset($_POST['prix_bouille']))
{
	$prix_bouille = htmlspecialchars($_POST['prix_bouille']);
	$_SESSION['prix_de_la_mise_en_situation'] = $prix_bouille;
}
?>






<?php
  /********************************************/
 /*** Présentation de la mise en situation
/********************************************/
				// Insertion à l'aide d'une requête préparée
				$reponse = $bdd->prepare("
										SELECT *
										FROM bouille_situations
										JOIN bouille_prix
										ON objet = 'miseensituation'
										WHERE id = :id
										ORDER BY ordre
										");
				$reponse->execute(array('id' => $_GET['id']));

		
		

while ($donnees = $reponse->fetch())
{

	//Nom du fichier image sans l'extension .jpg
	$image_sans_lextension = explode('.', $donnees['image']);

	
	
	$_SESSION['nom_de_la_mise_en_situation'] = $donnees['titre'];


	?>
	<div class="divdescription" >
		<p><img src="../../thumb/<?php echo $image_sans_lextension[0] . '_' . $_GET['nombre_bouilles'] . '.jpg'; ?>" alt="Image de la mise en situation." /></p>
	<p class="description" >


		<strong>
			<?php echo $donnees['titre']; ?>
		</strong>


	<span class="prix" ><?php echo $_SESSION['prix_de_la_mise_en_situation']; ?> €</span><br />

	<?php echo nl2br($donnees['description']); ?>

	</p>
	</div>
	<?php
}








	
//POST envoyé par le formulaire "file" et permettant de préciser s'il s'agit de la photo 1, 2 ou 3
@$photo = $_POST['photo'];
//POST envoyé par le bouton "supprimer" et permettant de préciser s'il s'agit de la photo 1, 2 ou 3
@$supprimer_photo = $_POST['supprimer_photo'];










  /*************************************/
 /*** Valeurs du formulaire d'upload
/*************************************/		
if( isset($_FILES[$photo]['name']))
{
	// variables disponibles
				$nom_photo = $_FILES[$photo]['name']; //Le nom original du fichier, comme sur le disque du visiteur, (exemple: mon_icone.png).
				$extension_photo = $_FILES[$photo]['type']; //Le type du fichier. Par exemple, cela peut être "image/png"
				$taille_fichier = $_FILES[$photo]['size']; //La taille du fichier en octets
				$fichier_tmp = $_FILES[$photo]['tmp_name']; //L'adresse vers le fichier uploadé dans le répertoire temporaire
				$erreur = $_FILES[$photo]['error']; //Le code d'erreur, qui permet de savoir si le fichier a bien été uploadé	
	// dossier photos
				$dossier_photos = '../../photos/'; 
	// on vérifie si le fichier temporaire est présent
				if( !is_uploaded_file($fichier_tmp) )
				{
					exit("Le fichier est introuvable.");
				}
	// on vérifie l'extension
				if( !strstr($extension_photo, 'jpg') and !strstr($extension_photo, 'jpeg') and !strstr($extension_photo, 'bmp') and !strstr($extension_photo, 'gif') and !strstr($extension_photo, 'png') and !strstr($extension_photo, 'tiff'))
				{
					exit("Les fichiers avec l'extension $extension_photo ne sont pas autorisés.");
				}
	// on vérifie le poid maximum de la photo (10mo)
				if ($taille_fichier > 10000000)
				{
					exit("Votre photo est trop volumineuse, merci d'en réduire la taille.");
				}
	// on vérifie la taille minimum de la photo en pixels (100x100px)			
				$taille_photo = getimagesize($fichier_tmp);
				if ($taille_photo[0] < 100 OR $taille_photo[1] < 100)
				{
					exit("Votre photo est trop petite, merci d'en choisir une de meilleure qualité.");
				}
	// On renomme le fichier puis on le copie dans le dossier de destination
				$nom_photo_renomme = md5(uniqid(rand(), true)); // uniquid() Génère un identifiant unique basé sur la date et heure courante en microsecondes.
				$extension_photo = strtolower(strrchr($nom_photo, '.')); //strrchr renvoie l'extension avec le point // strtolower met l'extension en minuscule
				$nom_photo_renomme_avec_extension = $nom_photo_renomme . $extension_photo;
				
				
				if( !move_uploaded_file($fichier_tmp, $dossier_photos . $nom_photo_renomme_avec_extension) )
				{
					exit("Une erreur s'est produite, impossible de copier le fichier dans $dossier_photos");
				}
				
	//Création de la SESSION contenant le nom de la photo uploadé (avec extension)
	$_SESSION['bouille'][$photo] = $nom_photo_renomme_avec_extension;
	echo "Votre photo a bien été envoyée.";
}
?>

		
		
		
		
		
		
		
		

<?php		
  /***************************************************/
 /*** Création de miniatures avec la librairie GD
/***************************************************/	
if(isset($_SESSION['bouille'][$photo]))
{		
	$source = imagecreatefromjpeg('../../photos/' . $nom_photo_renomme_avec_extension); // La photo est la source
	$destination = imagecreatetruecolor(100, 100); // On crée la miniature vide

	// Les fonctions imagesx et imagesy renvoient la largeur et la hauteur d'une image
	$largeur_source = imagesx($source);
	$hauteur_source = imagesy($source);
	$largeur_destination = imagesx($destination);
	$hauteur_destination = imagesy($destination);

	// On crée la miniature
	imagecopyresampled($destination, $source, 0, 0, 0, 0, $largeur_destination, $hauteur_destination, $largeur_source, $hauteur_source);

	// On enregistre la miniature sous le nom "mini_couchersoleil.jpg"
	imagejpeg($destination, '../../photos/thumb/' . $nom_photo_renomme . '.jpg');
}
?>
			
		
		
		

		
		
		
		
		
		

<?php
  /***************************************************/
 /*** Suppresion de la photo et de sa miniature
/***************************************************/	
if (isset($_POST['supprimer_photo']))
	{
		unlink ('../../photos/' . $_SESSION['bouille'][$supprimer_photo]);
		unlink ('../../photos/thumb/' . $_SESSION['bouille'][$supprimer_photo]);
		unset($_SESSION['bouille'][$supprimer_photo]);
	}
?>










<?php
  /***************************************************/
 /*** Création des sessions de description bouille
/***************************************************/	

?>









<?php	
  /********************************************/
 /*** Afficher les boites de description
/********************************************/

	$nombre_de_boites = 1;


	while ($nombre_de_boites <= $_GET['nombre_bouilles'])
	{
		
		
		
		
		?>
		<!---- début boite de description bouille ---->
		<div class="boite_avec_nb_bouilles_restantes" >


		<p><span class="texte_nb_bouilles_restantes" >Description de la bouille <?php echo $nombre_de_boites . '/' . $_GET['nombre_bouilles']; ?></p></span>





		<div id="boite_description_bouille">
		 

		<p class="cartouche_noir" ><img src="../../interface/txt_description_a.gif" alt="Déscription d'une bouille" /></p>
		
		<br />
		
		

		
		
		
		
		
		
		<p>
			<strong>Envoyer les photos de la personne à transformer</strong><br />
			(au moins 1 photo obligatoire, maximum 10mo) :
		</p>
		
		

		
		
		
		<!---- Upload photo_1 ---->
		<form method="post" id="form_<?php echo $nombre_de_boites ?>_1" enctype="multipart/form-data" action="#">
			<div class="miniature_photo" >
				<?php affichage_miniature('photo_' . $nombre_de_boites . '_1'); ?>
				<div class="parcourirdiv" ><img class="parcourirdiv" src="../../interface/bt_parcourir.gif" id="imgparc_<?php echo $nombre_de_boites ?>_1" /><input type="file" class="parcourir" onchange="document.getElementById('form_<?php echo $nombre_de_boites ?>_1').submit()" name="photo_<?php echo $nombre_de_boites ?>_1" OnMouseOver="imgparc_<?php echo $nombre_de_boites ?>_1.src='../../interface/bt_parcourir_push.gif';" OnMouseOut="imgparc_<?php echo $nombre_de_boites ?>_1.src='../../interface/bt_parcourir.gif';" /></div>

				<input type="hidden" name="photo" value="photo_<?php echo $nombre_de_boites ?>_1" />
		</form>	
		<!---- Supprimer photo_1 ---->
		<form method="post" action="#">
				<input type="image" class="supprimer" src="../../interface/bt_supprimerphoto.gif" onmouseover="this.src='../../interface/bt_supprimerphoto_push.gif'" onmouseout="this.src='../../interface/bt_supprimerphoto.gif'" />
				<input type="hidden" name="supprimer_photo" value="photo_<?php echo $nombre_de_boites ?>_1" />
			</div>
		</form>
		
		
		
		
		<!---- Upload photo_2 ---->
		<form method="post" id="form_<?php echo $nombre_de_boites ?>_2" enctype="multipart/form-data" action="#">
			<div class="miniature_photo" >
				<?php affichage_miniature('photo_' . $nombre_de_boites . '_2'); ?>
				<div class="parcourirdiv" ><img class="parcourirdiv" src="../../interface/bt_parcourir.gif" id="imgparc_<?php echo $nombre_de_boites ?>_2" /><input type="file" class="parcourir" onchange="document.getElementById('form_<?php echo $nombre_de_boites ?>_2').submit()" name="photo_<?php echo $nombre_de_boites ?>_2" OnMouseOver="imgparc_<?php echo $nombre_de_boites ?>_2.src='../../interface/bt_parcourir_push.gif';" OnMouseOut="imgparc_<?php echo $nombre_de_boites ?>_2.src='../../interface/bt_parcourir.gif';" /></div>

				<input type="hidden" name="photo" value="photo_<?php echo $nombre_de_boites ?>_2" />
		</form>	
		<!---- Supprimer photo_2 ---->
		<form method="post" action="#">
				<input type="image" class="supprimer" src="../../interface/bt_supprimerphoto.gif" onmouseover="this.src='../../interface/bt_supprimerphoto_push.gif'" onmouseout="this.src='../../interface/bt_supprimerphoto.gif'" />
				<input type="hidden" name="supprimer_photo" value="photo_<?php echo $nombre_de_boites ?>_2" />
			</div>
		</form>
		
		
		
		
		<!---- Upload photo_3 ---->
		<form method="post" id="form_<?php echo $nombre_de_boites ?>_3" enctype="multipart/form-data" action="#">	
			<div class="miniature_photo" >
				<?php affichage_miniature('photo_' . $nombre_de_boites . '_3'); ?>
				<div class="parcourirdiv" ><img class="parcourirdiv" src="../../interface/bt_parcourir.gif" id="imgparc_<?php echo $nombre_de_boites ?>_3" /><input type="file" class="parcourir" onchange="document.getElementById('form_<?php echo $nombre_de_boites ?>_3').submit()" name="photo_<?php echo $nombre_de_boites ?>_3" OnMouseOver="imgparc_<?php echo $nombre_de_boites ?>_3.src='../../interface/bt_parcourir_push.gif';" OnMouseOut="imgparc_<?php echo $nombre_de_boites ?>_3.src='../../interface/bt_parcourir.gif';" /></div>

				<input type="hidden" name="photo" value="photo_<?php echo $nombre_de_boites ?>_3" />
		</form>	
		<!---- Supprimer photo_2 ---->
		<form method="post" action="#">
				<input type="image" class="supprimer" src="../../interface/bt_supprimerphoto.gif" onmouseover="this.src='../../interface/bt_supprimerphoto_push.gif'" onmouseout="this.src='../../interface/bt_supprimerphoto.gif'" />
				<input type="hidden" name="supprimer_photo" value="photo_<?php echo $nombre_de_boites ?>_3" />
			</div>
		</form>	
		
	
	

		

		

		
		
		
		<form method="post" action="#" name="FORMULAIRE" onsubmit="return validation();"> 
		
		<p>
			<input type="checkbox" value="1" name="pas_de_photos<?php echo $nombre_de_boites ?>" id="pas_de_photos<?php echo $nombre_de_boites ?>" />
			<label for="pas_de_photos<?php echo $nombre_de_boites ?>">
			Cochez cette case si vous ne parvenez pas a envoyer vos photos.<br />
			Vous les enverrez par email une fois votre commande achevée.<br />
			</label>
		</p>


		
		
		
		<br />
		
		
		
		
		

		<label for="pseudo"><strong>Pseudo de la bouille</strong> (obligatoire) : </label> <input value="<?php if (!empty($pseudo)) { echo $pseudo; }?>" size="39" maxlength="30" type="text" name="pseudo" id="pseudo" />

		
		
		
		
		
		<br /><br />
		
		
		
		


		<p>
			<label for="commentaire">
			<strong>Commentaires</strong> (facultatif) :<br />
			ex. : Toujours mal rasé, toujours le sourire, utiliser la coiffure de la première photo,
			il porte des lunettes...
			</label><br />
			
			<textarea name="commentaire" cols="45" id="commentaire" ></textarea>
		</p>


		<br />


		<p>
			<label for="bulle">
			<strong>Si vous souhaitez ajouter un texte sous forme d'une bulle pour faire parler
			votre bouille alors saisissez le ci-dessous</strong> (facultatif) :<br />
			<a href="javascript:PopupImage('../../images/bulle.jpg')" alt="Une bulle pour votre bouille comme pour une bande dessinée." >voir des exemples</a><br />
			Attention à l'orthographe car le texte sera ajouté automatiquement
			</label>

			<input type="text" name="bulle" id="bulle" size="60" maxlength="100" /><br />
			(100 caractères maximum)
		</p>

		
		</div>
		</div>
		<!---- fin boite de description bouille ---->
		<?php
		$nombre_de_boites++; 
	}
	?>












		<!----------------------------------------------------->
		<!---- Afficher les boites de déscription magazine
		<!----------------------------------------------------->   

		<!---- début boite de description magazine ---->

		<p class="option_magazine" >Option présentation comme une 1ère de couv' (4€ supplémentaire).</p>
		<p>Notre équipe de professionnels en PAO (publication assisté par ordinateur) issue du monde de la publicité et de la communication se chargera d'adapter la mise en page en rapport aux textes fournis, à la mise en situation et à l'événement. Voir des exemples</p>
		
		

		<div id="boite_description_magazine">

		<p class="cartouche_noir" ><img src="../../interface/txt_description_magazine.gif" alt="Description d'une bouille" /></p>


		<p><img class="image_mag" src="../../thumb/<?php echo $image_sans_lextension[0] . '_mag.jpg'; ?>" alt="Image de description du magazine." /></p>
		<br />
		<p>
		<strong>Souhaitez-vous voir votre bouille présentée comme une première de couv' ?</strong><br />
			(ceci n'est pas un support l'envoi se fera par e-mail si vous ne choisissez pas de support à imprimer)<br />
			<input type="radio" name="oui_non" value="oui" id="oui" /> <label for="oui">oui</label>
			<input type="radio" checked="checked" name="oui_non" value="non" id="non" /> <label for="non">non</label><br />
		</p>

		<p>
		<strong>Choisissez les textes qui devront apparaître après avoir coché "oui" :</strong><br />
			Attention à l'orthographe car les textes seront ajoutés automatiquement.<br /><br />
			<label for="date"><strong>Date :</strong><br /></label> <input type="text" size="20" maxlength="40" name="date" id="date" onkeypress="document.getElementById('non').checked=false;document.getElementById('oui').checked=true;" /> (facultatif)<br />
			Utile pour un anniversaire, un mariage...
		</p>

		<p>
			<label for="titre"><strong>Titre :</strong><br /></label> <input type="text" size="20" maxlength="40" name="titre" id="titre" onkeypress="document.getElementById('non').checked=false;document.getElementById('oui').checked=true;" /> (facultatif)<br />
			ex : Pêche ; Karine ; Bricolo...
		</p>

		<p>
			<label for="texte1"><strong>Texte 1 :</strong><br /></label> <input type="text" size="60" maxlength="300" name="texte1" id="texte1" onkeypress="document.getElementById('non').checked=false;document.getElementById('oui').checked=true;" /> (obligatoire)<br />
			ex : Meilleur pêcheur de l'année !
		</p>

		<p>
			<label for="texte2"><strong>Texte 2 :</strong><br /></label> <input type="text" size="60" maxlength="300" name="texte2" id="texte2" onkeypress="document.getElementById('non').checked=false;document.getElementById('oui').checked=true;" /> (facultatif)<br />
			ex : Tous ses collègues lui souhaitent une bonne retraite.	   
		</p>


		</div>
		<!---- fin boite de description magazine ---->


		
		
		
		
		
		<p>
			<input type="image" value="continuer" src="../../interface/bt_continueror.gif" onmouseover="this.src='../../interface/bt_continueror_push.gif'" onmouseout="this.src='../../interface/bt_continueror.gif'" class="bouton_continuer" />
		</p>


</form>
</div>
<!---- page blanche fin ---->





<!---- copyright ---->
<br />
<?php include("copyright.php"); ?>
 
 
</body>
</html>