euh... non g rien compris la mon code est le suivant
<?php
session_start();
if (!isset($_SESSION['login'])) {
header ('Location: inscription.php');
exit();
}
if (isset($_POST['Annoncer']) && $_POST['Annoncer'] == 'Annoncer') {
if ((isset($_POST['genre']) && !empty($_POST['genre']))
&& (isset($_POST['produit']) && !empty($_POST['produit']))
&& (isset($_POST['description']) && !empty($_POST['description']))
&& (isset($_POST['departement']) && !empty($_POST['departement']))
&& (isset($_POST['prix']) && !empty($_POST['prix'])))
{
// on défini le répertoire où sont stockées les images de grande taille
$dir = 'pics';
// on défini le répertoire où seront stockées les miniatures
$dir_mini = 'mini';
// on défini une variable $ratio qui vaudra 150 dans notre cas (150 pixels). En fait, pour nos miniatures, nous allons respecter le ratio de l'image originale, mais nous allons forcer sa taille à 150 pixels, soit en hauteur soit en largeur (tout dépend de l'orientation de notre image : paysage ou portrait).
$ratio = 150;
// on teste si le formulaire permettant d'uploader un fichier a été soumis
if (isset($_POST['Annoncer'])) {
// on teste si le champ permettant de soumettre un fichier est vide ou non
if (empty($_FILES['mon_image']['tmp_name'])) {
// si oui, on affiche un petit message d'erreur
$erreur2 = 'mais aucune photo n\'y est associé.';
$photo = 'Aucune image associée';
}
else {
// on examine le fichier uploadé en récupérant de nombreuses informations sur ce fichier (je vous suggère de regarder la documentation de la fonction getimagesize pour de plus amples informations)
$tableau = @getimagesize($_FILES['mon_image']['tmp_name']);
if ($tableau == FALSE) {
// si le fichier uploadé n'est pas une image, on efface le fichier uploadé et on affiche un petit message d'erreur
unlink($_FILES['mon_image']['tmp_name']);
$erreur2 = '</br>Votre fichier n\'est pas une image.';
}
else {
// on teste le type de notre image : jpeg ou png
if ($tableau[2] == 2 || $tableau[2] == 3) {
// si on a déjà un fichier qui porte le même nom que le fichier que l'on tente d'uploader, on modifie le nom du fichier que l'on upload
if (is_file('pics/'.$_FILES['mon_image']['name'])) $file_upload = $_POST['nom'].$_FILES['mon_image']['name'];
else $file_upload = $_FILES['mon_image']['name'];
$photo = $file_upload ;
// on copie le fichier que l'on vient d'uploader dans le répertoire des images de grande taille
copy ($_FILES['mon_image']['tmp_name'], $dir.'/'.$file_upload);
// il nous reste maintenant à générer la miniature
// si notre image est de type jpeg
if ($tableau[2] == 2) {
// on crée une image à partir de notre grande image à l'aide de la librairie GD
$src = imagecreatefromjpeg($dir.'/'.$file_upload);
// on teste si notre image est de type paysage ou portrait
if ($tableau[0] > $tableau[1]) {
$im = imagecreatetruecolor(round(($ratio/$tableau[1])*$tableau[0]), $ratio);
imagecopyresampled($im, $src, 0, 0, 0, 0, round(($ratio/$tableau[1])*$tableau[0]), $ratio, $tableau[0], $tableau[1]);
}
else {
$im = imagecreatetruecolor($ratio, round(($ratio/$tableau[0])*$tableau[1]));
imagecopyresampled($im, $src, 0, 0, 0, 0, $ratio, round($tableau[1]*($ratio/$tableau[0])), $tableau[0], $tableau[1]);
}
// on copie notre fichier généré dans le répertoire des miniatures
imagejpeg ($im, $dir_mini.'/'.$file_upload);
}
elseif ($tableau[2] == 3) {
$src = imagecreatefrompng($dir.'/'.$file_upload);
if ($tableau[0] > $tableau[1]) {
$im = imagecreatetruecolor(round(($ratio/$tableau[1])*$tableau[0]), $ratio);
imagecopyresampled($im, $src, 0, 0, 0, 0, round(($ratio/$tableau[1])*$tableau[0]), $ratio, $tableau[0], $tableau[1]);
}
else {
$im = imagecreatetruecolor($ratio, round(($ratio/$tableau[0])*$tableau[1]));
imagecopyresampled($im, $src, 0, 0, 0, 0, $ratio, round($tableau[1]*($ratio/$tableau[0])), $tableau[0], $tableau[1]);
}
imagepng ($im, $dir_mini.'/'.$file_upload);
}
}
else {
// si notre image n'est pas de type jpeg ou png, on supprime le fichier uploadé et on affiche un petit message d'erreur
unlink($_FILES['mon_image']['tmp_name']);
$erreur2 = '</br>Votre image est d\'un format non supporté.';
}
}
}
$base = mysql_connect ('localhost', '?????', '?????');
mysql_select_db ('db197899428', $base);
$sql = 'INSERT INTO annonce VALUES("","'.$_SESSION['id'].'","'.addslashes($_POST['genre']).'","'.addslashes($_POST['produit']).'","'.htmlentities(addslashes($_POST['description'])).'","'.addslashes($_POST['departement']).'", "'.addslashes($_POST['prix']).'", "'.addslashes($photo).'","21")';
mysql_query($sql) or die('Erreur SQL !'.$sql.''.mysql_error());
mysql_close();
$erreur = ' Votre annonce a été sauvegardée ';
}
}
else {
$erreur = 'tous les champs de ce formulaire doivent être rempli (nous ne communiquons aucunes informations personnelles dans les annonces (toutes reponses vous seront transmisent par mail)';
}
}
else {
$erreur = 'Pour passer votre annonce veuillez remplir le formulaire ci dessous';
}
?>
mais ca me donne des image avec une hauteur de 150px alors que je veux qu'elle aient une largeur de 150px
(J'ai utiliser le script qui se trouve ds le comment faire que g modifier pour ce que je voulais en faire a savoir utiliser une table pour restituer l'image )