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 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135
| <?php
// Parametres mysql à remplacer par les vôtres
define('DB_SERVER', 'localhost'); // serveur mysql
define('DB_SERVER_USERNAME', 'root'); // nom d'utilisateur
define('DB_SERVER_PASSWORD', ''); // mot de passe
define('DB_DATABASE', 'partners'); // nom de la base
// Connexion au serveur mysql
$connect = mysql_connect(DB_SERVER, DB_SERVER_USERNAME,
DB_SERVER_PASSWORD)
or die('Impossible de se connecter : ' . mysql_error());
// sélection de la base de données
mysql_select_db(DB_DATABASE, $connect);
$msg_erreur = "Erreur. Les champs suivants doivent être obligatoirement remplis:
<br/><br/>";
$msg_ok = "Votre annonce a bien été ajoutée.<br/><br/>";
$message = $msg_erreur;
// vérification des champs
if (empty($_POST['ville']))
$message .= "La ville<br/>";
if (empty($_POST['quartier']))
$message .= "Le quartier<br/>";
if (empty($_POST['surface']))
$message .= "La Surface<br/>";
if (empty($_POST['prix']))
$message .= "Le prix<br/>";
//var_dump($_FILES['photo_1']); /*décommenter pour voir le contenu*/
$countFiles=count($_FILES['photo_1']['name']);/* pour obtenir le nombre de fichier téléchargés */
foreach($_FILES['photo_1'] as $key => $value) /* parcours le tableau des fichiers */
{
for($Indice=0;$Indice<$countFiles;$Indice++) /* pour chaque fichier */
{
$Fichiers[$Indice][$key]=$_FILES['photo_1'][$key][$Indice]; /* construit un tableau avec les informations */
}
}
//var_dump($Fichiers); /*décommenter pour voir le contenu*/
for($Indice=0;$Indice<$countFiles;$Indice++) /* pour chaque fichier */
{
$Fichier=$Fichiers[$Indice];
if($Fichier['error']==0) /* si il n'y a pas d'erreur */
{
$pic=($Fichier['name']);
$LePic[$Indice]=$pic;
$dossier = 'photos/';
$fichier = basename($Fichier['name']);
$taille_maxi = 5000000;
$taille = filesize($Fichier['name']);
$extensions = array('.png', '.gif', '.jpg', '.jpeg', '.JPG');
$extension = strrchr($Fichier['name'], '.');
//Début des vérifications de sécurité...
if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau
{
$erreur = 'Vous devez uploader un fichier de type png, gif, jpg, jpeg, txt ou doc...';
}
if($taille>$taille_maxi)
{
$erreur = 'Le fichier est trop gros...';
}
if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload
{
//On formate le nom du fichier ici...
$fichier = strtr($fichier,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
$LeFichier[$Indice] = $fichier;
// Création d'une image minature - Redimensionner l'image
$taille_image = getimagesize($Fichier['tmp_name']); // getimagesize, récupère la hauteur et la largeur d'une image, sous forme de tableau
$image_choisie = imagecreatefromjpeg($Fichier['tmp_name']); // Call_user_fun récupere l'identifiant de l'image, imagecreateform sauvegarde une copie
$nouvelle_largeur = 176; // Nouvelle largeur de mon image
$reduction = ( ($nouvelle_largeur * 100) / $taille_image[0] ); // Calule la ratio qui correspond au quotient de l'ancienne largeur par la nouvelle. C'est un %tage, on multiplie donc par 100
$nouvelle_hauteur = ($taille_image[1] * $reduction/100 ); // // Calule la nouvelle hauteur en application la ratio à l'ancienne hauteur. On oublie pas de diviser par 100 sinon notre dimension, reste en %
//Création de la miniature
$nouvelle_image = imagecreatetruecolor($nouvelle_largeur , $nouvelle_hauteur); // C
imagecopyresampled($nouvelle_image, $image_choisie, 0 , 0 , 0 , 0 , $nouvelle_largeur, $nouvelle_hauteur, $taille_image['0'], $taille_image['1']);
imagejpeg($nouvelle_image, 'photos/small/' . $fichier , 176);
imagejpeg($image_choisie , 'photos/' . $fichier . 'FullImage' , 176);
imagedestroy($nouvelle_image); // Supprimer notre image de sauvegarde
imagedestroy($image_choisie); // Supprimer notre image de sauvegarde
if(move_uploaded_file($Fichier['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
{
echo '<br/><br/>photo ajouté avec succès !';
}
else //Sinon (la fonction renvoie FALSE).
{
echo '<br/><br/>Echec de l\'upload !';
}
}
else
{
echo $erreur;
}
} /* ne pas oublier de fermer le if */
} /* ne pas oublier de fermer le for */
// si un champ est vide, on affiche le message d'erreur
if (strlen($message) > strlen($msg_erreur)) {
echo $message;
// sinon c'est ok
} else {
foreach($_POST as $index => $valeur) {
$$index = mysql_real_escape_string(trim($valeur));
}
/* $sql = "INSERT INTO annonce VALUES ('', '".$type_bien."', '".$type_ope."',
'".$ville."', '".$quartier."', '".$surface."', '".$nombre_chambre."',
'".$prix."', '".$pic."', '".$fichier."')";*/
$sql = "INSERT INTO annonce VALUES ('', '".$type_bien."', '".$type_ope."',
'".$ville."', '".$quartier."', '".$surface."', '".$nombre_chambre."',
'".$prix."',
'".$LePic[0]."', '".$LeFichier[0]."',
'".$LePic[1]."', '".$LeFichier[1]."',
'".$LePic[2]."', '".$LeFichier[2]."',
'".$LePic[3]."', '".$LeFichier[3]."')";
echo "<hr>".$sql."<hr>";/* cette ligne va afficher ta requête sql */
$res = mysql_query($sql);
if ($res) {
echo $msg_ok;
} else {
echo mysql_error();
}
}
?> |