Forum » Server-Side scripting » Smarty + mod-rewrite
devow.nl
Berichten: 1592
avatar
Offline Stuur privebericht
Hallo allemaal,

Ik heb twee vragen, de eerste is als volgt:
ben bezig om met smarty te leren werken. Nu is het alleen zo, dat ik eerst alles wil aanmaken voordat de layout tot stand komt.

Dus eerst de tekst maken, en dan pas het aanroepen van de pagina's.

Maar nu heb ik content.tpl, maar wanner ik dan:

Code | Selecteer Alles
minimaliseren
1
2
3
$smarty->assign("content","Hallo dit wordt    content");}

$smarty->assign("content","Hallo dit wordt content");


Wil ik dat er 2 keer de gehele style die bij content hoort wordt weergegeven (dus als mijn content bijv 4 keer dezelfde style nodig heeft, dat die gewoon wordt aangemaakt.

De 2e vraag is, hoe creëer ik .html pagina's zoals hier, maar dat het wel gewoon .php pagina's zijn.

Hoe moet dat via mod rewrite.

Hopelijk kunnen jullie mij hiermee helpen.
15-12-2010 14:33
Dit topic is 466 keer bekeken door 67 verschillende leden
Reacties op: "Smarty + mod-rewrite"
1 | 2 Volgende pagina
Hardstyle
Berichten: 225
avatar
Offline Stuur privébericht
In je .htaccess

Code | Selecteer Alles
minimaliseren
1
AddType application/x-httpd-php .php .htm .html


Dan functioneert een .html & .htm als een php bestand.

15-12-2010 14:35
Luc
devow.nl
Berichten: 1592
avatar
Offline Stuur privébericht
Ik krijg dan een omleidingslus?

Code | Selecteer Alles
minimaliseren
1
2
3
4
5
6
7
8
9
10
11
12
13
14
RewriteEngine On
RewriteBase 

AddType application/x-httpd-php .php .htm .html

# Bestaande bestanden of mappen uitsluiten 
RewriteCond %{REQUEST_FILENAME} -[NC,OR] 
RewriteCond %{REQUEST_FILENAME} -[NC

RewriteRule ^(.*?)$ $[L


# Overige RewriteRules onder deze regel

RewriteRule (.*) profiel.php?name=$[QSA,L]
15-12-2010 14:47
Hardstyle
Berichten: 225
avatar
Offline Stuur privébericht
Wat voor pagina's wil je nou gebruiken?

website.nl/contact/

of

website.nl/contact.html (dat je php kan gebruiken in een html bestand?)
15-12-2010 14:51
Luc
devow.nl
Berichten: 1592
avatar
Offline Stuur privébericht
Ik wil gebruiken dat het net als hier, altijd .html is, alleen dan dus gewoon .php paginas zijn.

dus: http://www.site.nl/contact.html of http://www.site.nl/luc.html (alleen is luc.html dus eigenlijk profiel.php?name=luc)
15-12-2010 14:55
Hardstyle
Berichten: 225
avatar
Offline Stuur privébericht
Ik kan je hier niet verder mee helpen, want dat weet ik niet.
Het enige waarvan ik zeker ben is dat je zo een html bestand kan laten parsen als een php bestand.

Code | Selecteer Alles
minimaliseren
1
AddType application/x-httpd-php .php .htm .html
15-12-2010 14:57
Luc
devow.nl
Berichten: 1592
avatar
Offline Stuur privébericht
internal server error (500) oneindige lus
15-12-2010 14:59
Hardstyle
Berichten: 225
avatar
Offline Stuur privébericht
Dat komt misschien omdat dat andere wat er in je .htaccess staat een conflict veroorzaakt.
15-12-2010 15:01
Eigenaar DiMoWeb
Berichten: 2399
avatar
Offline Stuur privébericht
Je hebt hier 2 vragen en dat is verwarrend, je gaat maar half geholpen worden zo ;-)
In het vervolg best 2 aparte topic's voor 2 andere zaken.

Betreffende je eerste vraag: ik versta je opzet niet echt.
Als je meerdere zaken wil toevoegen aan "content", dan kun je dat bijvoorbeeld als volgt doen:

Code | Selecteer Alles
minimaliseren
1
2
3
$content="Hallo dit wordt    content";
$content.="Hallo dit wordt content";
$smarty->assign("content",$content);

Wat je dan doet is eerst alles in 1 variabele steken en dan pas nadien alles toewijzen aan de smarty variabele genaamd content.

Er is ook zo iets als $smarty->addInfo, maar die ken ik niet vanbuiten.

Dit is een deel uit onze htaccess:
Code | Selecteer Alles
minimaliseren
1
2
3
4
RewriteEngine On
RewriteCond 
%{REQUEST_FILENAME} !-
RewriteCond 
%{REQUEST_FILENAME} !-
RewriteRule 
^([A-Za-z0-9_-]*).html?$ index.php?p=$[L]
15-12-2010 20:13
Webdeveloper & Programmeu
Berichten: 1000
avatar
Offline Stuur privébericht
Zover ik weet werk je niet met een .= maar met array!

voorbeeld:
Code | Selecteer Alles
minimaliseren
1
$smarty->assign(array("sda" => 'aa'"test" => 'test'"content" => $content));


gaat even om het idee weet niet precies of het zo werkt bij smarty ligt aan de opbouw van het template systeem!
15-12-2010 22:43
thexeroxprojects.be
Berichten: 352
avatar
Offline Stuur privébericht
De methode van K.Rens is de makkelijkste (naar wat ik kan afleiden wat je wil doen)
Als je deze methode gebruikt krijg je als resultaat:
Code | Selecteer Alles
minimaliseren
1
Hallo dit wordt    contentHallo dit wordt content


Zoals NielsB het doet gaat het ook; Wat je dan moet doen in de tpl file is hetvolgende:

Code | Selecteer Alles
minimaliseren
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<html>
<
head></head>
<
body>

...

{
content.sda}

{
content.test}

...

</
body>
</
html>


Dit geeft als resultaat:

Code | Selecteer Alles
minimaliseren
1
2
aa
test


Hopelijk ben je hier iets mee
15-12-2010 23:08
Reageer op: "Smarty + mod-rewrite"
1 | 2 Volgende pagina
Je kan niet reageren omdat je niet bent ingelogd. Inloggen of Aanmelden