Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Dynamische Navigation PHP Mysql Frage

Mitglied: Professorbass

Professorbass (Level 1) - Jetzt verbinden

09.01.2010 um 13:19 Uhr, 3897 Aufrufe, 2 Kommentare

Ich breuchte hilfe beim anpassen dieses scripts an mein Template.
Ich habe dieses script anhand eines tutorials gemacht .
Aber da war keine rede von dem Template!!!
Hilfe

Hallo
Dieses script habe ich gemacht enhand eines tutorials.
Nur in diesem tutorial stande nix davon wie das Template ausehen müsste kein beispiel.
Mein Problem ist nun wie ich das an ein von mir vorbereitetes Template, Layout anpasse.
Kan mir da jemand behilflich sein Bitte.
Ich verzweifle langsam
Danke im voraus.
Hier das Skript mit dem von mier vorbereiteten Template daten:
01.
  
02.
<?php 
03.
function gettemplate($template,$endung="html"
04.
05.
return str_replace("\"","\\\"",implode("",file($template.".".$endung))); 
06.
07.
function dooutput($template) { 
08.
echo $template
09.
10.
 
11.
$head
12.
$nav
13.
$content
14.
$foot
15.
 
16.
$db = @new MySQLi('localhost', 'Benuzer', 'passw', 'datenbank'); 
17.
 
18.
 
19.
 $sql = 'SELECT 
20.
                menu_ID, 
21.
				menu_name 
22.
            FROM 
23.
                menu 
24.
			WHERE 
25.
				menu_topid=0 
26.
            ORDER BY 
27.
                menu_position ASC'; 
28.
		if (!$result = $db->query($sql)) { 
29.
        return $db->error; 
30.
31.
 
32.
$nav_array = array(); 
33.
$i = 0; 
34.
while ($nav_data = $result->fetch_assoc()) { 
35.
	$nav_array[$i] = array('menu_ID'=>$nav_data["menu_ID"], 'menu_name'=>$nav_data["menu_name"]); 
36.
	$i++; 
37.
38.
 
39.
$nav_id = (int) $_GET["nav_id"]; 
40.
if ($nav_id <= 0) { 
41.
	$nav_id = $nav_array[0]['menu_ID']; 
42.
43.
 
44.
 $sql = 'SELECT 
45.
                menu_ID, 
46.
				menu_topid, 
47.
				menu_position, 
48.
				menu_name, 
49.
				menu_page 
50.
            FROM 
51.
                menu 
52.
			WHERE 
53.
				menu_ID = $nav_id'; 
54.
		if (!$result = $db->query($sql)) { 
55.
        return $db->error; 
56.
57.
$page_data = $result->fetch_assoc(); 
58.
 
59.
$page_id = $page_data["menu_page"]; 
60.
 
61.
$child_array = array(); 
62.
$root_array = array(); 
63.
$invlevel = 1; 
64.
 
65.
 $sql = 'SELECT 
66.
                menu_ID, 
67.
				menu_topid, 
68.
				menu_name 
69.
            FROM 
70.
                menu 
71.
			WHERE 
72.
				menu_topid = $nav_id and `menu_display` != 0 
73.
            ORDER BY 
74.
                menu_position'; 
75.
		if (!$result = $db->query($sql)) { 
76.
        return $db->error;			 
77.
78.
$i = 0; 
79.
while ($subnav_data = $result->fetch_assoc()) { 
80.
	$child_array[$i] = array('menu_ID'=>$subnav_data["menu_ID"], 'menu_name'=>$subnav_data["menu_name"], 'menu_topid'=>$subnav_data["menu_topid"], 'level'=>$invlevel); 
81.
	$i++; 
82.
83.
 
84.
$next_topid = $page_data["menu_topid"]; 
85.
 
86.
 
87.
 
88.
while (($next_topid != 0 || $next_topid != false))	{ 
89.
 
90.
	$i = 0; 
91.
 
92.
	if(empty($child_array[0]["menu_topid"])) { 
93.
		$top_id = $nav_id
94.
	} else
95.
		$top_id = $child_array[0]["menu_topid"]; 
96.
97.
 
98.
 
99.
	$invlevel++; 
100.
 
101.
 $sql = 'SELECT 
102.
                menu_ID, 
103.
				menu_topid, 
104.
				menu_name 
105.
            FROM 
106.
                menu 
107.
			WHERE 
108.
				menu_topid = $next_topid and `menu_display` != 0 
109.
            ORDER BY 
110.
                menu_position ASC'; 
111.
		if (!$result = $db->query($sql)) { 
112.
        return $db->error; 
113.
114.
	while($subnav_data = $result->fetch_assoc()) { 
115.
 
116.
		$root_array[$i] = array('menu_ID'=>$subnav_data["menu_ID"], 'menu_name'=>$subnav_data["menu_name"], 'menu_topid'=>$subnav_data["menu_topid"], 'level'=>$invlevel); 
117.
		 
118.
		if($root_array[$i]["menu_ID"] == $top_id) { 
119.
 
120.
			$root_array = array_merge($root_array, $child_array); 
121.
			$i = count($root_array) - 1; 
122.
123.
		$i++; 
124.
125.
 
126.
	$child_array = $root_array
127.
	$root_array = array(); 
128.
 
129.
 
130.
 $sql = 'SELECT 
131.
                menu_topid 
132.
            FROM 
133.
                menu 
134.
			WHERE 
135.
				menu_ID = $next_topid and `menu_display` != 0 LIMIT 1'; 
136.
		if (!$result = $db->query($sql)) { 
137.
        return $db->error; 
138.
139.
	$subnav_data = $result->fetch_assoc(); 
140.
	$next_topid = $subnav_data["menu_topid"]; 
141.
 
142.
 
143.
144.
 
145.
 
146.
$anzlevel = $invlevel
147.
 
148.
$invlevel = 0; 
149.
$number = count($child_array); 
150.
 
151.
for($i = 0; $i < $number; $i++) { 
152.
	$invlevel = $child_array[$i]['level']; 
153.
	$child_array[$i]['level'] = $anzlevel - $invlevel + 1; 
154.
155.
 
156.
$subnav_array = $child_array
157.
 
158.
$sql = 'SELECT 
159.
                content_ID, 
160.
				content_title, 
161.
				content_text 
162.
            FROM 
163.
                content 
164.
			WHERE 
165.
				content_ID = $page_id'; 
166.
		if (!$result = $db->query($sql)) { 
167.
        return $db->error; 
168.
169.
	$data = $result->fetch_assoc(); 
170.
	$content_title = $data["content_title"]; 
171.
	$content_text = $data["content_text"]; 
172.
	 
173.
eval("dooutput(\"".gettemplate("templates/index")."\");"); 
174.
?>
Mitglied: dog
09.01.2010 um 16:32 Uhr
01.
function gettemplate($template,$endung="html") 
02.
03.
return str_replace("\"","\\\"",implode("",file($template.".".$endung))); 
04.
05.
 
06.
function dooutput($template) { 
07.
echo $template; 
08.
09.
[...] 
10.
eval("dooutput(\"".gettemplate("templates/index")."\");"); 
Ich bin grade echt verleitet das an http://thedailywtf.com/ zu schicken, weil es einfach so gnadenlos schlecht ist.
Ein Tipp: Wenn du eval() benutzt machst du in 99,9% der Fälle was falsch.
Und was den Rest vom Code angeht: Fang lieber noch mal von vorne an - und dann bitte mit erträglicher Formatierung und Kommentaren.

Sorry, aber das Chaos da ist wirklich Folter und deine Fragestellung so Wischiwaschi, dass da keine Hilfe möglich ist.

Grüße

Max
Bitte warten ..
Mitglied: Professorbass
09.01.2010 um 21:59 Uhr
Ok ich mach das tutureal nochmal von vorne
danke für die schnelle antwort
Bitte warten ..
Ähnliche Inhalte
PHP
PHP Umstellung mysql connect
Frage von DPiegzaPHP7 Kommentare

Hallo zusammen. Ich bekomme immer diese Fehlermeldung / Warnung: Deprecated: mysql_connect(): The mysql extension is deprecated and will be ...

PHP
PHP MySQL Login
Frage von YanmaiPHP7 Kommentare

Hallo ihr Administratoren, ich habe eine Datenbank, in der alle User des Netzwerkes enthalten sind. Wenn ein User sich ...

PHP
MySQL in PHP mit Variablen
gelöst Frage von carl7nPHP10 Kommentare

Hallo, ich habe PHP-Grundkenntnisse, schaffe es aber nicht, nach meinen Vorstellungen ein paar kleine PHP-Scripts zusammen arbeiten zu lassen. ...

Datenbanken
Eine Art Access, nur mit PHP und MySQL?
gelöst Frage von McLionDatenbanken14 Kommentare

Hallo, gibt es eine Art wie Microsoft Access, nur auf PHP und MySQL aufbauend? OpenSource wäre noch schöner. Danke!

Neue Wissensbeiträge
Windows 10

USB Maus und Tastatur versagen Dienst unter Windows 10

Erfahrungsbericht von hardykopff vor 1 TagWindows 105 Kommentare

Da steht man ziemlich dumm da, wenn der PC sich wegen fehlender USB Tastatur und Maus nicht bedienen lässt. ...

Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 2 TagenAdministrator.de Feedback18 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 2 TagenHumor (lol)4 Kommentare

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 3 TagenGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Heiß diskutierte Inhalte
Windows Server
Standortvernetzung zu einem Strato VServer (Windows)
Frage von matzefratze81Windows Server10 Kommentare

Moin, ich komme aus einem Enterprise-Umfeld und habe den Fehler gemacht, dass ich mich auf ein kleines Unternehmen eingelassen ...

Grafikkarten & Monitore
4k EIZO Monitor, Fernseher und Splitter
Frage von LerxxeyGrafikkarten & Monitore9 Kommentare

Hallo Zusammen, vielleicht könnt ihr mir bei einem Problem helfen wo ich einfach nicht mehr weiterkomme Und zwar haben ...

TK-Netze & Geräte
Fax im Betrieb
Frage von gansa28TK-Netze & Geräte6 Kommentare

Hallo zusammen, Endlich wurden meine Gebete Erhört und der Rechner meines Bekannten dem ich etwas unter die Arme greife, ...

Humor (lol)
Nerd Zeitschrift gesucht
Frage von 2SeitenHumor (lol)6 Kommentare

Hey Zusammen, Ich suche eine Zeitschrift bei der es ums technische Basteln geht. Pc zusammenschrauben, Arduino Projekte, Server Tipps ...