1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
| <?php
$modele_id=$_GET['modele_id'];
//cette condition remplace ton 1er test ISSET() ainsi que tes tests $variable != ""
//Elle contrôle que tes $_POST existent et qu'ils contiennent bien des valeurs
if (isset($_POST) && !empty($_POST['fond_nom']) && !empty($_POST['hauteur'])
&& !empty($_POST['largeur']) && !empty($_POST['x']) && !empty($_POST['y'])) {
//Extraction des variables $_POST
//$_POST['x'] devient $x, $_POST['largeur'] devient $largeur etc...
extract($_POST);
//Contrôle si tu envoies bien un fichier
if (isset($_FILES) && !empty($_FILES['fond']['tmp_name'])) {
$content_dir="../photo/"; // dossier où sera déplacé le fichier
$nom = $_FILES['fond']['name']; //le nom de ton fichier (par exemple : image.jpg)
$tmp_file = $_FILES['fond']['tmp_name']; //le nomdu fichier dans le dossier tmp
$type = strrchr($_FILES['fond']['name'], '.'); //l'extension du fichier (par exemple : .jpg)
$poids = filesize($_FILES['fond']['tmp_name']); //le poids du fichier en octet
//liste des extensions que tu traiteras
$extension = array('.png', '.gif', '.jpg', '.jpeg', '.pdf');
//Poids maximum autorisé pour l'upload (voir dans le fichier PHP.ini : généralement 2mo)
$maxTaille = 2000000;
//Corrige les caractères avec accents et remplace les espaces et caractères speciaux par -
//Evite les problèmes par la suite.
$nom = strtr($nom,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$nom = preg_replace('/([^.a-z0-9]+)/i', '-', $nom);
//On contrôle que le fichier est bien présent dans le dossier tmp
if ( !is_uploaded_file($tmp_file) )
exit("Le fichier est introuvable");
//On contrôle si l'extension est présente dans ta liste $extension
if(!in_array($type, $extension))
exit("Le format du fichier n\'est pas autorisé");
//On contrôle que le poids est effectivement bon
if($size>$maxTaille)
exit("Le fichier est trop gros");
//Si tout se passe bien on Upload dans ton dossier de destination.
if (move_uploaded_file($tmp_file, $content_dir.$nom)) {
/*
* ta requete SQL
*/
$message="Le fichier a bien été ajouté";
}
else {
$message="Impossible de copier le fichier dans ".$content_dir);
}
}
else {
$message="Veuillez selectionner une image";
}
}
else {
$message="Veuillez remplir les champs obligatoire";
}
?>
<form method="post" action="" enctype="multipart/form-data">
<fieldset class="fieldset">
<legend><b>Ajouter un fond à la carte</b></legend>
<p>Nom :<input type="text" name="fond_nom" value="" style="margin-left:11px;"/></p>
<p style="margin-top:30px;"><b>Dimension du fond de la carte :</b></p>
<p>Largeur : <input type='text' size="5px" name="largeur" value="" style="margin-right:20px;" />
Hauteur : <input type='text' size="5px" name="hauteur" value="" />
</p>
<p style="margin-top:30px;"><b>Coordonnées :</b></p>
<p>X : <input type='text' size="5px" name="x" value="" style="margin-right:20px;" />
Y : <input type='text' size="5px" name="y" value="" /></p>
<input type="hidden" name="MAX_FILE_SIZE" value="500000" />
<p>Image de fond : <input type="file" name="fond" style="margin-top:20px;" /></p>
<input class="valider" type="submit" name="envoyer" value="" />
<input type="hidden" id="rec" name="rec" value="<?php echo $modele_id ?>" />
<a class="annuler" title="retour" onclick="document.location.href='home.php?menu=61&modele_id='+document.getElementById('rec').value;''"></a>
</fieldset>
</form>
<p style="text-align:center"><b><?php echo $message; ?></b></p> |
Partager