Upload ?

robapt Messages postés 114 Date d'inscription mardi 6 juillet 2004 Statut Membre Dernière intervention 4 décembre 2009 - 8 oct. 2007 à 22:37
elidris Messages postés 125 Date d'inscription lundi 15 août 2005 Statut Membre Dernière intervention 9 octobre 2007 - 9 oct. 2007 à 00:02
Bonjour, je fais pour un site en ce moment un code qui demande un mots de passe avant qu'on puisse uploader le fichier qu'on choisit, j'ai les 2 code qui marche mais il y a un problème.
J'entre le mots de passe , la page d'upload charge bien mais quand je clique sur le bouton 'uploader', le mots de passe et redemandé !
Bon voici mes 2 parties de code :

Code pour l'accès à la page (le mots de passe est la lettre 'a') :

<? if(@$_POST["mdp"] == "a") {
?>

<? } elseif (@$_POST["mdp"] == "") {
?>

<center>
Tapez le mots de passe Admin pour pouvoir ajouter un gifs

<form method="post">
,

</form>

<? } elseif (@$_POST["mdp"] != "a") {
// sinon, le formulaire s'affiche
?>

<center>
Mauvais mot de passe. Vous ne pouvez pas acceder à la page !

<form method="post">
,

</form>

<? }
else {
?>
<form method="post">
,

</form>
<? } ?>

Et voici le code pour l'uploade :

<?php


     $poids_max 512000; // Poids max de l'image en octets (1Ko 1024 octets)

     $repertoire = '../gifs/'; // Repertoire d'upload

   

     if (isset($_FILES['fichier']))

     {

   

     // On vérifit le type du fichier

     if ($_FILES['fichier']['type'] != 'image/png' &&
$_FILES['fichier']['type'] != 'image/jpeg' &&
$_FILES['fichier']['type'] != 'image/jpg' &&


$_FILES['fichier']['type'] != 'image/gif')

     {

     $erreur = 'Le fichier doit être au format *.jpeg, *.gif ou *.png .';

     }

   

     // On vérifit le poids de l'image

     elseif ($_FILES['fichier']['size'] > $poids_max)

     {

     $erreur = 'L\'image doit être inférieur à ' . $poids_max/1024 . 'Ko.';

     }

   

     // On vérifit si le répertoire d'upload existe

     elseif (!file_exists($repertoire))

     {

     $erreur = 'Erreur, le dossier d\'upload n\'existe pas.';

     }

   

     // Si il y a une erreur on l'affiche sinon on peut uploader

     if(isset($erreur))

     {

     echo '' . $erreur . '
[javascript:history.back(1) Retour]';

     }

     else

     {

   

     // On définit l'extention du fichier puis on le nomme par le timestamp actuel

     if ($_FILES['fichier']['type'] == 'image/jpeg') { $extention = '.jpeg'; }

     if ($_FILES['fichier']['type'] == 'image/jpeg') { $extention = '.jpg'; }

     if ($_FILES['fichier']['type'] == 'image/png') { $extention = '.png'; }

     if ($_FILES['fichier']['type'] == 'image/gif') { $extention = '.gif'; }

     $nom_fichier = time().$extention;

   

     // On upload le fichier sur le serveur.

     if (move_uploaded_file($_FILES['fichier']['tmp_name'], $repertoire.$nom_fichier))

     {

     $url = 'http://gaerebut.ifrance.com/'.$repertoire.''.$nom_fichier.'';

     echo 'Votre image à été uploadée sur le serveur avec succes!
';

echo'

';

echo'<h3 />Voici le chemin de
cette image, intégre le dans ton commentaire pour quelle
s&#146;affiche :

';

echo'<h2>&lt;img src="'.$url.'" height ="300" width "400">';

     }

     else

     {

     echo 'L\'image n\'a pas pu être uploadée sur le serveur.';

     }

   

     }

   

     }

     ?>


<form method="post" enctype="multipart/form-data">

<center>">





</form>

Bon, les deux code marche parfaitement mais c'est ce problème que je n'arrive pas à régler ! snif

Merci à tous d'avoir lu cela et avoir (peut-être) réfléchi au problème ! ^^

A bientôt
---------------------------------------------------
> http://sald.ifrance.com <==

4 réponses

elidris Messages postés 125 Date d'inscription lundi 15 août 2005 Statut Membre Dernière intervention 9 octobre 2007
8 oct. 2007 à 23:23
Bonjour,
je n'aurais pas du tout fait comme ça mais bon, c'est pas très catholique tout ça:

au début tu mets :
<? if(@$_POST["mdp"] == "a") {
C'est là que tu dois inserer ton code d'upload, non ???
}

"La vie, c'est pour la vie..."
0
elidris Messages postés 125 Date d'inscription lundi 15 août 2005 Statut Membre Dernière intervention 9 octobre 2007
8 oct. 2007 à 23:25
et tu retires le dernier :
else {
?>
<form method="post">
,

</form>
<? } ?>

"La vie, c'est pour la vie..."
0
robapt Messages postés 114 Date d'inscription mardi 6 juillet 2004 Statut Membre Dernière intervention 4 décembre 2009
8 oct. 2007 à 23:42
Merci pour ton aide elidris mais l'image ne s'upload toujours pas ! Et sa m'emmène toujours sur la page du mots de passe après avoir cliqué sur 'envoyer' !
Il y aurai pas un moyen pour que sa face un truc du genre:

Un bouton parcourir avec le chemin de l'image qui s'affiche puis en dessous un textbox avec un bouton Envoyer l'uploade ou on est censsé mettre le mots de passe ?
et tout ça, sur la même page, ce serai genre pour comfirmer l'envoie!
Comment faire ?
Désolé mais je débute, bientôt , j'entame des étude d'info, je serai plus fort ... lol

Merci^^
-------------------------------------
> http://sald.ifrance.com <==
0
elidris Messages postés 125 Date d'inscription lundi 15 août 2005 Statut Membre Dernière intervention 9 octobre 2007
9 oct. 2007 à 00:02
En fait je pense que le mieux c'est que tu commences par voir une source d'upload de fichier, par exemple celle-ci :
http://www.phpcs.com/codes/UPLOAD-MULTIPLE-IMAGE-GIF-JPG-PNG-AVEC-REDIMENSIONNEMENT_42714.aspx
et qu'ensuite tu regardes un peu comment construire un formulaire et recuperer les donnees, je n'ai pas trouvé d'exemple sur ce site donc :
http://www.phpdebutant.org/article56.php

"La lanterne de l'expérience n'éclaire que celui qui la porte...(Confucius)"
0
Rejoignez-nous