inclure le titre de la page

Invité
Invité n'ayant pas de compte PHPfrance

21 sept. 2008, 18:30

bonjour,

comment faire pour inclure le titre de chaque page en utilisant les pseudo frames.

merci

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

21 sept. 2008, 18:59

Bonjour,
Va falloir développer ta question, parce que je n'ai pas compris ta demande. :shock:

Eléphant du PHP | 422 Messages

21 sept. 2008, 19:59

Si j'ai bien compris, les pseudo-frames ce sont des pages qui affichent un résultat différent selon un argument ... du genre ce qu'on trouve sur cet exemple

http://www.editeurjavascript.com/trucs/ ... _frame.php

Pour gérer un titre différent, il suffit de tester de reproduire le switch au niveau du titre. Du genre ...
<?php
switch ($page) {
 case 'livre' : $titre = 'Livres'; break;
 case 'liens' : $titre = 'Liens'; break;
 case 'forum' : $titre = 'Forum'; break;
}
?>

<html>
<head>
<title><?php echo $titre; ?></title>
</head>
<body>
<!-- Liens de votre menu -->
<a href="index.php?page=livre">Le livre d'or</a> - 
<a href="index.php?page=liens">Les liens</a> - 
<a href="index.php?page=forum">Le Forum</a>

<?Php
switch($page) { // Fonction switch : séléction de la case en fonction de la variable $page

case'livre': // Lorsque la variable $page = livre | Rappel : <a href="index.php?page=livre">
include("livredor.php"); // On inclut la page livredor.php
break; // On stop le déroulement du script ici (jusqu'à la fin du switch )

case'liens': // Lorsque la variable $page = liens | Rappel : <a href="index.php?page=liens">
include("liens.html"); // On inclut la page liens.html
break; // On stop le déroulement du script ici (jusqu'à la fin du switch )

case'forum': // Lorsque la variable $page = forum | Rappel : <a href="index.php?page=forum">
include("leforum.php"); // On inclut la page leforum.php
break; // On stop le déroulement du script ici (jusqu'à la fin du switch )

}
?>

</body>
</html>

Invité
Invité n'ayant pas de compte PHPfrance

22 sept. 2008, 18:23

cette methode ne marche pas :(

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

22 sept. 2008, 18:31

cette methode ne marche pas :(
C'est normal, elle n'a pas de jambe.

Blague à part, comme mon confrere Albat, je vais te demander de donner plus de détails.

Nous ne sommes pas devant ton écran, nous ne voyons pas ce que tu as fait, ce que tu as testé. Les seuls éléments que nous ayons, c'est ce que tu nous donnes comme éléments.
Jusque là, nous savons que :
- tu veux mettre un titre de page en utilisant des pseudo-frames
- que ça ne marche pas.

Essaye de te mettre à notre place et pose toi la question "est-ce que je comprendrais ce que je demande". Je pense que la réponse sera "non".

Il faut donc que tu commences par être plus bavard et nous dire ce que tu essayes faire, comment, nous donner un exemple court de code que tu as actuellement, de nous détailler ce que tu as essayé, et de détailler le résultat et pourquoi tu penses que "ça ne marche pas"
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Invité
Invité n'ayant pas de compte PHPfrance

22 sept. 2008, 18:54

j'ai ce code de pseudo frames:
<?php
// On récupère la rubrique passée en paramètre
if(isset($_GET["rubrique"])) $rubrique = $_GET["rubrique"];
else $rubrique = ""; 

// On affiche la page associée à la rubrique
switch ($rubrique) 
{
case 'mapage1':
include('Included_Files/page1.php');
break;
case 'mapage2':
include('page_2.php');
break;
case 'mapage3':
include('page_3.php');
break;
default:
include('Included_Files/accueil.php');
break;
}

?> 
et je veux inserer pour chaque page son titre ideal

Eléphant du PHP | 254 Messages

22 sept. 2008, 23:06

Salut, j'veux pas dire de bêtises, mais je dirais qu'il faudrait que ton premier fichier contienne l'essentiel de ta page html, et que tes includes ne s'occupent que du contenu

Genre
<?php
// On récupère la rubrique passée en paramètre
if(isset($_GET["rubrique"])) $rubrique = $_GET["rubrique"];
else $rubrique = ""; 

echo "<html>";
echo "<head>";
echo "<title>$rubrique</title>";
echo "</head>";
echo "<body>";

// On affiche le contenu de la page associée à la rubrique
switch ($rubrique) 
{
    case 'mapage1':
       include('Included_Files/page1.php');
       break;
    case 'mapage2':
       include('page_2.php');
       break;
    case 'mapage3':
       include('page_3.php');
       break;
    default:
       include('Included_Files/accueil.php');
       break;
}

echo "</body>";
echo "</html>";


?>
Mettons que ce fichier se nomme index.php, tout se que tu mets dans index.php devra être alors être ôté des tes fichiers inclus
D'ailleurs, d'une manière générale, tout ce qui est commun a tes fichiers inclus devrait se trouver dans ton index.php, histoire de factoriser ton code

Bon ceci dit j'ai peut être ma compris le problème :)

Invité
Invité n'ayant pas de compte PHPfrance

22 sept. 2008, 23:29

et je mets ou mon titre pour chaque page:
echo "<title>$rubrique</title>"; 

Eléphant du PHP | 254 Messages

22 sept. 2008, 23:39

Ben la j'affiche en titre le contenu de ta variable GET

Si tu veux spécifier autre chose faut que tu fasses un switch avant de l'afficher

<?php
// On récupère la rubrique passée en paramètre
if(isset($_GET["rubrique"])) $rubrique = $_GET["rubrique"];
else $rubrique = ""; 

echo "<html>";
echo "<head>";
// on choisit notre titre
switch ($rubrique) 
{
    case 'mapage1':
       $title = "le titre de ma page 1";
       break;
    case 'mapage2':
       $title = "le titre de ma page 2";
       break;
    case 'mapage3':
       $title = "le titre de ma page 3";
       break;
    default:
       $title = "le titre de ma page d'accueil";
       break;
}
// on affiche notre titre
echo "<title>$title </title>";
echo "</head>";
echo "<body>";

// On affiche le contenu de la page associée à la rubrique
switch ($rubrique) 
{
    case 'mapage1':
       include('Included_Files/page1.php');
       break;
    case 'mapage2':
       include('page_2.php');
       break;
    case 'mapage3':
       include('page_3.php');
       break;
    default:
       include('Included_Files/accueil.php');
       break;
}

echo "</body>";
echo "</html>";


?>
Bon je te l'accorde c'est pas très élégant ni efficace de switcher deux fois la même variable, y a surement plus élégant, mais bon c'est le principe

Invité
Invité n'ayant pas de compte PHPfrance

23 sept. 2008, 00:07

il affiche le titre par defaut seulement :(

Eléphant du PHP | 254 Messages

23 sept. 2008, 00:37

Vérifie que ta variable $_GET["rubrique"] soit bien renseignée, et si oui, que tu passes bien dans ton switch, visiblement c'est pas le cas

Invité
Invité n'ayant pas de compte PHPfrance

24 sept. 2008, 11:11

Vérifie que ta variable $_GET["rubrique"] soit bien renseignée, et si oui, que tu passes bien dans ton switch, visiblement c'est pas le cas
oui elle est bien renseignee, j ai fai un echo et ca retourne la valeur adequete

Mammouth du PHP | 1353 Messages

24 sept. 2008, 11:18

Est ce que tu as bien modifié page1.php page_2 .... de sorte de ne plus avoir les balises <html><head><title> ....

Parce que si à présent tu mets cela dans ton index et que tu fais un include du contenu il faut pas redéfinir ces balises...

Sinon donne nous le code de ta page générée où le titre n'est pas le bon...
Tell me and I forget. Teach me and I remember. Involve me and I learn.

Invité
Invité n'ayant pas de compte PHPfrance

24 sept. 2008, 13:00

voila le code:

index.php
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?
include ('Titres.php');
?>
<title><?php echo $titre_page; ?></title>
</head>

<body>
<table width="90%" border="0" align="center">
  <tr valign="top">
    <td colspan="3">test</td>
  </tr>
  <tr valign="top">
	<td colspan="3">test</td>
  </tr>
  <tr valign="top">
	<td colspan="3"><?php include ('Included_Files/Menu_Top.php'); ?></td>
  </tr>
  <tr valign="top">
  	<td width="18%"><?php include ('Included_Files/Menu_Right.php'); ?></td>
    <td><?php include ('Included_Files/Menu_Center.php'); ?></td>
    <td width="18%"><?php include ('Included_Files/Menu_Left.php'); ?></td>
  </tr>
  <tr valign="top">
	<td colspan="3"><?php include ('Included_Files/Menu_Footer.php'); ?></td>
  </tr>
    
</table>

</body>
</html>
Titres.php:
<?php
switch ($rubrique) {
 case 'mapage1' : $titre_page = 'Livres'; break;
 case 'mapage2' : $titre_page = 'Liens'; break;
 case 'mapage3' : $titre_page = 'Forum'; break;
 default: $titre_page = 'Bin';
}
?>
Menu_Center.php:
<?php
// On récupère la rubrique passée en paramètre
if(isset($_GET["rubrique"])) $rubrique = $_GET["rubrique"];
else $rubrique = ""; 

// On affiche la page associée à la rubrique
switch ($rubrique) 
{
case 'mapage1':
include('Included_Files/page1.php');
break;
case 'mapage2':
include('page_2.php');
break;
case 'mapage3':
include('page_3.php');
break;
default:
include('Included_Files/accueil.php');
break;
}

echo $rubrique;
?> 

Eléphant du PHP | 254 Messages

24 sept. 2008, 14:01

Faut que tu mette
// On récupère la rubrique passée en paramètre
if(isset($_GET["rubrique"])) $rubrique = $_GET["rubrique"];
else $rubrique = "";  
AU debut de ton index, car tu en a besoin pour afficher le titre, et donc lk'enlever de menucenter.php