pb include avec variable

Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics

ricotrutt
WRInaute discret
WRInaute discret
 
Messages: 96
Inscription: 21 Juin 2004

pb include avec variable

Message le Lun Juin 21, 2004 14:53

bonjour je souhaite faire un truc de ce genre là:

Code: Tout sélectionner
include("article.php?page=$id");
mais comme vous le savez l'inclusion de variable ne marche pas auriez vous une petite solution pour moi?


XenonDelee
WRInaute impliqué
WRInaute impliqué
 
Messages: 923
Inscription: 6 Avr 2004

Message le Lun Juin 21, 2004 15:07

Ca me parait assez biscornu :roll:

qu'est ce que tu veux inclure exactement ? :?: et pour quoi faire ? des pseudo frames ?

A+

ApocalXNow
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 23
Inscription: 8 Avr 2004

Message le Lun Juin 21, 2004 15:08

Pas la peine de passer ta variable par le nom de fichier.
<?
$page=$id;
include("article.php");
?>
Ca devrait pourvoir marcher si c un fichier local

ricotrutt
WRInaute discret
WRInaute discret
 
Messages: 96
Inscription: 21 Juin 2004

Message le Lun Juin 21, 2004 15:10

oui c'est pour faire des pseudos frames

la solution d'énoncer la variable avant est pas mal mais je suis pas sur que ça marche avec les pseudos frames si?


XenonDelee
WRInaute impliqué
WRInaute impliqué
 
Messages: 923
Inscription: 6 Avr 2004

Message le Lun Juin 21, 2004 15:15

ben je connais pas trop les pseudo frame mais je ne pense pas que tu puisses passer le paramètre dans l'include effectivement ( rapport à php ...)

par contre la solution classique marche :

switch ($page)
{
case 'mapage1':
include('page_1.php');
break;
case 'mapage2':
include('page_2.php');
break;
case 'mapage3':
include('page_3.php');
break;
default:
include('accueil.php');
break;
}

A+ et bon courage


blman
WRInaute accro
WRInaute accro
 
Messages: 3077
Inscription: 5 Sep 2003

Message le Lun Juin 21, 2004 15:24

La solution de ApocalXNow marche très bien...

Oncle Tom
WRInaute impliqué
WRInaute impliqué
 
Messages: 812
Inscription: 31 Mar 2003

Message le Lun Juin 21, 2004 16:00

Quand tu inclues une page, dis toi qu'avec tu peux utiliser toutes les variables initialisées au tout début du script.

ricotrutt
WRInaute discret
WRInaute discret
 
Messages: 96
Inscription: 21 Juin 2004

Message le Mar Juin 22, 2004 19:27

Xenon je peux pas utiliser ton script parce que comme c'est pour l'affichage d'article et que je risque d'en avoir très vite bcp, ça sera mortel! Par cotnre je teste de ce pas la solution de ApocalXnow j'y avais pas pensé merci à tous


XenonDelee
WRInaute impliqué
WRInaute impliqué
 
Messages: 923
Inscription: 6 Avr 2004

Message le Mer Juin 23, 2004 18:21

ricotrutt a écrit:Xenon je peux pas utiliser ton script parce que comme c'est pour l'affichage d'article et que je risque d'en avoir très vite bcp, ça sera mortel! Par cotnre je teste de ce pas la solution de ApocalXnow j'y avais pas pensé merci à tous


s'il fonctionne mieux tu aurais tord de faire le contraire :lol:

A+


Bobez
WRInaute impliqué
WRInaute impliqué
 
Messages: 716
Inscription: 20 Mai 2004

Message le Mer Juin 23, 2004 18:51

XenonDelee a écrit:
Code: Tout sélectionner
switch ($page)
{
case 'mapage1':
include('page_1.php');
break;
case 'mapage2':
include('page_2.php');
break;
case 'mapage3':
include('page_3.php');
break;
default:
include('accueil.php');
break;
}


Ou bien encore plus simple :

Code: Tout sélectionner
$id = '45';
include('article_'.$id.'.php');


Ce qui aura pour effet d'inclure le fichier "page_45.php". Comme ça, ça fonctionne quel que soit ton $id :)
Ensuite, peut-être qu'avec de l'url rewriting, tu peux transformer les url de type article_45.php en article.php?page=45 :wink: Je ne sais pas si ça fonctionne dans ce cas-là ?


XenonDelee
WRInaute impliqué
WRInaute impliqué
 
Messages: 923
Inscription: 6 Avr 2004

Message le Mer Juin 23, 2004 18:59

laissons faire les pros :wink:

( comme comme l'optimisation du code n'est pas une chimère, ça existe :lol: )

A+

Oncle Tom
WRInaute impliqué
WRInaute impliqué
 
Messages: 812
Inscription: 31 Mar 2003

Message le Jeu Juin 24, 2004 8:28

$id = '45';
include('article_'.$id.'.php');


Beaucoup plus simple mais beaucoup plus dangereux. Le premier guignol qui s'y connait pourra juste arriver à trouver sa première faille sur un site Web grâce à ça.
Le switch() n'est pas beaucoup plus lourd mais surtout beaucoup plus sécurisant

troops
WRInaute impliqué
WRInaute impliqué
 
Messages: 807
Inscription: 16 Mar 2003

Message le Jeu Juin 24, 2004 8:55

Bon t'a plus qu'a nous donner ton adresse web et le premier guignol venu ira s'amuser comme un dingue :)


Bobez
WRInaute impliqué
WRInaute impliqué
 
Messages: 716
Inscription: 20 Mai 2004

Message le Jeu Juin 24, 2004 9:28

The Jedi a écrit:Beaucoup plus simple mais beaucoup plus dangereux. Le premier guignol qui s'y connait pourra juste arriver à trouver sa première faille sur un site Web grâce à ça.

Euh, je vois pas trop quelle faille on pourrait trouver là-dedans...si tu veux bien m'expliquer :) Car le switch pour une centaine d'articles, ça fait vite lourd !

Sinon, j'ai pensé à une autre soluce (pas testée) :

Code: Tout sélectionner
include("article.php?page=$id");

à remplacer par

$_GET['page'] = 'id_que_tu_veux';
include 'article.php';

Oncle Tom
WRInaute impliqué
WRInaute impliqué
 
Messages: 812
Inscription: 31 Mar 2003

Message le Jeu Juin 24, 2004 12:17

Ben imagine qu'un mec joue avec l'URL et ne mette pas des ID d'articles mais du codes à exécuter. A chercher il trouvera et tu bénéficieras d'une superbe injection SQL ou d'un include de fichier qui peut dévoiler des données importantes (les pass notamment).

Si tu fais un include comme tu l'as montré, avant, fais ça :
Code: Tout sélectionner
$_GET['page'] = intval( $_GET['page'] );


Ca t'assureras que tu ne pourras attendre que des données numériques dans l'URL.
Normalement tu n'as pas besoin non plus de faire un switch de plusieurs centaines de choix ;) là c'est ta structure qu'il faut remettre en cause.

pb include avec variable

Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par les experts Google Analytics de Ranking Metrics.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité