» »

Kako predelati naslednjo PHP kodo

Kako predelati naslednjo PHP kodo

Penny ::

Pozdravljeni,

Zelo rad bi uporabail naslednji meni v svojem CMS-u, da bi deloval dinamično:

http://apycom.com/menus/15-olive-drab.h...

html menija izgleda takole:

<div id="menu">
    <ul class="menu">
        <li><a href="#" class="parent"><span>Home</span></a>
            <div><ul>
                <li><a href="#" class="parent"><span>Sub Item 1</span></a>
                    <div><ul>
                        <li><a href="#" class="parent"><span>Sub Item 1.1</span></a>
                            <div><ul>
                                <li><a href="#"><span>Sub Item 1.1.1</span></a></li>
                                <li><a href="#"><span>Sub Item 1.1.2</span></a></li>
                            </ul></div>
                        </li>
                        <li><a href="#"><span>Sub Item 1.2</span></a></li>
                        <li><a href="#"><span>Sub Item 1.3</span></a></li>
                        <li><a href="#"><span>Sub Item 1.4</span></a></li>
                        <li><a href="#"><span>Sub Item 1.5</span></a></li>
                        <li><a href="#"><span>Sub Item 1.6</span></a></li>
                        <li><a href="#" class="parent"><span>Sub Item 1.7</span></a>
                            <div><ul>
                                <li><a href="#"><span>Sub Item 1.7.1</span></a></li>
                                <li><a href="#"><span>Sub Item 1.7.2</span></a></li>
                            </ul></div>
                        </li>
                    </ul></div>
                </li>
                <li><a href="#"><span>Sub Item 2</span></a></li>
                <li><a href="#"><span>Sub Item 3</span></a></li>
            </ul></div>
        </li>
        <li><a href="#" class="parent"><span>Product Info</span></a>
            <div class="columns two">
                <ul class="one">
                    <li><a href="#"><span>Sub Item 1.1</span></a></li>
                    <li><a href="#"><span>Sub Item 1.2</span></a></li>
                    <li><a href="#"><span>Sub Item 1.3</span></a></li>
                    <li><a href="#"><span>Sub Item 1.4</span></a></li>
                    <li><a href="#"><span>Sub Item 1.5</span></a></li>
                    <li><a href="#"><span>Sub Item 1.6</span></a></li>
                    <li><a href="#"><span>Sub Item 1.7</span></a></li>
                </ul>
                <ul class="two">
                    <li><a href="#"><span>Sub Item 2.1</span></a></li>
                    <li><a href="#"><span>Sub Item 2.2</span></a></li>
                    <li><a href="#"><span>Sub Item 2.3</span></a></li>
                    <li><a href="#"><span>Sub Item 2.4</span></a></li>
                    <li><a href="#"><span>Sub Item 2.5</span></a></li>
                    <li><a href="#"><span>Sub Item 2.6</span></a></li>
                </ul>
            </div>
        </li>
        <li><a href="#"><span>Help</span></a></li>
        <li class="last"><a href="#"><span>Contacts</span></a></li>
    </ul>
</div>


Php koda za menije, podmenije v mojem cmsju pa izgleda takole:

{** block-description:text_links **}

{if $block.properties.show_items_in_line == 'Y'}
	{assign var="inline" value=true}
{/if}

{if $items}
	<ul class="text-links {if $inline}text-links-inline{/if}">
		{foreach from=$items item="menu"}
			<li class="level-{$menu.level|default:0}{if $menu.active} cm-active{/if}">
				<a {if $menu.href}href="{$menu.href|fn_url}"{/if}>{$menu.item}</a> 
				{if $menu.subitems}
					{include file="blocks/menu/text_links.tpl" items=$menu.subitems}
				{/if}
			</li>
		{/foreach}
	</ul>
{/if}


Bi mi znal kdo tole predelat, da bi mi deloval zgornji meni.

Bil bi zelo hvaležen.

Lp
Tenks!! LP
  • spremenil: Penny ()

t3hn0 ::

Hja...Cisto na hitro, najprej potrebujes neko rekurzivno funkcijo, ki ti prebere strukturo (rekurzivno zato da ti pod vsako stranjo izpise se podstrani), nato pa to rabis podati tvojemu template sistemu. Seveda je vse odvisno od strukture baze in template sistema.

<?php
function mojMeni($ParentID) {
	
	$query = mysql_query("SELECT ID, Url, ParentID, Title, ... FROM tabela WHERE ParentID = {$ParentID} ORDER BY ID ASC", $link);
	$out = array();
	while($row = mysql_fetch_array($query)) {
		
		$child = mojMeni($row['ID']);
		if($child != false) {
			$out[]['subitems'] = $child;
			$out[]['href'] = $row['Url'];
			$out[]['Title'] = $row['Title'];
		}
	}
	if(count($out) > 0)
		return $out;
	return false;
}


$items = mojMeni(0);
?>
^.^


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Parsanje grdega JSON-a

Oddelek: Programiranje
161782 (1267) Spura
»

[ASM] Pomoč, ne najdem napake

Oddelek: Programiranje
51072 (948) c0dehunter
»

Dodajanje slik (galerije) na spletno stran

Oddelek: Izdelava spletišč
61518 (1347) martincek1
»

[C#] toString ne dela

Oddelek: Programiranje
51303 (1193) rokpok
»

VB in String

Oddelek: Programiranje
9882 (820) mov ax 0x7c0

Več podobnih tem