problème d'écriture sur le disque - PHP - Programmation
Marsh Posté le 22-11-2005 à 18:40:59
Commence par virer ce @ devant move_uploaded_file, elle renvoie false donc elle doit balancer une alerte en passant.
Marsh Posté le 22-11-2005 à 18:56:54
chose faite, cela ne change rien
j'ai supprimer le @ et le else {
echo "<FONT color='red'>UPLOAD FAILED !!!</FONT>";
}
et la, il ne m'affiche aucun message d'erreur mais ne copie toujours rien sur le disque dur.
Marsh Posté le 22-11-2005 à 19:06:06
avec une balise code, un peu de commentaires et d'intentation... on comprendrait ptêt mieux. Parce que là c'est un peu bordélique...
Marsh Posté le 22-11-2005 à 19:14:14
waxx_ganja a écrit : chose faite, cela ne change rien |
Rajoute error_reporting(E_ALL); en haut de ton script et relance-le.
Et ce que dit TotalRecall. -_-
Marsh Posté le 22-11-2005 à 19:56:56
//formulaire ajouter un theme
echo "
<FORM method='POST' action='/forum/adm/thadd.php' ENCTYPE='multipart/form-data'>
<input type='text' name='libel'>
<TEXTAREA name='description' cols='30' rows='10'></TEXTAREA>
<input type='hidden' name='enter' value='$enter'>
<input type='file' name='image'>
<input type='submit' value='OK'>
";
*********************
Les variables $libel, $description, $enter passe bien par contre pour la variable $image il me dit :
Undefined variable: image in /opt/serv/forum/adm/thadd.php
Marsh Posté le 22-11-2005 à 18:31:59
Salut,
Je rencontre un incident lors de l'envoi d'un fichier sur un serveur apache.
Il refuse d'envoyer le fichier dans le répertoire /tmp ni meme aucun autre répertoire
celui-ci est en root:root chmod 777
Voici le code :
// Définit le répertoire ou sera stoké les images
$directory = "/tmp/";
// test si l'image du formulaire précédent a bien été réceptionner methode POST
if($image !="none" ){
$taille=filesize($image);
// Vérifie que la taille soit bien inférieur a 100 Ko
if($taille <100000){
$nom_vrai = $HTTP_POST_FILES['image']['name'];
$point = strrpos($nom_vrai,"." );
if($point){
$extention = substr($nom_vrai,$point);
}
else{
$extention= "";
}
// le fichier est bien une image
if($extention==".gif" || $extention==".jpg" ){
// accède au répertoire /tmp
chdir("$directory" );
if (file_exists($nom_vrai)){
echo"<FONT COLOR='red'>rename the file</FONT>";
}
// Copie le fichier sur le disque
else{
if (@move_uploaded_file($image,$nom_vrai)){
echo "<FONT COLOR='red'>Transfer completed</FONT>";
mysql_query("UPDATE themes SET img_th = '$directory$nom_vrai'
WHERE num_th='$num'" );
}
else{
echo "<FONT color='red'>UPLOAD FAILED !!!</FONT>";
}
}
}
else{
echo "must be an img file !";
}
}
else{
echo"too big file";
}
}
Il me met a chaque fois "upload failed !!!"
Je viens de changer ma version mandrake pour une debian 3.1 sarge avec apache / php / mysql installé avec apt-get
Cette fonctionnalité fonctionnait tres bien sous mandrake.
Je me dis qu'il est possible qu'il me menque des modules pour permettre l'upload ?
Ou alors que je l'ai mal configurer dans php.ini ou http2.conf ?
*************************
De meme pour une fonctionne de traitement de fichier, quand je fais
$cmd = "ls -lhtcRX /home/waxx/download/ >/tmp/webdwd.txt";
system($cmd);
Il me créer le fichier webdwd.txt mais refuse d'écrire quoi que ce soit a l'interieur.
************************
Merci de m'aiguiller afin que je comprenne pouquoi cela ne fonctionne pas.
Message édité par waxx_ganja le 22-11-2005 à 19:26:58