Beste scripters, ik ben een beginnende phper en ik zit met iets dat ik maar niet opgelost krijg nl.:


    echo '     	<div id="artikel_titel">
			' . $row['topic'] . '
	 	</div>
		<div id="artikel_datum">
			' . $row['datum'] . '
	   	</div>
	   	<div id="artikel_bericht">
			' . $row['bericht'] . '
	   	</div>
	   	<div id="artikel_categorie">
			if ($categorie == 1) {
			   $cat = "Algemeen";
			}
			if ($categorie == 2) {
			   $cat = "Video";
			}
			if ($categorie == 3) {
			   $cat = "Links";
			}
			Categorie: ' . $cat . ' | Gepost door: ' . $row['naam'] . '
	   	</div>
   	   	<p />';


Dat IF-je komt dus gewoon als txt wat logisch is omdat het binne de echo staat... maar waar moet ik het zetten om te laten werken en niet als txt te verschijnen?

Ik hoop dat jullie me even weer op het jusite spoor kunnen brengen.

Bedankt op voorhand !
Je zou 2 dingen kunnen doen:

- Van tevoren die if-statements uitvoeren en daarmee $cat een waarde geven. Daarna kun je het hele blok in 1x echoen.
- Beginnen met echoen van het geheel. Op het punt van het if-statement de echo afsluiten, de waarde van $cat bepalen en daarna de rest echoen.
IK denk dat je het beste gewoon de eerste optie van Blanche kan doen. Gewoon even de if voor de echo zetten.
btw is het niet handiger om die if reeks door een switch statement te vervangen, nu zijn het er nog maar drie maar als het er meer worden kun je denk ik beter een switch gebruiken
Of een array, nog mooier:

<?php

$cats = array(
1 => 'Algemeen',
2 => 'Video\'s',
3 => 'Links'
);

echo $cats[$cat];

?>
Goeie opmerking van Freek. Ik zou echter kiezen voor een array, die is eenvoudiger te onderhouden:
<?
$aWaardes = array(1 => 'Algemeen', 'Video', 'Links'); // uitbreiden naar eigen inzicht

if(array_key_exists($categorie, $aWaardes){
$cat = $categorie;
}
else {
$cat = $aWaardes[1];
}
?>

Reageren