login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Smarty hoeANDwat?

Offline roy - 10/10/2007 15:43
Avatar van royPHP gevorderde Beste Sitemasters,

Voor zover ik begrijp kan je het volgende met Smarty doen:
- Je include een apart PHP bestand waarin je PHP-scripts uitvoert, doe uitvoer daarvan sla je op in een array en laar je vervolgens op je Smarty pagina zien.

Dit gaat heel goed als je een vaste resultset heb, Maar hoe gaat dat in zijn werk als je een variabele in je query verwerkt?


De tutorial hier op sitemasters vind ik een beetje simpel, zit weinig diepgang in... De site van Smarty is weer heel erg complex..
Zijn er meer tutorials of andere manieren om uitleg te krijgen?


Met vriendelijke groeten,
Roy de Kleijn

18 antwoorden

Gesponsorde links
Offline tbsites - 10/10/2007 15:48
Avatar van tbsites Onbekend dat kan niet wel kun je het zo doen:

Je zet: {include file="arrey.php?is=je naam van je arrey"} op de tpl pagina en in arrey.php zet je:

  1. <?php
  2. $n_v_d_a = $_GET['is'];
  3. echo $n_v_d_a;
  4. ?>
Offline roy - 10/10/2007 15:50
Avatar van roy PHP gevorderde Dus het maken van een dynamische pagina kan dus niet meer goed?
Offline tbsites - 10/10/2007 15:51 (laatste wijziging 10/10/2007 15:54)
Avatar van tbsites Onbekend neen in een tpl bestand kan dat niet.

EDIT: die code hierboven werkt niet omdat ik effe niet goed heb nagedacht!
Offline roy - 10/10/2007 15:56
Avatar van roy PHP gevorderde wat zijn dan de voordelen van een template engine?
Offline Koen - 10/10/2007 15:57
Avatar van Koen PHP expert
tbsites schreef:
dat kan niet wel kun je het zo doen:

Je zet: {include file="arrey.php?is=je naam van je arrey"} op de tpl pagina en in arrey.php zet je:

[..code..]

Het is 'array' en niet 'arrey'.
Offline tbsites - 10/10/2007 15:59
Avatar van tbsites Onbekend ja typfoutje maar dit zal het wel doen:

{include file="array.php?is=je naam van je arrey"}
array.php
  1. <?php
  2.  
  3. $n_v_d_a = $_GET['is'];
  4. echo $$n_v_d_a;
  5. ?>
Offline ArndJan - 10/10/2007 16:05 (laatste wijziging 10/10/2007 16:05)
Avatar van ArndJan PHP interesse
  1. echo $n_v_d_a;

i.p.v.
tbsites schreef:
echo $$n_v_d_a;
Offline roy - 10/10/2007 16:06 (laatste wijziging 10/10/2007 16:22)
Avatar van roy PHP gevorderde dus een variabele WHERE kan je niet meer maken?

dus je moet gaan filteren op een array?
Offline tbsites - 10/10/2007 16:08
Avatar van tbsites Onbekend @ArndJan nee hoor. Als je $naam wilt echo'en dan moet de echo er zo: $$n_v_d_a uitzien en de link array.php?is=naam
Offline roy - 10/10/2007 16:47
Avatar van roy PHP gevorderde zijn er nog mensen die me kunnen helpen? met het gebruik van deze template engine
Offline tbsites - 10/10/2007 16:49
Avatar van tbsites Onbekend
roy schreef:
zijn er nog mensen die me kunnen helpen? met het gebruik van deze template engine


Dit mag volgens mij niet.

Wat je het best kan doen gewoon op de plaatsen waar je het wilt hebben gewoon een include zetten.
Offline Button - 10/10/2007 17:07
Avatar van Button PHP ver gevorderde "mag niet" is misschien al veel gezegd, maar je kan beter eerst zelf nog wat zoeken, ik ben er zeker van dat je googled, je nog verschillende tutorials over smarty vindt..
Offline roy - 10/10/2007 17:09
Avatar van roy PHP gevorderde dat valt helaas tegen...

Maja sitemasters is niet altijd even hulpzaam dus dit topic mag gesloten worden
Offline tbsites - 10/10/2007 18:04
Avatar van tbsites Onbekend druk dan op de "opgelost kno
Offline cloudstrife - 10/10/2007 18:10
Avatar van cloudstrife PHP beginner Alles wat je met een gewone php pagina weergeeft kan je ook met smarty templates gaan weergeven, waarom zou je het anders gaan gebruiken in volledige applicaties die volgens het mvc-pattern werken?

Ik heb al redelijk wat zitten testen met smarty en tot hiertoe nog nooit iets tegen gekomen dat ik vroeger met gewone php code kon en dat ik niet via smarty kan...

Ik snap alleen je vraag niet goed, je weet toch steeds wat je gaat tonen op het scherm? Dus kan je toch altijd perfect je variabelen invullen en doorgeven aan smarty?
Offline timmie_loots - 10/10/2007 18:13
Avatar van timmie_loots PHP gevorderde Naar tbsites hoef je in dit geval duidelijk dus ook niet te luisteren, naast slechte adviezen geeft hij ook nog eens ronduit onjuiste informatie.

Wat je precies wilt is in principe heel goed mogelijk, de manier van tbsites gaat niet werken, maar slaat ook nog eens nergens op. Include wordt in Smarty niet gebruikt om PHP files te includen, maar om andere template files te includen.

Maargoed, terug naar wat jij wilt. Jij wilt graag informatie laden uit de database en deze in je template verwerken. Dat kun je doen door gewoonweg de code uit het andere PHP bestand te nemen (of te includen met behulp van include_once) en de variabele die daar uit komt te assignen aan de template, zo:

  1. <?php
  2.  
  3. // Include het andere script, ik ga er even van uit dat die een variabele
  4. // geeft met de naam $var
  5. include_once "bestand.php";
  6.  
  7. // Assign de variabele (ik ga er van uit dat het Smarty object in $tpl zit)
  8. $tpl->assign('bestand_variabele', $var);
  9.  
  10. ?>


In het template bestand wat je dan laad kun je vervolgens bestand_variabele gebruiken om de informatie uit te lezen.

Om een duidelijkere en toepasselijkere uitleg te krijgen moet je even het script posten dat je in de template wilt verwerken.
Offline roy - 11/10/2007 13:01
Avatar van roy PHP gevorderde Hoe begin je met een smarty website?
Welke bestanden moet je aanmaken?
Offline Flex1986 - 11/10/2007 13:43 (laatste wijziging 11/10/2007 13:43)
Avatar van Flex1986 Gouden medaille

Senior Member
Als je wil weten hoe je ergens mee wil beginnen dan is de documentatie die erbij staat wel handig.

http://smarty.php.net/

Kijk onder Quick Install
Documentation
Sample Application

Denk dat je daar wel wat aan zal hebben.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.209s