<title> veranderen</title>
Ik wil de titel veranderen van mijn HTML, de <title> tag. Nou weet ik dat er meerdere manieren zijn:
1:
Code (php)
1
2
3
4
5
2
3
4
5
//Denk even in dat ik de topic naam heb opgehaald uit de database
<?php $topic = "Ik zit vast met PHP" ?>
<html>
<head><title>Website naam - Topic: <?php echo $topic; ?></title></head>
</html
<?php $topic = "Ik zit vast met PHP" ?>
<html>
<head><title>Website naam - Topic: <?php echo $topic; ?></title></head>
</html
Manier 2: de manier die ik van een artikel van onze HTML/CSS pro heb geleerd wouter:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
//Denk even in dat ik de topic naam heb opgehaald uit de database
<html>
<head>
</head>
<body>
//Weer even denken dat ik waardes uit de DB heb gehaald
<?php $topic = "Help ik zat vast met iets";
echo '<title>'.$topic.'</title>';
?>
</body>
</html
<html>
<head>
</head>
<body>
//Weer even denken dat ik waardes uit de DB heb gehaald
<?php $topic = "Help ik zat vast met iets";
echo '<title>'.$topic.'</title>';
?>
</body>
</html
Bij manier 2 is het zo dat de title niet in de head staat, maar wel als <title> gezien word en dus ook de pagina de titel naam krijgt. Maar wat is nou de beste manier? Manier 2 ziet er namelijk niet uit in je bron code!
Zijn er nog andere opties?
Groet, Donny
Tsja, ik weet niet beter dat het altijd in de head hoort te staan.
Dan lijkt mijn manier 1 de bedoeling. Neem aan dat je bij manier 2 foutmeldingen zult krijgen bij je validatie van je HTML code
Bas IJzelendoorn op 05/09/2013 16:40:25:
Tsja, ik weet niet beter dat het altijd in de head hoort te staan.
Jup. Zet het in je head en dat werkt het (als je data klopt..)
Gewijzigd op 05/09/2013 16:46:00 door Victor G
title hoort in de head te staan, nergens anders.
Is er niet bijvoorbeeld een class aan te maken die dat regelt? Dat je bijvoorbeeld in je head echo $title zet en de waarde in de body ophaald?
Als je de waarde in de body ophaalt dan komt hij nooit van ze lang zal ze leven boven in de head te staan omdat dat al is opgebouwd op dat moment. Als je ophaalt al voor je HTML tag
Wouter, ik had eens een keer een artikel gelezen over tags en dingen. Weet even zo snel niet meer welke, als ik em zie weet ik het weer.
-----
Laat me even speculeren waarom je overwoog het in de <body> te zetten:
Af en toe zetten we <script> in de <body>. Vooral dan wanneer we jQuery laden.
Eigenlijk zien we al die <script> -elementen ook allemaal liever in de <head>. Maar: dan dan duurt het langer om de pagina te laden.
HTML laadt alles van boven naar onder. Dus, als het bv. drie seconden duurt om om jQuery te laden, Zal het drie seconden langer duren vooraleer je iets zichtbaars ziet.
Als je die scripts onderaan de body zet, worden eerst alle zichtbare dingen geladen. Die scripts laden dan ook nog drie seconden, maar de pagina is ondertussen al zichtbaar; het stoort dus niet zo erg voor de gebruiker.
(als die speculatie fout is ... tja)
Gewijzigd op 05/09/2013 16:58:22 door Kris Peeters
Kris Peeters op 05/09/2013 16:57:13:
Laat me even speculeren waarom je overwoog het in de <body> te zetten:
Af en toe zetten we <script> in de <body>. Vooral dan wanneer we jQuery laden.
Af en toe zetten we <script> in de <body>. Vooral dan wanneer we jQuery laden.
Ik heb een keer een artikel gelezen van Wouter, weet even niet zo snel waar en hoe, maar het kwam erop neer dat chrome de elementen herkent en ze zelf goed positioneert indien fout geplaatst... Dus als je de title onder de body zou zetten, zegt chrome "He! Die moet daar niet maar die komt hier!".
Het had een bepaalde naam, weet het even niet zo snel meer... Maar goed, de antwoorden zijn duidelijk :)
Quote:
weet even niet zo snel waar en hoe, maar het kwam erop neer dat chrome de elementen herkent en ze zelf goed positioneert indien fout geplaatst... Dus als je de title onder de body zou zetten, zegt chrome "He! Die moet daar niet maar die komt hier!".
Ah, dat is http://wouterj.nl/2012/03/html/min-html-boilerplate/
Dan heb je het verkeerd begrepen. Chrome plaatst sommige elementen (namelijk html, head en body) wanneer deze niet aanwezig zijn. Wanneer deze niet aanwezig zijn wordt er gekeken welke elementen er in de head horen en na het eerste element dat in de body hoort wordt de head afgesloten. In dit geval zijn deze head en body wel aanwezig en werkt het dus niet.
Even voor de zekerheid, het weghalen van deze tags is niet de oplossing :)
Daar hoort nog een if(in_array()) bij.
Laat nooit iets afhangen van $_GET of $_POST zonder beveiliging.
Gewijzigd op 05/09/2013 17:16:40 door Kris Peeters
Wouter J op 05/09/2013 17:15:24:
Ah, dat is http://wouterj.nl/2012/03/html/min-html-boilerplate/
Dan heb je het verkeerd begrepen. Chrome plaatst sommige elementen (namelijk html, head en body) wanneer deze niet aanwezig zijn. Wanneer deze niet aanwezig zijn wordt er gekeken welke elementen er in de head horen en na het eerste element dat in de body hoort wordt de head afgesloten. In dit geval zijn deze head en body wel aanwezig en werkt het dus niet.
Even voor de zekerheid, het weghalen van deze tags is niet de oplossing :)
Quote:
weet even niet zo snel waar en hoe, maar het kwam erop neer dat chrome de elementen herkent en ze zelf goed positioneert indien fout geplaatst... Dus als je de title onder de body zou zetten, zegt chrome "He! Die moet daar niet maar die komt hier!".
Ah, dat is http://wouterj.nl/2012/03/html/min-html-boilerplate/
Dan heb je het verkeerd begrepen. Chrome plaatst sommige elementen (namelijk html, head en body) wanneer deze niet aanwezig zijn. Wanneer deze niet aanwezig zijn wordt er gekeken welke elementen er in de head horen en na het eerste element dat in de body hoort wordt de head afgesloten. In dit geval zijn deze head en body wel aanwezig en werkt het dus niet.
Even voor de zekerheid, het weghalen van deze tags is niet de oplossing :)
AMEN! Dat is het! Die ga ik nooit meer vergeten.
Wouter J op 05/09/2013 17:15:24:
Ah, dat is http://wouterj.nl/2012/03/html/min-html-boilerplate/
Dan heb je het verkeerd begrepen. Chrome plaatst sommige elementen (namelijk html, head en body) wanneer deze niet aanwezig zijn. Wanneer deze niet aanwezig zijn wordt er gekeken welke elementen er in de head horen en na het eerste element dat in de body hoort wordt de head afgesloten. In dit geval zijn deze head en body wel aanwezig en werkt het dus niet.
Even voor de zekerheid, het weghalen van deze tags is niet de oplossing :)
Quote:
weet even niet zo snel waar en hoe, maar het kwam erop neer dat chrome de elementen herkent en ze zelf goed positioneert indien fout geplaatst... Dus als je de title onder de body zou zetten, zegt chrome "He! Die moet daar niet maar die komt hier!".
Ah, dat is http://wouterj.nl/2012/03/html/min-html-boilerplate/
Dan heb je het verkeerd begrepen. Chrome plaatst sommige elementen (namelijk html, head en body) wanneer deze niet aanwezig zijn. Wanneer deze niet aanwezig zijn wordt er gekeken welke elementen er in de head horen en na het eerste element dat in de body hoort wordt de head afgesloten. In dit geval zijn deze head en body wel aanwezig en werkt het dus niet.
Even voor de zekerheid, het weghalen van deze tags is niet de oplossing :)
Ik heb de beveiliging al in de index pagina zitten doormiddel van switch en break
Code (php)
Dus om de title op te roepen roep ik niet content/page1.php op maar gewoon page1
Ja. Met een switch of in_array zit je goed.