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 :

Passer une variable dans une URL


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    762
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 762
    Par défaut Passer une variable dans une URL
    Bonjour,

    J'ai un ptit bout de code qui envoie des fichiers, puis affiche ces fichiers.
    Je voudrais ajouter un bouton supprimer à côté de chaque fichier.

    Voilà le lien que j'utilise :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href="suppr.php?fic=".$nom."">Supprimer</a>

    Et la page suppr.php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <?
     
    $fichier_sup = $_GET["fic"]
    unlink('$fichier_sup');
     
    >
    Le lien s'affiche, mais quand je clique, j'ai une page blanche. Certainement ma variable $nom qui n'est pas transmise comme il faut ?
    Si vous pouviez m'aider pour la syntaxe dans la transmission de la variable svp.

    Merci d'avance ;-)

    ANDRE Ani

  2. #2
    Membre éprouvé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2003
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 312
    Par défaut
    Bonjour,


    Dans votre code, les apostrophes (') autour de $fichier_sup sont en trop.

    Pour voir si $nom est bien passé, faites :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "'".$_GET["fic"]."'";
    Si la page suppr.php ne contient que le code mentionné, il est normal qu'elle soit blanche.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?php
    $fichier_sup = $_GET['fic'];
    if (unlink($fichier_sup))
       echo 'Fichier "' . $fichier_sup . '" supprimé.';
    else
       echo 'Fichier "' . $fichier_sup . '" non supprimé.';
    ?>

  3. #3
    Membre éclairé Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    762
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 762
    Par défaut
    Bon, la variable ne passe pas, je dois faire une erreur quelque part.

    Voilà le code qui affiche les fichiers dans un dossier :

    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
     
    <?php
     
    echo 'Fichiers dans le dossier uploads : ' . '<br /><br />';
     
    foreach (new DirectoryIterator('uploads/') as $fileInfo) {
     
    $nom = $fileInfo->getFilename();
    $chemin = $fileInfo->getPath();
    $fichierS = $fileInfo->getPath().'/'.$fileInfo->getFilename();
     
        if($fileInfo->isDot()) continue;
     
        $octal_perms = substr(sprintf('%o', $fileInfo->getPerms()), -4);
        echo 'Nom : ' . $nom . ' Permission : ' . $octal_perms . ' Taille : '.$fileInfo->getSize() . ' <a href="suppr.php?fic=".$nom."">Supprimer</a>' . "<br>\n";
     
        }
    ?>
    Et la page suppr.php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <?php
    $fichier_sup = $_GET['fic'];
     
     
    echo "'".$_GET["fic"]."'";
     
    if (unlink($fichier_sup))
       echo 'Fichier "' . $fichier_sup . '" supprimé.';
    else
       echo 'Fichier "' . $fichier_sup . '" non supprimé.';
    ?>

  4. #4
    Membre éprouvé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2003
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 312
    Par défaut
    Essayez ça (il y avait des erreurs au niveau des ' et ") :
    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
    <?php
     
    echo 'Fichiers dans le dossier uploads : ' . '<br /><br />';
     
    foreach (new DirectoryIterator('uploads/') as $fileInfo) {
     
    	$nom = $fileInfo->getFilename();
    	$chemin = $fileInfo->getPath();
    	$fichierS = $fileInfo->getPath().'/'.$fileInfo->getFilename();
     
        if($fileInfo->isDot()) continue;
     
        $octal_perms = substr(sprintf('%o', $fileInfo->getPerms()), -4);
        echo 'Nom : ' . $nom . ' Permission : ' . $octal_perms . ' Taille : '.$fileInfo->getSize() . ' <a href="suppr.php?fic='.$nom.'">Supprimer</a>' . "<br>\n";
     
    }
    ?>

  5. #5
    Membre éclairé Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    762
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 762
    Par défaut
    Merci, il y a du mieux, la page suppr.php reçoit bien la variable.
    Mais j'ai le message fichier non supprimé.
    Et ce n'est pas un problème de droit, j'ai vérifié.

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    957
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 957
    Par défaut file_exists
    Salut,

    Avant d'effacer le fichier, peux-tu vérifier qu'il existe ?
    Est-il dans le Document Root ?

    A+

Discussions similaires

  1. passer la valeur d'une variable dans un URL
    Par hishwest dans le forum ASP.NET
    Réponses: 0
    Dernier message: 10/01/2012, 01h18
  2. portée d'une variable dans une fonction dans une méthode
    Par laurentg2003 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/06/2009, 20h05
  3. Réponses: 4
    Dernier message: 29/01/2008, 12h12
  4. Réponses: 1
    Dernier message: 15/02/2007, 01h24
  5. Mettre une valeur d'une table dans une variable
    Par Raphou96 dans le forum Access
    Réponses: 5
    Dernier message: 06/02/2006, 16h19

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