Bekijk Volledige Versie : [php] tekst vervangen
Hallo allemaal,
Ik ben zojuist begonnen met PHP, en dan met name includes. Dit gaat allemaal
prima, ik heb echter een vraagje:
Mijn pagina's bestaan allemaal uit dezelfde opmaak, met eigenlijk alleen de
tekst in de middelste cel die verschilt. Nu heb ik gehoord dat er een
systeem bestaat waarmee je die tekst dus kunt wijzigen zonder iedere keer
een hele nieuwe pagina te maken.
Ik heb de volgende code gevonden:
<?php
if($id == "home") {
include("home.php");
}
else {
if($id == "about") {
include("about.php");
}
if(file_exists("$id.php")) {
include("$id.php");
}
}
?>
Moet ik nu alle teksten in een database zetten en die een id geven? Zo ja,
hoe doe ik dat precies?
Alvast bedankt!
--
Rick van Haasteren
www.websitemaken.be, alles voor de webmaster
info@websitemaken.be
Daniel Tryba
21/03/03, 11:50
Rick <r.haasteren@planeet.nl> wrote:
> Mijn pagina's bestaan allemaal uit dezelfde opmaak, met eigenlijk alleen de
> tekst in de middelste cel die verschilt. Nu heb ik gehoord dat er een
> systeem bestaat waarmee je die tekst dus kunt wijzigen zonder iedere keer
> een hele nieuwe pagina te maken.
Dat heet templates, voor PHP is smarty een goed voorbeeld
(http://smarty.php.net/).
> Ik heb de volgende code gevonden:
[knip]
> if(file_exists("$id.php")) {
> include("$id.php");
> Moet ik nu alle teksten in een database zetten en die een id geven?
Nee, bovenstaande werkt met files (genaamd "$id.php").
--
Daniel Tryba
Daniel Tryba wrote:
> Rick <r.haasteren@planeet.nl> wrote:
>> Mijn pagina's bestaan allemaal uit dezelfde opmaak, met eigenlijk
>> alleen de tekst in de middelste cel die verschilt. Nu heb ik gehoord
>> dat er een systeem bestaat waarmee je die tekst dus kunt wijzigen
>> zonder iedere keer een hele nieuwe pagina te maken.
>
> Dat heet templates, voor PHP is smarty een goed voorbeeld
> (http://smarty.php.net/).
>
>> Ik heb de volgende code gevonden:
> [knip]
>> if(file_exists("$id.php")) {
>> include("$id.php");
>> Moet ik nu alle teksten in een database zetten en die een id geven?
>
> Nee, bovenstaande werkt met files (genaamd "$id.php").
Oke, daar wil ik nu mee gaan werken, maar hier loop ik tegen een probleem
aan:
<?php
if($id == "cursus") {
include("cursus.htm");
}
else {
if($id == "afbeeldingen") {
include("afbeeldingen.htm");
}
else {
if($id == "html") {
include("html.htm");
}
if(file_exists("$id.php")) {
include("$id.php");
}
}
?>
Als ik dus meer dan 2 files wil gebruiken, krijg ik een parse-error.
Is het onmogelijk om meer dan 2 files te gebruiken, of moet ik dan in het
script iets wijzigen?
Alvast bedankt!
--
Rick van Haasteren
www.websitemaken.be, alles voor de webmaster
info@websitemaken.be
Jaap-Andre de Hoop
21/03/03, 14:35
In article <b5evn8$9is$1@reader11.wxs.nl>, "Rick" <r.haasteren@planeet.nl> wrote:
>> Nee, bovenstaande werkt met files (genaamd "$id.php").
>Oke, daar wil ik nu mee gaan werken, maar hier loop ik tegen een probleem
>aan:
>
><?php
>if($id == "cursus") {
>include("cursus.htm");
>}
>else {
>if($id == "afbeeldingen") {
> include("afbeeldingen.htm");
>}
>else {
>if($id == "html") {
> include("html.htm");
>}
>if(file_exists("$id.php")) {
>include("$id.php");
>}
>}
>?>
>
>Als ik dus meer dan 2 files wil gebruiken, krijg ik een parse-error.
>Is het onmogelijk om meer dan 2 files te gebruiken, of moet ik dan in het
>script iets wijzigen?
parse error geeft aan dat je syntactisch iets fout gedaan hebt
(puntkommma vergeten, quotes wel geopend niet gesloten, meer haakjes of
accolades openen dan sluiten (of andersom) verkeerd aantal variabelen
voor commando etc etc etc.
Als ik jouw code even snel bekijk ligt een probleem bij de accolades '{'
volgens mij open je er meer dan dat je sluit.
Door beter in te springen zie je wrs snel waar het probleem ligt
(wrs bij eerste else, maar weet niet precies hoe of wat je wilt bereiken,
maar kijk ook eens bij de functie elseif (www.php.net/elsif ?) is wrs
voor jou ook bruikbaar en wordt de code beter leesbaar en sneller.
Jaap-Andre
Daniel Tryba
21/03/03, 14:50
Jaap-Andre de Hoop <doemaarietsanders@data-assist.nl> wrote:
> Door beter in te springen zie je wrs snel waar het probleem ligt
> (wrs bij eerste else, maar weet niet precies hoe of wat je wilt bereiken,
> maar kijk ook eens bij de functie elseif (www.php.net/elsif ?) is wrs
> voor jou ook bruikbaar en wordt de code beter leesbaar en sneller.
Een switch/case zou in dit geval nog een stukje overzichtelijker zijn.
(http://php.net/switch)
--
Daniel Tryba