Problem bei while-Schleife in switch-Abfrage

julian aka sancezz

Grünschnabel
Hallo,

ich möchte eine while-Schleife in einer switch-Abfrage machen leider bekomme ich eine Fehlermeldung

Parse error: parse error, expecting `T_CASE' or `T_DEFAULT' or `'}'' in /var/www/web912/html/axezz/coverage.php on line 63

die mir auch klar ist, aber ich weiß nicht wie ich es anders lösen soll.

switch ($status)
{
while ($text = mysql_fetch_assoc($text_coverage))
{
case $text["tid"]:

echo "".$text["text"]."";
break;
}


default:

echo "Bitte ein Untermenü auswählen";
}

Habt ihr eine Idee wie ich das ganze anders machen könnte?
 
Ok, sorry wenn das zu kurz formuliert war.

Ich möchte die switch-Abfrage "dynamisch" erzeugen. Ich habe Werte aus einer Mysql-Abfrage und möchte die jetzt in die switch-Abfrage einsetzen. Da es aber mehr als ein Wert ist, weiß ich nicht wie ich das lösen soll =/.
 
Hallo!

Was soll die diese Struktur?!

Ich hätte das so gemacht:

PHP:
while ($text = mysql_fetch_assoc($text_coverage))
{
switch ($status)
{
case $text["tid"]: echo "".$text["text"].""; break;
default:
echo "Bitte ein Untermenü auswählen";
}
}

oder so:

PHP:
while ($text = mysql_fetch_assoc($text_coverage))
{
$ech = ($status == $text["tid"] ? $text['text'] : "Bitte ein Untermenü auswählen";
echo $ech;
}
 
Bei der ersten Lösung von dir wird aber immer wieder die switch-Abfrage wiederholt.

Ich möchte EINE switch-Abfrage und dort dann, aus den Werten meiner Mysql-Abfrage, mehrere Möglichkeiten [cases] erzeugen.
 
Naja, es gibt verschiedene Anwendungsmöglichkeiten ;) aber ich schätze du willst Dateien includen?
Das kannst du auch viel einfacher machen:
PHP:
<?php
    $pages = array();
    $pages['default'] = "index.php";
    while($row = mysql_fetch_assoc($result)) {
        $pages[$row['name']] = $row['Adresse'];
    }
    if(isset($_GET['page']) AND isset($pages[$_GET['page']])) {
        include($pages[$_GET['page']]);
    }
    else {
        include($pages['default']);
    }
?>
Sorry ich hab jetzt meine eigenen Variablen verwendet, aber eigentlich sollte das ja kein Problem darstellen oder?
Ich hoffe ich konnte helfen!
 
Zurück