PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Verzweigungs-Problem


AlexD
30.11.2005, 00:08:42
Hab noch eine Frage an Euch,

und zwar kann es vorkommen das ein Titel auf mehreren CD's drauf ist, sprich auf einer Maxi, Soundtrack und evtl. noch auf einem Sampler.

Dazu habe ich folgende Situation:
in einer Tabelle sind 'album_id', 'sampler_id', 'single_id' und 'soundtrack_id' gespeichert.
In einem Skript soll nun entschieden werden, wenn nur eine ID belegt ist ( ungleich 0) soll direkt die ensprechende PHP-Datei abgearbeitet werden, sind zwei oder mehr ID's ungleich Null, so soll ich die Wahl bekommen was ich mir anzeigen lassen möchte.

Bei zwei ID's hab ich noch kein Problem, da habe ich es so gelöst:
Leider sind es vier ID's und da weiß ich nicht wie ich das anstellen könnte.

if ($album_id !=0 && $sampler_id !=0) {
.
.
.
} else {
if ($album_id != 0){
require_once('album.php');
} elseif
($sampler_id != 0){
require_once('sampler.php');
} elseif
($soundtrack_id != 0){
require_once('soundtrack.php');
} elseif
($single_id != 0){
require_once('single.php');
}
}

Opendix
30.11.2005, 10:22:56
öhm jo... ich hab ma schnell ausprobiert... sollte so ähnlich funktionieren *g*

allerdings ist dieser lösungsweg (zu) umständlich fidne ich aber sollte gehen...

ich würde ein array mit 4 feldern machen:

$array = array(0,0,0,0);

wenn die id grösser 0 ist schreibe ich in das feld eine 1 ansonsten eine 0

also irgendwie so:

if($album_id > 0)
{
$array[0] = 1;
}
if($sampler_id > 0)
{
$array[1] = 1;
}
...

nun kannst du das irgendwie so machen:

if(array_sum($array) > 1)
{
//auswahl die du ausgeben willst
}
else
{
//Das entsprechend File einbeinden
if($array[0] == 1)
{
require_once('album.php');
}

}


bisschen kompliziert (für so eine einfach aufgabe :P) aber sollte meines erachtens funktionieren (habs aber nicht getestet :))

AlexD
30.11.2005, 14:36:38
Danke, für den Hinweis!

Mit dem array funktionierts jetzt!