login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Template :: Geen weergave van var's (Opgelost)

Offline Rifke - 27/06/2006 16:22 (laatste wijziging 27/06/2006 16:34)
Avatar van RifkeNieuw lid Ik heb dus mijn site opgebouwed uit templates, maar nu loopt het ergens stug.
Als een gebruiker op de submit knop drukt (alle velden in gevult) wordt het geheel opgeslagen in de de database.
Als een gebruiker op de submit knop druk (een veld vergeten) dan krijgt hij/zij de melding dat veld x niet is ingevult. Maar tevens verwijnt de inhoud van de andere velden.

Dit zou niet mogen omdat ik in de code heb gedefineerd dat de post velden terug ingevult moeten worden en dat doet hij dus niet.

Template:
  1. <!-- START BLOCK : ADD -->
  2. <td class="privpolice"> <h1><a href="?page=gal">Gallery</a> > {PAGE} </h1>
  3. Allowed images:
  4. <!-- START BLOCK : EXTENSIONS -->
  5. {exe}
  6. <!-- END BLOCK : EXTENSIONS -->
  7. <br \>
  8. <!-- START BLOCK : AddEmpty -->
  9. {AddEmpty}
  10. <!-- END BLOCK : AddEmpty -->
  11. <br \>
  12. <form action="{ACTION}" method="post" enctype="multipart/form-data" \>
  13. <table width="100%" border="0" cellspacing="2" cellpadding="2">
  14. <tr>
  15. <td width="30%">Picture Name:</td>
  16. <td><input name="name" type="text" id="name" value="{name}" {AddDisabled} \></td>
  17. </tr>
  18. <tr>
  19. <td>Picture Link:</td>
  20. <td><input name="link" type="text" id="link" value="{link}" {AddDisabled} \></td>
  21. </tr>
  22. <tr>
  23. <td>Picture Info:<br>
  24. Bbcode : <font color="#00FF00">Enabled</font></td>
  25. <td><textarea name="info" cols="45" rows="5" id="info" {AddDisabled} >{info}</textarea></td>
  26. </tr>
  27. <tr>
  28. <td>&nbsp;</td>
  29. <td><input name="Add" type="submit" id="Add" value="Add picture" {AddDisabled} \></td>
  30. </tr>
  31. </table>
  32. </form>
  33. </td>
  34. <!-- END BLOCK : ADD -->


Nu mijn php code:
  1. <?php
  2. $tpl = new TemplatePower("templates/gallery.tpl");
  3. $tpl->prepare();
  4.  
  5. if ($_SERVER['REQUEST_METHOD'] == "POST" && isset($_POST['Add']) )
  6. {
  7. $sName = trim($_POST['name']);
  8. $sLink = trim($_POST['link']);
  9. $sInfo = trim($_POST['info']);
  10. {
  11. $sName = addslashes($sName);
  12. $sLink = addslashes($sLink);
  13. $sInfo = addslashes($sInfo);
  14. }
  15. $tpl->assign(array( "name" => $sName,
  16. "link" => $sLink,
  17. "info" => $sInfo
  18. ));
  19.  
  20. }
  21. $tpl->printToScreen();
  22. ?>


Dit is het gedeelte wat hij niet doet.

[ Opgelost ] ...

Volgens mij was het teveel aan gegevens !
Oplossing :

template:
  1. Allowed images:
  2. {exe}
  3. <br \>
  4. <!-- START BLOCK : AddEmpty -->
  5. {AddEmpty}
  6. <!-- END BLOCK : AddEmpty -->


php bestand:
  1. <?php
  2. $aToegestandeExtenties = array('jpg', 'gif', 'png', 'bmp', 'tif', 'jpeg');
  3.  
  4. $i = count($aToegestandeExtenties);
  5. for ($x = 0; $x<$i; $x++) {
  6. $svar = $svar . ' .'.$aToegestandeExtenties[$x];
  7. }
  8. $tpl->assign("exe" ,$svar);
  9. // hier de volgende code die stond beschreven. (boven)
  10. ?>

1 antwoord

Gesponsorde links
Offline Thomas - 27/06/2006 16:40
Avatar van Thomas Moderator Jouw probleem (templatevariabelen die leeg blijven) wordt meestal veroorzaakt doordat je in het verkeerde BLOCK bezig bent - je bent dan "op het verkeerde block-niveau" aan het werken zogezeid (scope?).
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.195s