[PHP] Automatische url generatie uitsplitsen

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik heb een stukje php waarin het volgende gebeurt:

Een aantal types (zeg type A, B, C, D en E) en het aantal bestanden in dat type worden opgeroepen en weergegeven op de webpagina, waarbij het type in linkvorm wordt neergezet.
De code is als volgt:
<?php
foreach($types AS $t) {
if ($types_total[$t->id]->total > 0) {
?>
<div class="con_types3">
<a class="types_title" href="<?php echo sefRelToAbs("index.php?option=com_hotproperty&task=viewtype&id=$t->id&Itemid=$Itemid"); ?>"><h1><?php echo $t->name ."</h1></a>(".$types_total[$t->id]->total.")"; ?><br />
Het dikgedrukte geeft aan waar het type wordt aangeroepen en waar het aantal van dat type wordt aangeroepen.
Zoals je kan zien, wordt het type op mijn site aangegeven in <H1> formaat.
Wat ik nou echter wil, is dat type A in <H1> wordt weergegeven en de andere types bijv. in <H5>.

Ik had al een volgend stukje code gemaakt:
<?php
if ($t->name == Type A) {
?>
<a class="types_title" href="<?php echo sefRelToAbs("index.php?option=com_hotproperty&task=viewtype&id=$t->id&Itemid=$Itemid"); ?>"> <?php echo $t->name ."</h1></a>(".$types_total[$t->id]->total.")"; { ?>
Dit werkt in zoverre dat behalve wat normaal wordt weergegeven, nu nogmaals type A wordt weergegeven, met het aantal erachter.

Wat ik nu nog moet hebben is de manier om de andere types ook te vermelden en de automatische generatie uit te zetten. Kan iemand me vertellen hoe dit moet? Ik heb heel weinig verstand van PHP, en ik heb al behoorlijk zitten ploeteren, maar kom er niet uit.

Als jullie willen weten om welke website het gaat om zo te kijken wat ik precies bedoel, dan zal ik het adres geven.

Bij voorbaat dank!

Acties:
  • 0 Henk 'm!

  • Equator
  • Registratie: April 2001
  • Laatst online: 09-09 15:29

Equator

Crew Council

#whisky #barista

switch()

PHP:
1
2
3
4
5
6
7
8
9
10
switch($type)
{
    case "type A":
        echo "<h1>blaat Type A</h1><br />";
    break;

    case "type B":
        echo "<h1>boehoe Type B</h1><br />";
    break;
}

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Geweldig!

Moest nog het e.a. aanpassen, maar het werkt! Thanks! _/-\o_

Acties:
  • 0 Henk 'm!

Verwijderd

Wat hier wel mee te maken heeft, als je je code en je layout allemaal in 1 file gaat stoppen, wordt het na een tijdje nogal een chaos. Zorg dat je je layout en code scheidt, bijv. d.m.v. een template-engine die de layout verzorgt.

Acties:
  • 0 Henk 'm!

  • JHS
  • Registratie: Augustus 2003
  • Laatst online: 16-09 16:02

JHS

Splitting the thaum.

Verwijderd schreef op donderdag 27 oktober 2005 @ 18:21:
Wat hier wel mee te maken heeft, als je je code en je layout allemaal in 1 file gaat stoppen, wordt het na een tijdje nogal een chaos. Zorg dat je je layout en code scheidt, bijv. d.m.v. een template-engine die de layout verzorgt.
Het is dan, in mijn ogen, handiger PHP te gebruiken als template engine, daar is 'ie erg geschikt voor. Je kan dan imo beter al je variabelen genereren in je code deel, en die outputten naar een bijbehorend template.php bestand, die dan de code laat zien. Zo scheid je de logica code van je presentatie code. Waar je meer mee opschiet dan een additionale template engine, want daar heb je óf teweinig mogelijkheden, óf kan je net zo goed PHP gebruiken. Je kan misschien zeggen dat het helpt je code te scheiden, maar zelfdiscipline en wat gezond verstand is veel effectiever :) .

DM!


Acties:
  • 0 Henk 'm!

Verwijderd

Tja, dat is je eigen keuze, of je kiest voor een php-template of een template-engine. Ik vind de standaard methoden in smarty handig, waarbij je bijv. met 1 regel een dropdownlist kan genereren.
Pagina: 1