Page 1 sur 1

Upload fichier

Posté : 22 sept. 2009, 17:41
par guigui69
Bonjour à tous,

j'ai un soucis un mon code php pour uploader un fichier:
<?php session_start();
include ("fonction/fonction.bdd.php"); 
connexion_mysql();
			
if(isset($_POST["go"]))
{
if(isset($_POST["titre_id"]))	$titre_id=$_POST["titre_id"];
else $titre_id='';

if(isset($_POST["com_id"]))	$com_id=$_POST["com_id"];
else $com_id='';

if(isset($_POST["version_id"]))	$version_id=$_POST["version_id"];
else $version_id='';

if(isset($_POST["id_type"]))	$id_type=$_POST["id_type"];
else $id_type='';

if(isset($_POST["id_gamme"]))	$id_gamme=$_POST["id_gamme"];
else $id_gamme='';

if(isset($_POST["id_sgamme"]))	$id_sgamme=$_POST["id_sgamme"];
else $id_sgamme='';

if(isset($_POST["document_id"]))	$document_id=$_POST["document_id"];
else $document_id='';

///////
if ($_FILES) { 
echo 'kkkkkkkkkkkkkkkk';
}
else
{
echo 'nnnnnnnnnnnnnnnnnnnnnn';
}
$dossier = '../ged/';
$fichier = basename($_FILES['document_id']['name']);
$taille_maxi = 10000000000000;
$taille = filesize($_FILES['document_id']['tmp_name']);
echo "variable fichier>>>>>>>>".$fichier."<<<==";
$extensions = array('.pdf', '.xls', '.doc');
$extension = strrchr($_FILES['document_id']['name'], '.'); 
echo 'llllllllllllllll'.$extension.'llllllllllllllllll';
//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 pdf, xls 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);
     if(move_uploaded_file($_FILES['document_id']['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
     {
	 
			//$url_mini_image= $dossier.$fichier;
			$document_id=$fichier;
			chmod("'.$dossier.''.$document_id.'", 0644);
			//echo $url_mini_image;
          echo 'Upload effectué avec succès !';
     }
     else //Sinon (la fonction renvoie FALSE).
     {
          echo 'Echec de l\'upload !';
     }
}
else
{
     echo $erreur;
}

if(empty($titre_id) OR empty($com_id))
{
echo 'tout les champs doivent etre remplis';

}
else
{


//$query = mysql_query("INSERT INTO document_ged (id_id,titre_id, com_id, version_id, id_type, gamme_type, sgamme_type, document_id, date_id, id_user) VALUE ('', '$titre_id', '$com_id', '$version_id', '$id_type', '$id_gamme', '$id_sgamme', '$document_id', '$date_id', '$id_user');") or die (mysql_error());
echo 'Image Rajoutée';
echo "INSERT INTO document_ged (id_id,titre_id, com_id, version_id, id_type, gamme_type, sgamme_type, document_id, date_id, id_user) VALUE ('', '$titre_id', '$com_id', '$version_id', '$id_type', '$id_gamme', '$id_sgamme', '$document_id', '$date_id', '$id_user');";
mysql_close();
 }

}
else
{
}
print_r($_POST); echo "<br>";
?>
le problème se situe au niveau de :

Code : Tout sélectionner

Warning: move_uploaded_file(/ged/cclerc-Suivi-RFA-2009-20090902170837.pdf) [function.move-uploaded-file]: failed to open stream: No such file or directory in /var/www/ged/v0.1a/ajout_ged2.php on line 61 Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phppvgJa6' to '/ged/cclerc-Suivi-RFA-2009-20090902170837.pdf' in /var/www/ged/v0.1a/ajout_ged2.php on line 61 Echec de l'upload !

Je n'arrive pas avoir pourquoi.

- depuis mon linux je peut créer un document dans le repertoire de destination (chmod 777)
- depuis mon navigateur web je peut ouvrir le contenue d'un txt créer dans le repertoire en question.

Mon site web:
/La racine
/La racine/ged/v0.1a/upload.php
/La racine/ged/ICI doit arriver mon fichier


Ou peut se situer le problème?

Merci

guigui69

Re: Upload fichier

Posté : 22 sept. 2009, 17:44
par thehawk
Et qu'il y a t'il sur le serveur ?

tu ne vois pas un fichier qui c crée fait une recherche dans TOUT ton disque dur , pour voir (en fonction du nom de fohier voulu , ou de l'extension)

je pense a une erreur d'url.

bye hawk

Re: Upload fichier

Posté : 22 sept. 2009, 18:07
par guigui69
Merci pour cette indication je regarde ca.

au niveau d'apache j'ai monter un repertoire virtuel qui part sur un partage réseau (windows) et je voudrait que les upload part sur se dossier. Est-ce qu'il y a une configuration spécifique a faire ?
(J'ai bien accès a mon répertoire virtuel si je tape La racine/doc_ged/test.txt)
Merci

guigui69

Re: Upload fichier

Posté : 23 sept. 2009, 10:40
par guigui69
J'avance mais j'ai toujours un soucis:

Code : Tout sélectionner

Warning: chmod() [function.chmod]: Operation not permitted in /var/www/ged/v0.1a/ajout_ged2.php on line 64
J'ai vérifier les droits au niveau du dossier (777) celui de windows (Modification). Je comprend pas a quel endroit la permission se bloque.

Merci d'avance pour votre aide

guigui69