Faire appel a une page a partir de <a href="?action=Forum">

fankamdenise Messages postés 31 Date d'inscription mercredi 17 juin 2009 Statut Membre Dernière intervention 20 janvier 2011 - 12 juil. 2010 à 19:44
fankamdenise Messages postés 31 Date d'inscription mercredi 17 juin 2009 Statut Membre Dernière intervention 20 janvier 2011 - 13 juil. 2010 à 19:19
salut a tous et merci de me preter attention.
Bon voila je voudrais faire appel a une page a partir du code ci-dessous mais je n'y arrive pas:


[?action=Forum forum ]
[?action=tutoriel tutoriel ]

if(isset($action))
{
include $action.".php";
}


merci de m apporter votre aide..

6 réponses

inwebo Messages postés 380 Date d'inscription lundi 12 novembre 2007 Statut Membre Dernière intervention 23 octobre 2014
13 juil. 2010 à 11:18
Bonjour,

Il faut reprendre dés le départ, que veux tu faire exactement ?
Ou seront placées les variables ? Dans une URL ($_GET), dans une en-tête http ($_POST), en session ($_SESSION).

Que ce passe-t-il si par exemple la valeur de action vaut unepagequiexistepas et que la page unepagequiexistepas.php n'est pas présente sur le serveur ? Ne devrait-il pas y avoir une valeur par défaut si aucune page n'est trouvée ?


________________________________________
( $toBe || !$toBe ) = $this->Question();
0
fankamdenise Messages postés 31 Date d'inscription mercredi 17 juin 2009 Statut Membre Dernière intervention 20 janvier 2011
13 juil. 2010 à 16:40
bon voici ce que je veux faire

je me positionne dans ma page index ou j'ai les menu: forum, tutoriel, chat.
je vodrais que l'orsque l'on click sur forum ma page forum.php puisse s'afficher dans le cadre prevu a cet effet dans index.php sans quitter ma page index
voici donc le code que j'entre

<tr>
<td>[?action=Forum forum ]
</td>
</tr>
<tr> <td>
<?php
if(isset($action))
{
include $action.".php";
}
?>
</td> </tr>

mon soucis est donc de trouver la bonne methode pour acceder au forum sans quitter ma page index.php

Merci
0
inwebo Messages postés 380 Date d'inscription lundi 12 novembre 2007 Statut Membre Dernière intervention 23 octobre 2014
13 juil. 2010 à 16:52
Re,

Je te conseillerai donc d'utiliser AJAX, pour modifier le contenu d'une page web sans avoir à recharger la page.

Par contre les questions du post précèdent ne sont pas innocentes dans le sens ou cela pourrait t'aider dans tes démarches.


________________________________________
( $toBe || !$toBe ) = $this->Question();
0
fankamdenise Messages postés 31 Date d'inscription mercredi 17 juin 2009 Statut Membre Dernière intervention 20 janvier 2011
13 juil. 2010 à 16:55
et comment je positionne le POST?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
inwebo Messages postés 380 Date d'inscription lundi 12 novembre 2007 Statut Membre Dernière intervention 23 octobre 2014
13 juil. 2010 à 18:44
Je te mets un exemple, nous utiliserons $_GET.


Ceci est une 'superglobale', ou variable globale automatique. Cela signifie simplement que cette variable est disponible dans tous les contextes du script. Il n'est pas nécessaire de faire global $variable; pour y accéder dans les fonctions ou les méthodes.


D'autre superglobales existent, $_POST, $_SESSION, $_COOKIE ...


<?php

// Nos Rubriques
[?action=forum Forum]
[?action=tutoriel Tutoriel]

// Est-ce que la variable qui devrait se trouver dans l'URL, existe ?

// le ! indique la négation 
if( !isset($_GET['action']) ) {
     // Si a variable n'existe pas on lui donne une valeur par défaut
     $_GET['action'] = 'accueil';
}
// Si elle existe
else {
     // Cette variable est connue d'avance (en théorie), nous savons donc quelles valeurs elle peut avoir
     switch( $_GET['action'] ) {
          case 'forum' :
          include( 'forum.php' ) ;
               break;
          
          case 'tutoriel' :
          include( 'tutoriel.php' );
               break;
          
          // accueil.php est la valeur par défaut ET lorsque $_GET['action'] vaut accueil
          case 'accueil':
          default :
          include( 'accueil.php' );
               break;
     }
}
// Je n'ai pas testé le code mais l'idée est là.
?>



ATTENTION :

Il faut toujours se méfier des varialbes 'sales' càd sur des variables qui peuvent être modifiés par l'utilisateur.


Il n'existe pas UNE manière de faire.
________________________________________
( $toBe || !$toBe ) = $this->Question();
0
fankamdenise Messages postés 31 Date d'inscription mercredi 17 juin 2009 Statut Membre Dernière intervention 20 janvier 2011
13 juil. 2010 à 19:19
merci
je vais tester . vous etes genial
0
Rejoignez-nous