Problem d upload fichier avec php

Résolu/Fermé
Signaler
Messages postés
59
Date d'inscription
jeudi 30 octobre 2008
Statut
Membre
Dernière intervention
2 mai 2011
-
Messages postés
59
Date d'inscription
jeudi 30 octobre 2008
Statut
Membre
Dernière intervention
2 mai 2011
-
Bonjour,
salut je vous explique mon probleme :-((((
tout dabord je suis debutant en php
j ai passé mon jour de pose a lire des tutoriels sur l upload de fichier en php
et aussi sur le parametarge du fichier php.ini pour l upload sur l upload de fichier
et je n arrive pas a faire executer ce petit script" je suppose que beuacoup d entre vous le connaisent " hihhi
surtout ceux qui sont a le recherche du script php"
a singnaler que j utilise le easy php 1.8

je vous postule le scirpt
mais avnt voila l etat de fichier php.ini
;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;

; Whether to allow HTTP file uploads.
file_uploads = On

; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
upload_tmp_dir = "${path}\tmp\"

; Maximum allowed size for uploaded files.
upload_max_filesize = 2M

le script:
<?php
ini_set("register_globals","off");


$target = 'www/uploader1/upload/'; // Repertoire cible
$extension = 'jpeg'; // Extension du fichier sans le .
$max_size = 100000; // Taille max en octets du fichier
$width_max = 100; // Largeur max de l'image en pixels
$height_max = 100; // Hauteur max de l'image en pixels


$nom_file = $_FILES['fichier']['name'];
$taille = $_FILES['fichier']['size'];
$tmp = $_FILES['fichier']['tmp_name'];


//----------------------
// SCRIPT D'UPLOAD
//----------------------
?>
<html>
<head>
<title>Upload d'une image sur le serveur !</title>
</head>
<body>
<?php
ini_set("register_globals","off");
if(!empty($_POST['posted'])) {
// On vérifie si le champ est rempli
if(!empty($_FILES['fichier']['name'])) {
// On vérifie l'extension du fichier
if(substr($nom_file, -3) == $extension) {
// On récupère les dimensions du fichier
$infos_img = getimagesize($_FILES['fichier']['tmp_name']);

// On vérifie les dimensions et taille de l'image
if(($infos_img[0] <= $width_max) && ($infos_img[1] <= $height_max) && ($_FILES['fichier']['size'] <= $max_size)) {
// Si c'est OK, on teste l'upload
if(move_uploaded_file($_FILES['fichier']['tmp_name'],$target.$_FILES['fichier']['name'])) {
// Si upload OK alors on affiche le message de réussite
echo '<b>Image uploadée avec succès !</b>';
echo '<hr />';
echo '<b>Fichier :</b> ', $_FILES['fichier']['name'], '<br />';
echo '<b>Taille :</b> ', $_FILES['fichier']['size'], ' Octets<br />';
echo '<b>Largeur :</b> ', $infos_img[0], ' px<br />';
echo '<b>Hauteur :</b> ', $infos_img[1], ' px<br />';
echo '<hr />';
echo '<br /><br />';
} else {
// Sinon on affiche une erreur système
echo '<b>Problème lors de l\'upload !</b><br /><br /><b>', $_FILES['fichier']['error'], '</b><br /><br />';
}
} else {
// Sinon on affiche une erreur pour les dimensions et taille de l'image
echo '<b>Problème dans les dimensions ou taille de l\'image !</b><br /><br />';
}
} else {
// Sinon on affiche une erreur pour l'extension
echo '<b>Votre image ne comporte pas l\'extension .jpg !</b><br /><br />';
}
} else {
// Sinon on affiche une erreur pour le champ vide
echo '<b>Le champ du formulaire est vide !</b><br /><br />';
}
}
?> <form enctype="multipart/form-data" action="<?php echo $PHP_SELF; ?>" method="POST">
<b>Envoyer le fichier :</b><br /><br />
<input type="hidden" name="posted" value="1" />
<input name="fichier" type="file" />
<input type="submit" value="Uploader" />
</form>
</body>
</html>
le message d erruer est le suivant
Forbidden
You don't have permission to access /uploader1/<br /><b>Notice</b>: Undefined variable: PHP_SELF in <b>c:\program files\easyphp1-8\www\uploader1\up.php</b> on line <b>66</b><br /> on this server.

5 réponses

Messages postés
5358
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
895
Bonsoir,

$target = 'www/uploader1/upload/'; // Repertoire cible


mets le repertoire en relatif par rapport à ton script

ex: si ton script est sous www
$target = 'uploader1/upload/'; // Repertoire cible 


quand à ton erreur de php_SELF

mets:

$_SERVER["PHP_SELF"]
0
Messages postés
59
Date d'inscription
jeudi 30 octobre 2008
Statut
Membre
Dernière intervention
2 mai 2011
5
salut alain
merci pour ta reaction face à mes peine
mais helas j ai e message suivant
You don't have permission to access /uploader1/<br /><b>Notice</b>: Undefined variable: PHP_SELF in <b>c:\program files\easyphp1-8\www\uploader1\up.php</b> on line <b>67</b><br /> on this server.
si j ai bien compris c est un problem de droit d accé
tu sait j aimerai bien etre sous linux pour anipuler les droit d acces
le dossire www est en lecture seul , mais le plus genant est qu je ne peut pas deflaguer l 'option pour le rendre en lecture et ecriture .....
ca commance a etre interessant :-((((
0
Messages postés
59
Date d'inscription
jeudi 30 octobre 2008
Statut
Membre
Dernière intervention
2 mai 2011
5
mlheuresement ce vista me rend fou
j aimerais bien modfier les droit en 777 j arrive pas
sos
sos
sos
0
Messages postés
5358
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
895
Undefined variable: PHP_SELF

regardes mon post il faut utiliser $_SERVEUR[PHP_SELF]

j aimerais bien modfier les droit en 777 j arrive pas

777 c'est en Linux, ça ne marche pas comme ça en Windows

par l'explorateur windows, tu cliques droit sur le répertoire upload1 et la tu décoche lecture seule
0
Messages postés
59
Date d'inscription
jeudi 30 octobre 2008
Statut
Membre
Dernière intervention
2 mai 2011
5
bon je plaisenté à propos de la modification 777
mais crois moin alain j ai fait tous que tu m as dit
j arrive pas toujours a à cerné le prob
bon weeckend
0
Messages postés
59
Date d'inscription
jeudi 30 octobre 2008
Statut
Membre
Dernière intervention
2 mai 2011
5
salut alain
merci pour ton aide
voilà j i changé mon script avec l 'aide d ' un copain
merci c est résolu mon script marche
0