Regrouper plusieurs pages en une

Soyez le premier à donner votre avis sur cette source.

Vue 6 702 fois - Téléchargée 249 fois

Description

Comme sont nom l'indique, cette source permet d'insérer plusieurs pages dans le code d'une seule. Quand je dit page je veut bien sûr parler de codes sources php,html, ou autre. Mais au rique de ne pas être bien compris, je préfère préciser.

Cette source n'a pas d'utilité particulières,
mais ayant vu que l'on pouvais utiliser les balises
"<<< EOFILE" et "EOFILE;" pour insérer une image dans le code source d'une page .php , j'ai voulu trouver le moyen de regrouper plusieurs pages dans le code.

Source / Exemple :


<?php

// partie "Liens"
$liens = <<< EOFILE
<a href="multi.php">Index</a><br>
<a href="?page=1">Page 1</a><br>
<a href="?page=2">Page 2</a><br><br>
EOFILE;

// page "Index" ( charge le contenue de la variable "$liens" )
$index = <<< EOFILE
<html>
$liens
Vous êtes sur la page index
</html>
EOFILE;

// partie "Page1" ( charge le contenue de la variable "$liens" )
$page1 = <<< EOFILE
<html>
$liens
Vous êtes sur la page 1
</html>
EOFILE;

// partie "Page2" ( charge le contenue de la variable "$liens" )
$page2 = <<< EOFILE
<html>
$liens
Vous êtes sur la page 2
</html>
EOFILE;

// si on renseigne la variable "page" dans l'URL ( ex: http://site.fr/multi.php?page=1 )
if (isset($_GET['page']))
{
    switch ($_GET['page'])
    {	
		// pour la valeur "1"
		case '1' :
		// la page contenue dans la variable "$page1" sera affichée
        echo $page1;
        exit();
		
		// pour la valeur "2"
		case '2' :
		// la page contenue dans la variable "$page2" sera affichée
        echo $page2;
        exit();
	}
}
// sinon, si on ne renseigne pas la variable "$page"
else
{
	// on affiche la page contenue dans la variable "$index"
	echo $index;
}

?>

Conclusion :


J'espère que cette source pourra servir à quelqu'un.
Au plaisir !

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
17
Date d'inscription
lundi 28 février 2005
Statut
Membre
Dernière intervention
14 janvier 2021

Cela à eu le mérite de me faire découvrir ceci http://www.manuelphp.com/php/language.types.string.syntax.heredoc.php
Messages postés
1
Date d'inscription
lundi 13 septembre 2004
Statut
Membre
Dernière intervention
20 septembre 2008

J'évite les polémiques sur oui ou non un tel bout de code est sensé se trouver ici, pour proposer à l'auteur une simplification assez basique :

<?php
[...]

// si on renseigne la variable "page" dans l'URL ( ex: http://site.fr/multi.php?page=1 )
$verif='page'.(int)$_GET['page'];
if (isset($$verif)) echo $$verif;

// sinon, si on ne renseigne pas la variable "$page"
else echo $index;
?>

Ca évite de multiplier les lignes pour rien (et encore, la création de la variable $verif n'est pas obligatoire).
++
Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
17
Salut,

Une autre précision : le marqueur de fin doit être en début de ligne, sinon il ne sera pas reconnu.
Notons que la syntaxe heredoc interprète les variables qui se trouvent à l'intérieur, contrairement à la syntaxe Nowdoc (PHP5.3.0+).
Messages postés
6
Date d'inscription
dimanche 25 septembre 2005
Statut
Membre
Dernière intervention
18 septembre 2008

Ok ^^, merci malalam pour tes précisions,
j'avou que ayant cherché "<<< EOFILE"
dans google, je n'avais pas trouvé grand chose.
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
Hello,

je ne vais pas revenir sur ce qui a été dit : c'est vrai, ta "source" est plus que légère. Le seul "intérêt" que j'y vois pour les débutants, c'est la découverte de la syntaxe heredoc. Et là, je veux quand même intervenir :
EOFILE n'a rien d'une balise standard...tu peux utiliser n'importe quel marqueur, ça marchera de la même manière :
<<<toto
mon texte et mes $variables et mes {$tablo['toto']}
toto;
Ce qui est important : les <<<, le marqueur suivi d'un retour chariot, et le texte terminé par un retour chariot, le marqueur et un point virgule.
Et c'est pratique pour d'autres raisons...écrire du html et des variables PHP par exemple, sans rien échapper ou concaténer.
Les accolades sont nécessaires pour les tableaux.
On ne peut pas insérer d'appel de fonction/méthode/expressin PHP quelconque.
Vlà.
Afficher les 12 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.