Vous n'êtes pas connecté.


Bonsoir à tous,
je cherche actuellement un bon tutoriel pour crée un système de catégorie sur mon site.
Je voudrais mettre en place un tableaux, puis dans ces tableaux, il y a les liens avec leur id.
Par exemple, je clic sur "Créez forum en php", est bien sa m'emmène vers http://monsite.com?tutoriaux=creezforumenphp : un truc de ce genre la. Vous comprenez ?
Le problème est que je ne c'est pas par où commencer, est comment le commencer ^^'
Alors, je me demander, si vous auriez un petit code où tutoriels, pour me montrer comment faire ce fameux systèmes,
Je suis bloquer la dessus depuis plus d'une semaine.
Merci d'avance.
(Moxostoma)
TOP Hors ligne


Salut,
De manière basique, il suffit de faire un lien comme tu le décris :
<a href="page.php?tuto=creerforum">Lien</a>
puis dans la page page.php (peu importe son nom, l'extention est en php pour mon exemple, mais c'est aussi valable pour l'ASP) :
<?php
$tuto = (isset($_GET['tuto'])) ? $_GET['tuto'] : ''; // ici on récupère le tuto
if (file_exists('docs/'.$tuto.'.php'))
{
// le fichier existe bien, on l'inclue
include('docs/'.$tuto.'.php');
}
else
{
// le fichier n'existe pas, on met un fichier par défaut (p.ex. celui contenant tous les tutos)
include('docs/accueil-tutos.php');
}
?>ATTENTION avec cette technique : je teste, via un file_exists, que le fichier existe bien, c'est très important. Sinon on peut incluren'importe quelle page et exécuter n'importe quel script.
Il existe d'autres façons de procéder, mais ceci est une façon simple pour commencer.
FYI RTFM ASAP => Tux : La Légende <=
NewsletTux
TOP Hors ligne








Malcolm, pourrais-tu préciser l'utilité de : $tuto = (isset($_GET['tuto'])) ? $_GET['tuto'] : '' ;
S'il te plait 
TOP Hors ligne


rockboy214 a écrit:
Malcolm, pourrais-tu préciser l'utilité de : $tuto = (isset($_GET['tuto'])) ? $_GET['tuto'] : '' ;
S'il te plait

TOP Hors ligne


depuis que le register_globals est passé à "off", on ne peut plus utiliser le variables comme avant.
Autrefois, appeler http://site.tld/page.php?variable=valeur permettait d'utiliser un peu partout $variable qui valait "valeur". Après le changement de cette directive, toutes les variables dans l'URL sont passées dans le tableau $_GET. Donc avec cette même URL, si on fait echo $variable, ça n'affiche *rien*.
Il faut faire echo $_GET['variable'] pour afficher "valeur".
Enfin, pour un travail propre, il vaut mieux déclarer explicitement et typer ses variables plutôt que de les déclarer implicitement.
Je m'explique.
supposons par exemple que je dise $temp = 5; et que j'affiche plus loin echo $temp+1. Il va m'afficher 6.
Si par exemple j'insère ça dans une chaine de caractères : $prefixe_numero_telephone = '0'.$temp; alors j'associe "$temp" à une chaine de caractères, or $temp est un entier au début.
PHP est pauvrement typé, donc si on n'affiche pas toutes les erreurs et tous les degrés de warning, $prefixe_numero_telephone vaudra '05'. Mais dans des langages très fortement typés, ça ne marchera pas comme ça (ex. Java).
L'intérêt de ma formule au dessus est de définir une variable $tuto, que ce nom existe ou non dans l'URL.
Si je ne le fais pas et que j'exécute directement if (file_exists('docs/'.$tuto.'.php')) alors PHP va implicitement me déclarer $tuto avec un message "warning tuto undefined in file ..." qui sera affiché ou non selon la config de PHP.
Enfin, écrire :
$tuto = (isset($_GET['tuto'])) ? $_GET['tuto'] : ''; // ici on récupère le tuto
équivaut à :
if (isset($_GET['tuto']))
{
$tuto = $_GET['tuto'];
}
else
{
$tuto = '';
}ainsi quelle que soit l'URL, $tuto est bien définie explicitement.
FYI RTFM ASAP => Tux : La Légende <=
NewsletTux
TOP Hors ligne








Merci malcolm, maintenant je comprends l'utilisation du " ? " 
TOP Hors ligne


c'est ce qu'on appelle une "écriture ternaire".
FYI RTFM ASAP => Tux : La Légende <=
NewsletTux
TOP Hors ligne