Upload fichier en php
yoshiro
Messages postés
532
Statut
Membre
-
Aktayen Messages postés 189 Date d'inscription Statut Membre Dernière intervention -
Aktayen Messages postés 189 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
voila j'essaye d'uplaoder des fichier en php mais le problème c'est qu'il n'atteint pas le dernier dossier du lien.
Par exemple si le lien est http://localhost/Nouveaudossier/azerty
il n'atteint pas le dossier azerty!!
voici le code PHP ( je récupère la valeur a partir d'un GET envoyer via du JavaScript j'ai essayer en PHP aussi toujours pareil)
Merci d'avance
voila j'essaye d'uplaoder des fichier en php mais le problème c'est qu'il n'atteint pas le dernier dossier du lien.
Par exemple si le lien est http://localhost/Nouveaudossier/azerty
il n'atteint pas le dossier azerty!!
voici le code PHP ( je récupère la valeur a partir d'un GET envoyer via du JavaScript j'ai essayer en PHP aussi toujours pareil)
..... //fonction upload public function upload_files($fics) { if (!isset($fics["Filedata"]) || !is_uploaded_file($fics["Filedata"]["tmp_name"]) || $fics["Filedata"]["error"] != 0) echo "There was a problem with the upload"; else { $targetPath = '../Nouveau dossier (2)/emplacements/'. basename($_SESSION['refdos']) . '/'; $targetFile = str_replace('//','/',$targetPath) . $fics["Filedata"]["name"]; move_uploaded_file($fics["Filedata"]["tmp_name"], $targetFile); } exit(0); } ...... //recupere la valeur $dosi = (isset($_GET['dossiers']))? $_GET['dossiers']:null; //récupère via du javascript if ($dosi !== null) $_SESSION['refdos'] = $dosi ; //Upload fichier if (isset($_POST["PHPSESSID"])) session_id($_POST["PHPSESSID"]); if (isset($_FILES["Filedata"])) $az->upload_files($_FILES);
Merci d'avance
A voir également:
- Upload fichier en php
- Fichier bin - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier .dat - Guide
3 réponses
Bonjour,
Je ne vois pas pourquoi tu tente d'envoyer ton image par la méthode get.
Je te donne un exemple avec la méthode POST, tu pourra toujours tenter ensuite de le modifier avec la méthode get.
Dans le premier fichier :
<label>Logo Société : </label><input type="file" name="logo" />
Pour récupérer ce fichier, tu mets dans le second fichier :
$monErreur=0;
$image=$_FILES['logo']['name'];
if ($_FILES['logo']['error'] > 0) $monErreur=1;
$extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png' );
$extension_upload = strtolower( substr( strrchr($_FILES['logo']['name'], '.') ,1) );
$ck="";
if ( in_array($extension_upload,$extensions_valides) && ($monErreur == 0) )
{
$ck="logo/{$image}";
$resultat = move_uploaded_file($_FILES['logo']['tmp_name'],$ck);
}
Cela va te permettre a la fois de récupérer ton fichier mais également de le copier dans le dossier de ton projet, dans le dossier logo (qui sera crée si jamais il existe pas.
Voila j'espere que cela répond a ton problème sinon je reformulerai ;)
Je ne vois pas pourquoi tu tente d'envoyer ton image par la méthode get.
Je te donne un exemple avec la méthode POST, tu pourra toujours tenter ensuite de le modifier avec la méthode get.
Dans le premier fichier :
<label>Logo Société : </label><input type="file" name="logo" />
Pour récupérer ce fichier, tu mets dans le second fichier :
$monErreur=0;
$image=$_FILES['logo']['name'];
if ($_FILES['logo']['error'] > 0) $monErreur=1;
$extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png' );
$extension_upload = strtolower( substr( strrchr($_FILES['logo']['name'], '.') ,1) );
$ck="";
if ( in_array($extension_upload,$extensions_valides) && ($monErreur == 0) )
{
$ck="logo/{$image}";
$resultat = move_uploaded_file($_FILES['logo']['tmp_name'],$ck);
}
Cela va te permettre a la fois de récupérer ton fichier mais également de le copier dans le dossier de ton projet, dans le dossier logo (qui sera crée si jamais il existe pas.
Voila j'espere que cela répond a ton problème sinon je reformulerai ;)
Salut,
J'ai pas tout lu de ton code, mais déjà si tu veux rentrer dans le répertoire azerty il faut que tu mettes un slash après azerty
Ensuite pour enlever ou ajouter les antislashs tu as des fonctions en php très utile.
Sinon question, quelles sont tes contraintes pour que tu doivent envoyer tes données par un get? Ca me parrait pas très sûr que manip.
J'ai pas tout lu de ton code, mais déjà si tu veux rentrer dans le répertoire azerty il faut que tu mettes un slash après azerty
http://localhost/Nouveaudossier/azerty/
Ensuite pour enlever ou ajouter les antislashs tu as des fonctions en php très utile.
stripslashes() / addslashes()
Sinon question, quelles sont tes contraintes pour que tu doivent envoyer tes données par un get? Ca me parrait pas très sûr que manip.