if Abfrage

gruebel-gruebel

Erfahrenes Mitglied
Hallo,
habe mal eine Frage für eine If Bedingung.

Ich habe drei Ebenen

Die 1ste Ebene hat immer eine 2te Unter Ebene
Die 1ste Ebene kann nicht angeklickt werden, was auch richtig ist.

PHP:
     if ($ebene ==1){

Die 2te Ebene hat NICHT immer eine 3te Ebene.
Die 2te Ebene soll nur angeklickt werden können wenn es KEINE 3te Ebene gibt

PHP:
     if ($ebene ==1 or $ebene ==2){

so wird auch die 2te Ebene ausgeschaltet.
Gruß
grübel grübel
 
PHP:
 if ($ebene ==1 or $ebene ==2){

Hier kann die 1ste und 2te Ebene nicht aktiviert werden nur die 3te wenn es eine gibt.


PHP:
 if ($ebene ==1 or ($ebene ==2 wenn es $ebene ==3 gibt){
 
Ich schicke mal die funktion dafür zuständig ist
FRAGE:
Wenn es eine Unterebene gibt soll die Ebene darüber nicht angeklickt werden können.
Hier unten wird nur die erste Ebene nicht aktiviert .

PHP:
navigation(0);

function navigation($katid, $ebene=1)
{
        $res1 = mysql_query("
                SELECT
                        kat_id,
                        kat_bez,
                        eb
                FROM
                        bm_kategorien
                WHERE
                        bm_kategorien.kat_id1 = ".$katid."
        ");

        while ($erg1 = mysql_fetch_assoc($res1))
        {
                if (zaehlen($erg1["kat_id"]) ==0)
                        continue;
              echo"
                   <li>";

     if ($ebene ==1 ){

         echo "<a>".$erg1["kat_bez"]." (".zaehlen($erg1["kat_id"]).")</a>";
        }
     else{
         echo "<a  href=\"$_SERVER[PHP_SELF]?id=".$erg1["kat_id"]."&wert=".zaehlen($erg1["kat_id"])."\">
        ".$erg1["kat_bez"]." (".zaehlen($erg1["kat_id"]).")</a>
        ";
}
                 echo"

                   <ul> ";
                navigation($erg1["kat_id"],$ebene +1);
                 echo "
                   </ul>";

}
   echo"</li>";

        mysql_free_result($res1);
}
 
Probier mal Folgendes:
PHP:
function navigation($katid)
{
	$retVal = false;
	$res1 = mysql_query("
                SELECT
                        kat_id,
                        kat_bez,
                        eb
                FROM
                        bm_kategorien
                WHERE
                        bm_kategorien.kat_id1 = ".$katid."
        ");

	if( mysql_num_rows($res1) ) {
		$retVal = '<ul>';
		while( $erg1 = mysql_fetch_assoc($res1) ) {
			if( zaehlen($erg1["kat_id"]) ==0 ) {
				continue;
			}
			$retVal .= '<li>';
			if( ($buffer = navigation($erg1['kat_id'])) === false ) {
				$retVal .= '<a href="'.htmlspecialchars($_SERVER['PHP_SELF'].'?id='.$erg1['kat_id'].'&wert='.zaehlen($erg1['kat_id'])).'">'.htmlspecialchars($erg1['kat_bez']).' ('.zaehlen($erg1['kat_id']).')</a>';
			} else {
				$retVal .= htmlspecialchars($erg1['kat_bez']).' ('.zaehlen($erg1['kat_id']).')' . $buffer;
			}
			$retVal .= '</li>';
		}
		$retVal .= '</ul>';
	}
	mysql_free_result($res1);
	return $retVal;
}

echo navigation(0);
 
Parse error: syntax error, unexpected ';' in /home/www/web91/html/stamps24/index1.php on line 384

wird angezeit bei mir
$retVal .= htmlspecialchars($erg1['kat_bez'].' ('.zaehlen($erg1['kat_id']).')' . $buffer;
 
Ja jetzt hab ich es auch gesehen: Habe nach ; und ' gesucht
Vielen Dank für deine Hilfe Funktioniert Super.
Nur das Menü sieht jetzt schlimmaus und die Seite wird nicht mehr gefunden
Adressleiste
/%5C%22/index1.php?id=254&wert=8\%22
Das wäre z.B. richtig
/index1.php?id=254&wert=8
 
Zurück