IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Probleme de passage de variable avec unlink()


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 10
    Points : 7
    Points
    7
    Par défaut Probleme de passage de variable avec unlink()
    Bonjour à tous, je suis en ce moment confronté à un problême qui me titille les neurones...

    Premièrement voici mon bout de script :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    if (!empty($_POST['case_sup'])){
    	foreach ($_POST['case_sup'] as $supp){
     
    		//on définit la requête d'insertion
    		$supCrea_query = "DELETE FROM `portfolio_crea` WHERE `id` = '".$supp."'";
     
    		//on execute la requête d'insertion
    		$supCrea_query_exe = mysql_query($supCrea_query,$maConnexion) or die ("Une erreur s'est produite. Suppression de la création impossible.");
     
    		//on recherche les noms des fichiers à supprimer
    		$supFile_query = "SELECT lien_macro, lien_micro FROM portfolio_crea WHERE `id` = '".$supp."'";
    		$supFile_query_exe = mysql_query($supFile_query);
    		$supFile_query_select = mysql_fetch_object($supFile_query_exe);
     
    		$prefixe = "../../";
    		$micro = $supFile_query_select->lien_micro;
    		$macro = $supFile_query_select->lien_macro;
     
    		$microSup = unlink($prefixe.$micro);
    		$macroSup = unlink($prefixe.$macro);
     
    	} // fin foreach
     
    	if($supCrea_query_exe == true && $microSup == true && $macroSup == true){
    		echo"Suppression effectuée avec succés";
    	}
    } // fin if
    Ce que je cherche à faire c'est de pouvoir supprimer, en même temps, une entrée dans une table, et deux fichiers (une grande image (=$macro) et une vignette (=$micro))

    Le problême c'est que je me retrouve avec un message du style :

    Warning: unlink(../../): Permission denied in c:\program files\easyphp1-7\www\portfolio\html\prive\pages\supp_crea.php on line 136

    Warning: unlink(../../): Permission denied in c:\program files\easyphp1-7\www\portfolio\html\prive\pages\supp_crea.php on line 137
    Quelqu'un aurait-il une idée du problême SVP, car apparemment ma deuxième variable concaténée ne passe pas...

    Merci d'avance

  2. #2
    Membre actif

    Inscrit en
    Mai 2004
    Messages
    162
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 162
    Points : 264
    Points
    264
    Par défaut
    Soit tu as un chemin vers ton fichier qui est faux -> chemin absolu depuis la racine.
    Soit tu n'as pas les droits nécessaires -> un coup de chmod 777 et voilà.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 10
    Points : 7
    Points
    7
    Par défaut
    En fait ça a été testé en local et si je passe mon chemin en dur ça marche...

    Parce que le message d'erreur affiche unlink(../../) donc juste la première variable et non la deuxième...

  4. #4
    Membre éprouvé
    Inscrit en
    Juillet 2004
    Messages
    1 027
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 027
    Points : 1 164
    Points
    1 164
    Par défaut
    unlink(../../):

    Uh ?

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 10
    Points : 7
    Points
    7
    Par défaut
    ma 1ere variable contient ../../

    et ma 2e variable contient un chemin du style : creations/nom_fichier.jpg

    ce qui devrait donner unlink(../../creations/nom_fichier.jpg)
    et non unlink(../../)

    Enfin le premission denied s'affiche parce que je ne fait que remonter que de 2 dossier et qu'il faudrait supprimer plusieurs niveaux d'arborescence
    Chose qui n'est pas permise ...

    Donc mon problême est juste mon passage de variable...

    Comprenez ?

  6. #6
    Membre actif

    Inscrit en
    Mai 2004
    Messages
    162
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 162
    Points : 264
    Points
    264
    Par défaut
    Fait echo $micro pour voir ?

  7. #7
    Membre éprouvé
    Inscrit en
    Juillet 2004
    Messages
    1 027
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 027
    Points : 1 164
    Points
    1 164
    Par défaut
    regardes du coté de :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
         $micro = $supFile_query_select->lien_micro; 
          $macro = $supFile_query_select->lien_macro; 
     
          $microSup = unlink($prefixe.$micro); 
          $macroSup = unlink($prefixe.$macro);
    en faisant un var_dump( $supFile_query_select);die();par exemple.

    :grilled:

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 10
    Points : 7
    Points
    7
    Par défaut
    nan c'est bon, ma bdd me fournit bien mon chemin...
    comprends pas....

  9. #9
    Membre éprouvé
    Inscrit en
    Juillet 2004
    Messages
    1 027
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 027
    Points : 1 164
    Points
    1 164
    Par défaut
    ok

  10. #10
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 10
    Points : 7
    Points
    7
    Par défaut
    la concaténation ne poserait-elle pas un problême ?
    le truc c'est que tout à l'heure j'ai enregistré tout mon chemin (prefixe+suffixe) dans une variable afin de n'en mettre qu'une dans le unlink()...

    Mais ça marche toujours pas

  11. #11
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 10
    Points : 7
    Points
    7
    Par défaut
    c'est bon je viens de résoudre mon problême...

    tout a l'heure j'ai pas fait un echo $micro
    mais un echo $supFile_query_select->lien_micro;

    ....

    Par contre je ne comprends pas pourquoi ma variable ne stocke pas mon chemin

    Bon je vais revoir mon script lol ^^

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. passage de variable avec espace
    Par guigo dans le forum Langage
    Réponses: 3
    Dernier message: 08/01/2008, 09h53
  2. [AJAX] Passage de variable avec espace blanc et insecam
    Par ascito dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 09/07/2007, 11h51
  3. [Conception] Passage De Variable Avec Post Via Un Script Php + Redirection
    Par british_toons dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 26/09/2006, 16h57
  4. Passage de variable avec la méthode POST
    Par lama85 dans le forum Langage
    Réponses: 2
    Dernier message: 07/09/2006, 11h12
  5. [VB.NET] Problem de récupération de variable avec une DLL
    Par ludovic85 dans le forum Windows Forms
    Réponses: 11
    Dernier message: 19/01/2005, 11h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo