bobcolas -> avec un include, tu choisis pas où ça s´affiche . .. Vu que ça s´inclut à l´endroit où tu mets le code.
Si tu veux le mettre dans une iframe, il faut que tu donnes un nom à ton iframe ( genre < iframe name="toto">), et que tu spécifies à cette frame de changer de page.
Genre, en Javascript :
document.toto.location=´tapage.php´;
Ce qui te donnerait :
< ?
if(isset($page)
{
echo
"<script>document.toto.location=´".$page".php´;</s
cript>"
}
? >
Spyke88 -> Tu fais du PHP mais tu laisses Dreamweaver ( MX) le traduire ?
Alors tu ne fais pas de php.
C´est comme si tu nous disais " je fais de l´HTML sous dreamweaver sans jamais modifier le code".
Oups, z´ai oublié un point.
Il faut lire :
"<script>document.toto.location=´".$page.".php´;</
script>"
Ca y est ! j´ai compris ; )
Mais je vois pas ca sert à quoi de faire des liens en PHP, si c´est pareil qu´en HTML... ou alors je me trompe... Quelqu´un peut m´expliquer si je me trompe ?
en fait sur le site de Blawk, a chaque fois on recharge toute sa page... Comme on le ferait en HTML...
captain_torche : ben oui ! je ne fait pas vraiment du php mais bon , c
ca m´évite les pertes de temps a tt apprendre . ..et puis c´est pas mon métier . ..
C´est pas pareil qu´en HTML, vu que le lien spécifié est dynamique.
Il sera différent en fonction de ce qui a été paramétré dans l´url.
Mais, effectivement, pour le code que je t´ai filé, tu peux très bien le faire en HTML pur et dur.
L´inconvénient est que tu auras autant de pages que de contenus.
Alors qu´en PHP, tu n´as qu´une page " gabarit" à faire, dont le contenu sera différent en fonction des informations qui y seront envoyées.
Spyke88 -> Ce n´est pas non plus le métier de Blawk, et pourtant il apprend.
De plus, ce que tu peux faire avec Dreamweaver, est très limité.
Quelqu´un pourrait m´expliquer le prinicipe des liens comme ça ? Je comprends pas vraiment, pourquoi tu dis qu´il n´y a qu´un page gabarit, les infos des autres pages sont ou ?
Quelqu´un peut m´expliquer ? ![]()
Tout d´abord, il te faut une base de données.
C´est là que toutes les infos seront stockées ( titre de la rubrique, textes, etc . ..)
Ensuite, tu crées une page normale, que tu nommes en php au lieu de html.
Dans l´url de la page, tu auras quelque chose du genre : page.php?id=23
Le point d´interrogation indique qu´on passe un argument.
à sa droite, on a le nom de l´argument ( ici, " id")
à la droite du signe égal, on a la valeur de l´argument.
Si tu as pris soin d´ajouter un chiffre unique à chacun des enregistrements de ta table ( l´id), tu peux donc rechercher :
" les infos dans la base de données dont l´id est égal à 23", ce qui te ressortira un enregistrement unique.
Et, le navigateur affichera les informations dans la page précédemment créée.
J´espère avoir été assez clair.
Dans mon site, une seule page contient le design: index.php
Si tu navigue sur mon site, tu verra qu´il y a toujours une variable ´to´ dans l´URL. C´est grâce à cette variable que le script de index.php sait quelle page secondaire il doit inclure dans sa cellule centrale.
Les pages secondaire contiennent seulement un script qui affiche ce qu´elle doit afficher, souvent en fonction d´un seconde variable passée par l´URL.
Donc en fait, un lien pointe toujours vers index.php mais avec un ´to´ différent. Simple non ?
arf, trop tard...
Merci captain et Blawk, donc le contenu des autres pages se trouve dans la bdd, mais si mon texte de la bdd est " blablabla, blablabla", et que le premier mot je veux l´affciher en bleu et le deuxième en rouge, comment on fait vu que la table ne contient que du texte. ![]()
Là, ça devient plus complexe
Tu as deux solutions :
La première :
séparer tous tes enregistrements en plusieurs blocs.
C´est à dire que les contenus de toutes les pages seront séparés en un bloc bleu et un bloc rouge.
La deuxième est de mettre du code HTML dans ton enregistrement de base de données.
Pas con, hein ? ; )
Mais quel est l´interet de faire des liens comme ça ?
Non, pas forcement dasn la BdD. Les autre pages contiennent les script qui gère telle ou telle partie du site.
Par exemple ma page nws.php est chargée d´afficher les news: elle fait une reqète pour récupérer les news qui l´intéresse ( différentes selon les pages) puis traite les données pour les mettre dasn des tableaux.
Donc quand je vais sur index.php?to=nws, la page index.php s´aproprie les script de nws.php et le mets la ou j´ai mis l´include. Les news sont donc affiché sur la page index.php.
Mais les pages secondaire comme nws.php n´ont pas comme seule possibilité de receuillir puis traiter les infos d´un BdD, ça peut être tout ce que contient une page normale.
Donc il n´y pas qu´une seule page gabarit ?
Si.
Je vous renvoie à ce tutorial. Au niveau propreté du code, ça m´a pas l´air d´être terrible mais c´est le principe.
http://www.phpdebutant.com/article68.php
C´est bizzare, mais je comprends pas fraiment le principe ![]()
Exercice:
Dasn ta petite tête, essaie d´imaginer une manière d´organiser ton site qui permets les chose suivantes:
. 1 seul gabarit pour tout le site. Si le design doit être modifié, la modification du gabarit doit suffire.
. Indépendance des script. La structure générale du site doit pouvoir être complètement modifiée en 10 minute ( encapsulation).
. Facilité de mise en oeuvre.
Ok, donc par exemple j´ai une page index.php, et donc mes liens à droite et chaque lien pointe vers un tuple de la bdd. Et quand on clique on affcihe ce qui est dans la bdd en face du tuple au milieu de la page.
C´est ça ?