pb pour récuperer une variable dans l'url

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : pb pour récuperer une variable dans l'url

par graphitruc » 06 mars 2009, 22:51

C'est nickel merci ! :pouce:

par Yosh » 06 mars 2009, 21:36

Rien de plus à dire ^^

par Victor BRITO » 06 mars 2009, 17:14

Pour mieux illustrer le message précédent.

Récupérer le paramètre d'URL file directement avec une variable $file illustre le principe de la directive register_globals, une directive qui pose plus d'inconviénients (notamment, en matière de sécurité) que d'avantages (d'ailleurs, cette directive sera supprimée dans PHP 6).

Pour qu'une variable $file puisse récupérer le paramètre d'URL file, il vaut mieux procéder comme suit.
// Si le paramètre d'URL file est passé, $file en prend la valeur
if (isset ($_GET['file'])) $file = $_GET['file'];

// Sinon, $file prend une autre valeur (chaîne vide, null, false...)
else $file = null;
Dans la première condition, il est, de plus, recommandé de vérifier que $_GET['file'] a une valeur attendue ; si ce n'est pas le cas, on ne récupère pas la valeur du paramètre.
// Si le paramètre d'URL file est passé et vaut la valeur attendue, $file en prend la valeur
if (isset ($_GET['file']) && $_GET['file'] == 'valeur attendue') $file = $_GET['file'];

// Sinon, $file prend une autre valeur (chaîne vide, null, false...)
else $file = null;

par Sodams » 06 mars 2009, 17:12

if(isset($_GET["file"]))
{
     $file = $_GET['file'];
     if ($file == "addn") 
    { 
          require "addnews.php3"; 
    } 
}

par graphitruc » 06 mars 2009, 17:00

bonjour,

oui j'ai déjà essayé cette méthode mais je n'ai pas réussi !
comment l'integres tu ? dans une condition ?

merci

par Sodams » 06 mars 2009, 16:57

Utilise
$_GET["file"]
au lieu de
$file
http://www.manuelphp.com/php/reserved.variables.get.php

par sylvaing26 » 06 mars 2009, 16:56

$file = $_GET['file'];

pb pour récuperer une variable dans l'url

par graphitruc » 06 mars 2009, 16:54

bonjour,

Je voudrais inclure un fichier en fonction de la variable file qui s'affiche dans l'url,
mais je n'y arrive pas. C'est toujours "choisir une option" qui s'affiche

une idée ?

voici le code :

Code : Tout sélectionner

<?php require "news-conf.php3"; if ($file == "addn") { require "addnews.php3"; } elseif ($file == "modn") { require "modnews.php3"; } elseif ($file == "deln") { require "delnews.php3"; } elseif ($file == "up") { require "upload.php3"; } else { echo "choisir une option"; } ?> <div> <? echo "<a href=\"index_fr.php3?file=addn\">Add news</a>" ?> | <? echo "<a href=\"index_fr.php3?file=modn\">Update news</a>" ?> | <? echo "<a href=\"index_fr.php3?file=deln\">Delete news</a>" ?> | <? echo "<a href=\"index_fr.php3?file=up\">Upload images</a>" ?> </div>