Ich habe ein Menü-Script, das mit Navigations-Gruppen arbeitet, die jeweils in eine Datei geschrieben werden.
In der ersten Zeile wird der Name der Navigations-Gruppe mit
"~Name der Gruppe~"
geschrieben.
Die Links in den folgenden Zeilen sind mit Pipes ( | ) getrennte Werte
Um diesen auszulesen habe ich die folgende Funktion get_nav_name():
	
Die Funktion wird an verschiedenen Stellen mit folgendem Code aufgerufen:
	
Ich bekomme aber jedesmal nach ausführen der Aktion $action (dieser Wert variiert) die Meldung
	Wie kann ich diese Meldung verhindern? 
Die jeweilige Aktion selbst wird komischerweise ausgeführt.
Guido
					In der ersten Zeile wird der Name der Navigations-Gruppe mit
"~Name der Gruppe~"
geschrieben.
Die Links in den folgenden Zeilen sind mit Pipes ( | ) getrennte Werte
Um diesen auszulesen habe ich die folgende Funktion get_nav_name():
PHP-Code:
	
	
$menu_dir = $lib_dir . "lib/menucnt/";
require("class.dir.php");
$d=new PHP_Dir();               //create a new PHP_Dir object
$d->set_mask("*.adm");          //set the default mask to '*.txt'
$admfiles=$d->list_files($menu_dir);   //change this if you're a *nix or Linux user
function get_nav_name($get_file) {
    global $menu_dir;
    $openfile = $menu_dir . $get_file;
    $fp = fopen($openfile, "r+");
    $file_contents = fread($fp, filesize($openfile));
    fclose($fp);
    $line = explode("\n", $file_contents);
    $i = 0;
    $size = sizeof($line) - 2;
    $nav_tab_width = $nav_tab_width - 2;
    while($i <= $size) {
        if(strstr($line[0], "~") == true) {
            $navname = ereg_replace("~", "", $line[0]);
            $size = sizeof($line) + 1;
            //break;
        } else {
            $navname = str_replace("_"," ",$get_file);
            $navname = str_replace(".adm","",$navname);
            $newname = "~" . $navname . "~";
            fputs($fp,$newname . "\n");
            //break;
        }
        echo $navname;
        $i++;
    }
    return $navname;
} 
PHP-Code:
	
	
if ($action)
    for($p=0;$p<sizeof($admfiles);$p++) {
        $addnav_name[$p] = get_nav_name($admfiles[$p]);
        $addnav_file[$p] = $menu_dir . $admfiles[$p];
        echo "Tue irgend was";
    }
} 
Code:
	
	Fatal error: Cannot redeclare class php_dir in l:\www\admin\class.dir.php on line 5
Die jeweilige Aktion selbst wird komischerweise ausgeführt.
Guido
 
          
Kommentar