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

PHP & Base de données Discussion :

Problème avec une variable


Sujet :

PHP & Base de données

  1. #1
    Membre régulier
    Inscrit en
    Mai 2011
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2011
    Messages : 7
    Par défaut Problème avec une variable
    Bonjour à tous !
    Je suis débutant et je n'arrive pas à insérer une variable dans mon code !
    Je vous montre, vous allez mieux comprendre...
    voilà mon code:

    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    <?php   
     
    function copy_dir ($dir2copy,$dir_paste) {   
     
            // On vérifie si $dir2copy est un dossier   
            if (is_dir($dir2copy)) {   
     
                    // Si oui, on l'ouvre   
                    if ($dh = opendir($dir2copy)) {        
     
                            // On liste les dossiers et fichiers de $dir2copy   
                            while (($file = readdir($dh)) !== false) {   
     
                                    // Si le dossier dans lequel on veut coller n'existe pas, on le créé   
                                    if (!is_dir($dir_paste)) mkdir ($dir_paste, 0777);   
     
                                    // S'il s'agit d'un dossier, on relance la fonction récursive   
                                    if(is_dir($dir2copy.$file) && $file != '..'  &&    
    $file != '.') copy_dir ( $dir2copy.$file.'/' , $dir_paste.$file.'/' );        
                                    // S'il sagit d'un fichier, on le copue simplement   
                                    elseif($file != '..'  && $file != '.') copy ( $dir2copy.$file , $dir_paste.$file );   
     
                            }   
     
                    // On ferme $dir2copy   
                    closedir($dh);   
     
                    }   
     
            }          
     
    }   
     
    $dir2copy = './KG007/';   
    $dir_paste = './clients/membre/KG/';   
     
    // Copie le dossier $dir2copy dans le dossir $dir_paste, inutile de créé les dossiers   
    copy_dir ($dir2copy,$dir_paste);   
    ?>
    Et j'aimerai remplacer "membre" par cette variable:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo $_SESSION['membre_pseudo'] ?>

    En gros ça donnerait quelque chose comme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $dir_paste = './'.$_SESSION['membre_pseudo'].'/KG/';

    seulement ca ne marche pas ... :/
    A l'aide !!!

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Décembre 2009
    Messages : 95
    Par défaut
    Bonjour,

    Es-tu sure que ta variable de session est bien définie ?
    Pour vérifier fait un echo de ta variable.

    Es-tu sure que ta session est bien démarrée, c'est à dire que ton fichier commence par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <?php
    session_start();
    As-tu essayé en définissant une variable à la main par exemple au début du fichier tu mets :
    et après tu insère $pseudo au lieu de $_SESSION['membre_pseudo']

  3. #3
    Membre régulier
    Inscrit en
    Mai 2011
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2011
    Messages : 7
    Par défaut
    Merci de me répondre !

    Oui j'ai déjà utilisé echo pour voir si php execute bien ce que je veux... et c'est la cas :s

    Pour ton idée de définir une variable à la main, j'ai déjà tenté aussi... Mais ça ne marche toujours pas...

    Et enfin, pour session_start() ... il m'indique une erreur du style:

    "Parse error: syntax error, unexpected T_VARIABLE in compte/vue/clients/etape1.php on line 47"

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Décembre 2009
    Messages : 95
    Par défaut
    Il semblerait que cette erreur n'ai rien à voir avec le session_start.
    Que contient ta ligne 47 de compte/vue/clients/etape1.php ?

    Si avec une variable définie manuellement cela ne fonctionne pas non plus, dans ce cas le problème ne vient pas de la session mais de la fonction.
    As-tu essayé de créer le dossier de destination avant de copier dedans ? en ajoutant ceci au début de ta fonction :

  5. #5
    Membre régulier
    Inscrit en
    Mai 2011
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2011
    Messages : 7
    Par défaut
    Bon, j'ai nettoyé mon code et session start passe maintenant! mais le code ne fonctionne pas, je te le montre,tu peux me dire si tu voie une erreur ?

    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    <?php
     
    session_start();
     
     
    function copy_dir ($dir2copy,$dir_paste) {
     
            // On vérifie si $dir2copy est un dossier
            if (is_dir($dir2copy)) {
     
                    // Si oui, on l'ouvre
                    if ($dh = opendir($dir2copy)) {     
     
                            // On liste les dossiers et fichiers de $dir2copy
                            while (($file = readdir($dh)) !== false) {
     
                                    // Si le dossier dans lequel on veut coller n'existe pas, on le créé
                                    if (!is_dir($dir_paste)) mkdir ($dir_paste, 0777);
     
                                    // S'il s'agit d'un dossier, on relance la fonction récursive
                                    if(is_dir($dir2copy.$file) && $file != '..'  && 
    $file != '.') copy_dir ( $dir2copy.$file.'/' , $dir_paste.$file.'/' );     
                                    // S'il sagit d'un fichier, on le copue simplement
                                    elseif($file != '..'  && $file != '.') copy ( $dir2copy.$file , $dir_paste.$file );
     
                            }
     
                    // On ferme $dir2copy
                    closedir($dh);
     
                    }
     
            }       
     
    }
     
     
     
    $dir2copy = './KG1/';
    $dir_paste = './'.$_SESSION["membre_pseudo"].'/KG/'; 
     
    // Copie le dossier $dir2copy dans le dossir $dir_paste, inutile de créé les dossiers
    copy_dir ($dir2copy,$dir_paste);
    ?>
    <strong></strong>

  6. #6
    Membre régulier
    Inscrit en
    Mai 2011
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2011
    Messages : 7
    Par défaut
    je viens juste de remarquer, que le php ne tenait pas compte de ma variable $_session mais pourquoi ?

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Décembre 2009
    Messages : 95
    Par défaut
    Juste après cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    function copy_dir ($dir2copy,$dir_paste) {
    Ajoute ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var_dump(is_dir($dir2copy));
    Si ca te retourne false tu as ta réponse, la fonction n'est pas exécutée.
    Pour remédier à cela, il faut utiliser les chemins relatifs comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $dir2copy = dirname(__FILE__).'/KG1/';
    $dir_paste = dirname(__FILE__).'/'.$_SESSION["membre_pseudo"].'/KG/';
    (pour vérifier que ces chemins soient bons, n'hésite pas à faire des echo).

  8. #8
    Membre régulier
    Inscrit en
    Mai 2011
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2011
    Messages : 7
    Par défaut
    rolala... tu es un dieu ! Ou du moins un vrai pro ! Tu me laisse finir ma journée l’épris tranquille !

    UN GRAND MERCI ! et UN GRAND BRAVO ! CAR LE CODE FONCTIONNE !!!!!

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

Discussions similaires

  1. Problème avec une variable.
    Par ceroxono dans le forum Débuter
    Réponses: 3
    Dernier message: 06/06/2008, 14h19
  2. Problème avec une variable static
    Par Kevin12 dans le forum Général Java
    Réponses: 2
    Dernier message: 05/05/2008, 17h20
  3. problème avec une variable de type string
    Par marsupilami34 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 14/06/2007, 14h53
  4. [PHP-JS] problème avec une variable
    Par schats dans le forum Langage
    Réponses: 14
    Dernier message: 15/04/2007, 13h54
  5. [Javascript] problème avec une variable
    Par creatik dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 03/09/2006, 18h38

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