2009-12-24 5 views
1

J'ai 5 sections de jeu qui utiliseront la même feuille de modèle, mais elles tireront toutes des données d'une table différente dans mysql dans la même base de données. Cependant, je suis ce INCORPORANT: How to include config.php efficiently?Feuille de modèle dynamique?

Ok, voici donc comment je comptais aborder. Par exemple, disons que je vais à index.php? Page = pokemon alors je prévoyais de mettre $ game_name à $ _GET ['page'] et ensuite utiliser $ game_name pour sélectionner la table (en supposant que j'ai fait le nom de la table pokemon) et alors toutes les données seraient tirées de mysql correctement. Y a-t-il une meilleure façon de le faire?

Ensuite, dans la situation où quelqu'un essaie d'aller à un jeu inexistant alors je veux qu'il rediriger vers la page d'accueil. Par exemple, disons qu'ils ont mal orthographié pokemon à poekmon et sont allés à index.php? Page = poekmon alors il montrerait correctement un modèle vierge sans données non? Au lieu de cela, comment puis-je le faire rediriger vers la page d'accueil si c'était un jeu qui n'existe pas?

Ceci est un peu similaire à la configuration de wordpress. Il utilise Single.php comme modèle, puis récupère les données de la base de données.

Répondre

1

Perform votre logique avant d'imprimer quoi que ce soit à la page elle-même, de cette façon, si vous décidez de l'utilisateur a demandé un jeu qui n'existe pas, vous pouvez simplement rediriger l'en-tête(); Pour savoir si le jeu demandé existe, vous pouvez avoir une fonction qui obtient des données de jeu, ou qui renvoie false. De cette façon, vous pouvez faire quelque chose comme ceci:

if (!$data = game_data("pokemon")) header("Location: no-exist.php"); 

Si le jeu demande existe, alors le script se poursuit, et que vous utilisez des données $ pour accéder aux données de jeu. Bien sûr, vous allez remplacer "pokemon" dans l'exemple ci-dessus par votre variable, après qu'elle a été nettoyée et préparée pour être traitée.

Rappelez-vous de le faire avant quoi que ce soit sortie à la page elle-même, ou bien l'appel à en-tête() soulèvera un message déjà envoyé « en-têtes ».

+0

Faire une fonction est certainement une bonne idée. Je pense que je vais incorporer cela. – Strawberry

+0

Avoir la fonction return false si aucun enregistrement correspondant à la requête. – Sampson

Questions connexes