Chdir() php

Résolu
didy_gwatinik Messages postés 358 Statut Membre -  
didy_gwatinik Messages postés 358 Statut Membre -
Bonjour,
Je voudrai me placer dans mon répertoire $loginMembre, mais je n'y arrive pas, j'ail'erreur suivante :
Warning: chdir() [function.chdir]: No error (errno 0) in C:\wamp\www\image_ajout_2.php on line 17
Mon code est le suivant (une partie) :
<?php
session_start();
$loginMembre=$_SESSION['pseudo'];

//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++TRAITEMENT DU FICHIER+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//verificationn de l'envoi du fichier
if ($_FILES['nomImage']['error'] > 0) $erreur = "Erreur lors du tranfsert";
//verification de l'extension
$extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png' );
//1. strrchr renvoie l'extension avec le .
//2. substr(chaine,1) ignore le premier caractère de chaine
//3. strtolower met l'extension en minuscule
$extension_upload = strtolower(  substr(  strrchr($_FILES['nomImage']['name'], '.')  ,1)  );
//PROBLEME AVEC LE NOM DU DOSSIER ET LE DEPLACEMENT DE L'IMAGE!
if ( in_array($extension_upload,$extensions_valides) ) print("Extension correct");
echo getcwd() . "\n";
chdir('$loginMembre');
//on est dans le dossier loginMembre
echo getcwd() . "\n";


Qu'est ce qui ne va pas??
Configuration: Windows XP
Firefox 3.0.3

4 réponses

  1. toto
     
    Bonjour

    chdir('$loginMembre');
    Tu ne connais pas la différence entre $loginMembre,'$loginMembre' et "$loginMembre" en PHP ?
    $loginMembre c'est une variable qui contient... ben ça dépend de ton programme
    '$loginMembre' c'est une chaîne qui contient les caractères $,l,o,g, etc...
    "$loginMembre" c'est la chaine obtenue en ramplaçant la variable $loginMembre par son contenu

    si $loginMembre contient la chaîne "monrepertoire" :

    chdir($loginMembre); passe au répertoire monrepertoire
    chdir('$loginMembre'); passe au répertoire $loginMembre (qui n'existe sûrement pas)
    chdir("$loginMembre"); passe au répertoire monrepertoire
    0
    1. didy_gwatinik Messages postés 358 Statut Membre 80
       
      Je suis un peu perdue! En fait, avec
      mkdir($loginMembre,0777,true);
      j'a créé un répertoire qui contient le login de l'utilisateur donc j'ai pu créer un répertoire didy à partir de $loginMembre=$_POST['loginMembre'];
      Mais là je voudrai me placer dans ce répertoire, comment faire sachant que mon
      $loginMembre=$_SESSION['pseudo'];
      0
      1. toto > didy_gwatinik Messages postés 358 Statut Membre
         
        Qu'est ce qui n'est pas clair dans ma réponse ?
        0
      2. didy_gwatinik Messages postés 358 Statut Membre 80 > toto
         
        Ben en fait si je comprends bien avec les explications que tu me donnes je devrais faire chdir($loginMembre); mais j'obtiens exactement la même erreur, pourtant je sélectionne bien le répertoire dont le nom est le contenu de $loginMembre, non?
        0
  2. toto
     
    si je comprends bien avec les explications que tu me donnes je devrais faire chdir($loginMembre);
    Effectivement, chdir('$loginMembre') était incontestablement un erreur.
    Si ça ne marche pas mieux, c'est qu'il y a un autre problème. Peux-tu faire echo "*",$loginMembre,"*"; juste avant le chdir pour être sûr de ce qu'il y a dans ta variable ?
    0
    1. didy_gwatinik Messages postés 358 Statut Membre 80
       
      En effet il y a un souci le echo m'affiche **, je ne comprends pas pourtant je passe bien par l'identification de l'utilisateur avant et j'ouvre la session au début!
      0
  3. ELBARTO
     
    vous avez fait une sql injection
    0
  4. didy_gwatinik Messages postés 358 Statut Membre 80
     
    Quelle stupidité!!! je me suis trompée pour le parametre de la session avec le bon, il n'y a plus d'erreur et ça m'affiche bien didy quand je fais le echo!
    Merci Toto pour ton aide en tout cas!!!! :d
    0