EDIT: Er is een update, het werkt wel maar volgens mij kan de code korter.
Zie de reactie hier onder voor mijn werkende code.
Ik ben bezig met een FAQ pagina maar het wil niet echt lukken.
Ik wil de volgende output kunnen maken: http://www.phpbb.com/phpBB/faq.php
Ik heb het geprobeert met sectoins en met foreach maar ik krijg niet de goed output.
Laat ik eerst even wat code posten:
FAQ.php
faq.tplPHP Code:
<?
define('IN_PHPDESK', true);
$root_path = './';
require_once($root_path . 'include/common.php');
lang('help_faq.php');
$smarty->assign('questions', $help);
/* dit was met sections
$i = 0;
$help_blocks = array();
foreach ($help as $help_ary)
{
if ($help_ary[0] == '--')
{
$tmp = array(
'C' => $help_ary[1],
);
$results[$i++] = $tmp;
continue;
}
$tmp = array(
'Q' => $help_ary[0],
'A' => $help_ary[1],
);
$results[$i++] = $tmp;
}
$smarty->assign('results', $results);
*/
$smarty->assign(array(
'INCL_TEMPLATE' => 'faq.tpl',
'PAGE' => 'Frequently Asked Questions',
));
require_once($config['PATH'] . '/include/output.php');
?>
help_faq.phpCode:{* Hier ergens de hoofdtabel met de vragen... *} {foreach name=faq item=cat from=$questions} Begintabel <br /> {foreach key=key item=item from=$cat} {$item}<br /> {/foreach} Einde tabel<br /> {/foreach}
Het is de bedoeling dat ik eerst een tabel heb met alle headers van de vragen en daarna tabellen met de vragen en andwoorden.PHP Code:
$help = array(
array(
0 => '--',
1 => 'Login and Registration Issues'
),
array(
0 => 'Why can\'t I login?',
1 => 'Have you registered? Seriously, you ......'
),
array(
0 => 'Why do I need to register at all?',
1 => 'You may not have too, it is up to ......'
),
array(
0 => '--',
1 => 'User Preferences and settings'
),
array(
0 => 'How do I change my settings?',
1 => 'All your settings (if you are registered) ......'
),
array(
0 => 'The times are not correct!',
1 => 'The times are almost certainly correct, however ......'
)
);
Elke headline van een tabel is gedefineerd met --.
Volgens mij kan ik dit het beste doen met foreach maar ik ben nog niet zo heel erg thuis er mee en het wil me niet echt lukken.
Ik heb het ook met sections geprobeert maar daar komt helemaal geen goede output uit.
Wie kan me helpen?
Met vriendelijke groet,
Robbert van den Berg
- Faq script met Smarty
-
18-11-2006, 11:32 #1
- Berichten
- 21
- Lid sinds
- 18 Jaar
Faq script met Smarty
Laatst aangepast door Robbert van den Berg : 18-11-2006 om 19:03
-
18-11-2006, 19:02 #2
- Berichten
- 21
- Lid sinds
- 18 Jaar
Ik heb nu het gewenste resultaat maar ik denk eigenlijk dat ik het een beetje omslachtig doe. Volgens mij kan me code veel korter en overzichtelijker.
Desnoods door wat meer via php te regelen.
Mijn code:
faq.php
PHP Code:<?
define('IN_PHPDESK', true);
$root_path = './';
require_once($root_path . 'include/common.php');
lang('help_faq.php');
$smarty->assign(array(
'INCL_TEMPLATE' => 'faq.tpl',
'PAGE' => 'Frequently Asked Questions',
'help' => $help,
));
require_once($config['PATH'] . '/include/output.php');
?>
Code:<a name="faqtop"></a> <table class="tablebg" width="600" cellspacing="1" cellpadding="3" border="0" align="center"> <tr> <th>{$PAGE}</th> </tr> <tr> <td class="row1"> {foreach from=$help key=k item=v name=faq} {if $v[0] eq '--' AND $smarty.foreach.faq.first eq '1'} <span class="gen"><b>{$v[1]}</b></span><br /> {elseif $v[0] eq '--' AND $smarty.foreach.faq.first eq ''} <br /> <span class="gen"><b>{$v[1]}</b></span><br /> {else} <span class="gen"><a href="#f{$smarty.foreach.faq.index}" class="postlink">{$v[0]}</a></span><br /> {/if} {/foreach} </td> </tr> <tr> <td class="cat" height="28"> </td> </tr> </table> <br clear="all" /> {foreach from=$help key=k item=v name=faq} {if $v[0] eq '--'} {if $smarty.foreach.faq.first ne '1'} </table> <br clear="all" /> {/if} <table class="tablebg" width="600" cellspacing="1" align="center"> <tr> <td class="cat" align="center"><h4>{$v[1]}</h4></td> </tr> {elseif $v[0] ne '--'} <tr> <td class="row1" valign="top"> <p><a name="f{$smarty.foreach.faq.index}"></a><b>» {$v[0]}</b></p> <p class="postbody">{$v[1]}</p> <p class="gensmall"><a href="#faqtop">Top</a></p> </td> </tr> {/if} {if $smarty.foreach.faq.last} </table> <br clear="all" /> {/if} {/foreach}
Wie kan me hier mee helpen?
Of kan het gewoon niet anders?
-
18-11-2006, 23:35 #3ManagedWPHosting.nl
- Berichten
- 1.487
- Lid sinds
- 18 Jaar
kijk eens naar de phpbb admin faq editor mod
daar kun je een heel eind mee komen.
-
19-11-2006, 10:57 #4
- Berichten
- 21
- Lid sinds
- 18 Jaar
Dit script wordt niet voor phpbb. Ik ben bezig met een eigen systeem in elkaar aan het zetten. En phpbb maakt geen gebruik van Smarty.
-
19-11-2006, 13:03 #5ManagedWPHosting.nl
- Berichten
- 1.487
- Lid sinds
- 18 Jaar
Origineel gepost door Robbert van den BergDit script wordt niet voor phpbb. Ik ben bezig met een eigen systeem in elkaar aan het zetten. En phpbb maakt geen gebruik van Smarty.
daar ben ik van op de hoogte, ik wees er alleen op dat die FAQ mod je kan helpen om te kijken hoe er met arrays en DB entries gewerkt wordt om dit
dynamisch te tonen aan de gebruiker.
-
19-11-2006, 14:36 #6
- Berichten
- 21
- Lid sinds
- 18 Jaar
Ik heb gekeken bij het orginele script van de faq maar daar wordt ik ook niet veel wijzer van.
Opzich het werkt nu wel maar ik vind de code niet echt netjes.
Ik denk dat ik het nu maar even zo laat en een andere keer ga kijken of ik het kan veranderen.
-
19-11-2006, 14:39 #7ManagedWPHosting.nl
- Berichten
- 1.487
- Lid sinds
- 18 Jaar
ik heb het ook niet over het orignele script maar over de admin faq mod:
http://david.smigit.com/mdd/?keyword...evelopment=yes
-
20-11-2006, 21:38 #8
- Berichten
- 21
- Lid sinds
- 18 Jaar
Origineel gepost door ramon finckenik heb het ook niet over het orignele script maar over de admin faq mod:
http://david.smigit.com/mdd/?keyword...evelopment=yes
Maar de mod bestaad uit ongeveer de zelfde code alleen nu haalt die het uit de database. Er zit weinig verschil tussen de orginele faq en de modificatie.
Maar in ieder geval bedankt!.
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic