Voici peut çetre la solution :
La problèmatique :
- attribuer une contraite de taille d'une image
- lancement d'un script en javascript avec récupération de valeurs saisies dans une formulairte
-récupération de données provenant d'une bases de donnée :
Le formulaire :
haut de pages :
<?php
mysql_select_db($database_ocai, $ocai);
$query_promotion = "SELECT * FROM promo";
$promotion = mysql_query($query_promotion, $ocai) or die(mysql_error());
$row_promotion = mysql_fetch_assoc($promotion);
$totalRows_promotion = mysql_num_rows($promotion);
?>
<?php
$target = '../promo_01/';
$nom_file = $_FILES['logo']['name'];
$taille = $_FILES['logo']['size'];
$tmp = $_FILES['logo']['tmp_name'];
$chmod = $_FILES['logo']['chmod'];
?>
Dans la page : ( Les conditions
<?php
if(!empty($_POST['posted'])) {
if(!empty($_FILES['logo']['name'])) {
$infos_img = getimagesize($_FILES['logo']['tmp_name']);
if(($infos_img[0] == 300)
|| ($infos_img[1] == 100)) {
if(move_uploaded_file($_FILES['logo']['tmp_name'],$target.$_FILES['logo']['name'])) {
chmod ($target.$_FILES['logo']['name'], 0755);
echo '<b><br><br><br><br><br><br><br>La page s\'est affiché correctement.</b><br /><br />';
echo '<br/>';
echo '<b><a href="/pages/actualite/promotion/impression/promo_01/formulaire.php" target="_self">Cliquez ICI pour recommencer</a></b>';
$logo_ocai = $_FILES['logo']['name'];
$date_begin = $_POST['date_debut'];
$date_finish = $_POST['date_fin'];
$pied = $row_promotion['pied'];
$titre_composition = $row_promotion['$titre_composition'];
$composition_01 = $row_promotion['composition_01'];
$composition_02 = $row_promotion['composition_02'];
$composition_03 = $row_promotion['composition_03'];
$composition_04 = $row_promotion['composition_04'];
$composition_05 = $row_promotion['composition_05'];
$composition_06 = $row_promotion['composition_06'];
$composition_07 = $row_promotion['composition_07'];
$composition_08 = $row_promotion['composition_08'];
$composition_09 = $row_promotion['composition_09'];
$composition_10 = $row_promotion['composition_10'];
$titre_declinaison = $row_promotion['titre_declinaison'];
$cadeau_01 = $row_promotion['cadeau_01'];
$cadeau_02 = $row_promotion['cadeau_02'];
$cadeau_03 = $row_promotion['cadeau_03'];
$cadeau_04 = $row_promotion['cadeau_04'];
$cadeau_05 = $row_promotion['cadeau_05'];
$cadeau_06 = $row_promotion['cadeau_06'];
?>
<input type="hidden" name="logo" id="logo" value="<?php echo $logo_ocai; ?>">
<input type="hidden" name="date_debut" id="date_debut" value="<?php echo $date_begin; ?>">
<input type="hidden" name="date_fin" id="date_fin" value="<?php echo $date_finish; ?>">
<input type="hidden" name="titre_composition" id="titre_composition" value="<?php echo $titre_composition ?>">
<input type="hidden" name="composition_01" id="composition_01" value="<?php echo $composition_01; ?>">
<input type="hidden" name="composition_02" id="composition_02" value="<?php echo $composition_02; ?>">
<input type="hidden" name="composition_03" id="composition_03" value="<?php echo $composition_03; ?>">
<input type="hidden" name="composition_04" id="composition_04" value="<?php echo $composition_04; ?>">
<input type="hidden" name="composition_05" id="composition_05" value="<?php echo $composition_05; ?>">
<input type="hidden" name="composition_06" id="composition_06" value="<?php echo $composition_06; ?>">
<input type="hidden" name="composition_07" id="composition_07" value="<?php echo $composition_07; ?>">
<input type="hidden" name="composition_08" id="composition_08" value="<?php echo $composition_08; ?>">
<input type="hidden" name="composition_09" id="composition_09" value="<?php echo $composition_09; ?>">
<input type="hidden" name="composition_10" id="composition_10" value="<?php echo $composition_10; ?>">
<input type="hidden" name="titre_declinaison" id="titre_declinaison" value="<?php echo $titre_declinaison; ?>">
<input type="hidden" name="cadeau_01" id="cadeau_01" value="<?php echo $cadeau_01; ?>">
<input type="hidden" name="cadeau_02" id="cadeau_02" value="<?php echo $cadeau_02; ?>">
<input type="hidden" name="cadeau_03" id="cadeau_03" value="<?php echo $cadeau_03; ?>">
<input type="hidden" name="cadeau_04" id="cadeau_04" value="<?php echo $cadeau_04; ?>">
<input type="hidden" name="cadeau_05" id="cadeau_05" value="<?php echo $cadeau_05; ?>">
<input type="hidden" name="cadeau_06" id="cadeau_06" value="<?php echo $cadeau_06; ?>">
<input type="hidden" name="pied" id="pied" value="<?php echo $pied; ?>">
<?php
} else {
}} else {
?>
<?php
echo '<br/>';
echo '<br/>';
echo '<br/>';
echo '<br/>';
echo '<b>La taille de votre logo n\'est pas correcte</b><br />';
echo '<br/>';
echo '<b>Fichier :</b> ', $_FILES['logo']['name'], '<br />';
echo '<b>Largeur :</b> ', $infos_img[0], ' px<br />';
echo '<b>Hauteur :</b> ', $infos_img[1], ' px<br />';
echo '<br/>';
echo '<br/>';
echo '<b>Votre logo doit obligatoirement avoir une taille de 100 pixels en hauteur et de 300 pixels en longueur</b>';
echo '<br/>';
echo '<br/>';
echo '<b><a href="/pages/actualite/promotion/impression/promo_01/formulaire.php" target="_self">Cliquez ICI pour recommencer</a></b>';
?>
<?php
}
} else {
// Sinon on affiche une erreur pour le champ vide
echo '<b><br><br><br><br><br><br><br>Vous n\'avez pas sélectionné d\'image pour votre logo</b><br /><br />';
echo '<br/>';
echo '<b><a href="/pages/actualite/promotion/impression/promo_01/formulaire.php" target="_self">Cliquez ICI pour recommencer</a></b>';
}
}
?>
Le formulaire :
<form enctype="multipart/form-data" action="<?php echo $PHP_SELF; ?>" method="POST" name="formulaire1" onsubmit="visualisation(); return false;">
<?php if ($_POST['posted'] == "") { ?>
input type="file" name="logo" id="logo"></td>
input length="20" name="date_debut" id="date_debut" onClick="MyGetDate(this);"
input length="30" name="date_fin" id="date_fin" onClick="MyGetDate(this);"
// récupération des variables venat d'une base de donnée
<input type="hidden" name="titre_composition" value="<?php echo $row_promotion['titre_composition']; ?>">
<input type="hidden" name="composition_01" value="<?php echo $row_promotion['composition_01']; ?>">
<input type="hidden" name="composition_02" value="<?php echo $row_promotion['composition_02']; ?>">
<input type="hidden" name="composition_03" value="<?php echo $row_promotion['composition_03']; ?>">
<input type="hidden" name="composition_04" value="<?php echo $row_promotion['composition_04']; ?>">
<input type="hidden" name="composition_05" value="<?php echo $row_promotion['composition_05']; ?>">
<input type="hidden" name="composition_06" value="<?php echo $row_promotion['composition_06']; ?>">
<input type="hidden" name="composition_07" value="<?php echo $row_promotion['composition_07']; ?>">
<input type="hidden" name="composition_08" value="<?php echo $row_promotion['composition_08']; ?>">
<input type="hidden" name="composition_09" value="<?php echo $row_promotion['composition_09']; ?>">
<input type="hidden" name="composition_10" value="<?php echo $row_promotion['composition_10']; ?>">
<input type="hidden" name="titre_declinaison" value="<?php echo $row_promotion['titre_declinaison']; ?>">
<input type="hidden" name="cadeau_01" value="<?php echo $row_promotion['cadeau_01']; ?>">
<input type="hidden" name="cadeau_02" value="<?php echo $row_promotion['cadeau_02']; ?>">
<input type="hidden" name="cadeau_03" value="<?php echo $row_promotion['cadeau_03']; ?>">
<input type="hidden" name="cadeau_04" value="<?php echo $row_promotion['cadeau_04']; ?>">
<input type="hidden" name="cadeau_05" value="<?php echo $row_promotion['cadeau_05']; ?>">
<input type="hidden" name="cadeau_06" value="<?php echo $row_promotion['cadeau_06']; ?>">
<input type="hidden" name="pied" value="<?php echo $row_promotion['pied']; ?>">
</span></p>
</form>
En pied de page :
<?php } else {?>
<script type="text/javascript">
affichage();
</script>
<?php } ?>
En gros mon problème était que lors de la validation du formulaire celui - ci était vidé d son contenu.
Donc le script utilisant les données du formulaire ne pouvait fonctionner faute de contenu.
Je me suis arrangé pour récupérer dans la page de résultat les données de mon formulaire (avec des "hidden" pour pouvoir les réutiliser plus tard.
Pas facile à expliquer.
Merci aux personnes qui m'ont aidé.
