edw Posted April 3, 2008 Report Posted April 3, 2008 Sveiki, varbut kads var izlidzet? Ir kods, kas attelo sadalas, apaksadalas no sql un veido linku tam, piemeram "?id=4", bet man vajadzetu, lai saja linka tiktu ieklauta vel viena kolona no sql "info", un links izskatitos apmeram sadi "?id=4&info=in_c". kods ir sads, <?php // nodrošinām, lai $_GET['id'] eksistētu un lai tas būtu skaitlis $_GET['id'] = isset($_GET['id']) ? (int)$_GET['id'] : 0; // $_GET['id'] mainīt nevajag (šis mainīgais var noderēt citās lapas vietās), // tāpēc izveidojam jaunu mainīgo; šajā mainīgajā esošā vērtība tiks mainīta $id = $_GET['id']; // izveidojam nepieciešamo parent_id sarakstu $parents = array($id); while ( $id ) { $res = mysql_query("select parent_id from toc where id = {$id} limit 1"); $row = mysql_fetch_row($res); mysql_free_result($res); if ( !$row ) { break; } $id = $row[0]; $parents[] = $id; } $parents = implode(',', $parents); // selectojam izvēlnes attēlošanai nepieciešamos datus $res = mysql_query("select id, parent_id, title from toc where parent_id in ({$parents}) order by id asc"); while ( $row = mysql_fetch_assoc($res) ) { $toc[$row['parent_id']][] = $row; } mysql_free_result($res); // attēlojam izvēlni // izvēlnes attēlošanai izmantosim rekursīvu f-ju function ShowChildren ($toc, $parent_id, $level ) { foreach ( $toc[$parent_id] as $elem ) { $indent = str_repeat(' ', $level); $current = $_GET['id'] == $elem['id'] ? "style=''" : ''; echo "<a class='links' href='?id={$elem['id']}' {$current}><h2 class='bar'>{$indent}{$elem['title']}</h2></a>"; if ( isset($toc[$elem['id']]) ) { ShowChildren($toc, $elem['id'], $level + 1); } } } ShowChildren($toc, 0, 0); ?> Ja, kas sis gabals nemts no http://www.misc.lv/?id=20 Varbut kads var izlidzet, meginaju vairakus varinatus, bet sada veida skripta nu nekadi nesanak man. Agrak stradaju ar vienkarsaku skriptu, kur nolasa tikai sadalas un tur problemu nekadu nebija, bet nu tagad vajag ari apaksadalas un tapc deretu jusu palidziba.
andrisp Posted April 3, 2008 Report Posted April 3, 2008 echo "<a class='links' href='?id={$elem['id']}&info={$elem['blabla']}' {$current}><h2 class='bar'>{$indent}{$elem['title']}</h2></a>"; ?
binary Posted April 3, 2008 Report Posted April 3, 2008 Ja, kas sis gabals nemts no http://www.misc.lv/?id=20 Paldies par atsauci ;) vēlējos vien piebilst, ka šeit redzamajā kodā ir veiktas šādas tādas izmaiņas (t.i., ir pāris nesmukumi, kuru nav misc.lv atrodamajā) ;) Par atbildi - kamēr reģistrējos, andrisp jau paspēja atbildēt - labo <a> tega href atribūta vērtību.
edw Posted April 3, 2008 Author Report Posted April 3, 2008 :D eh :D man bija gluks ar ff, pirmit sadi rakstiju, bet nekas nenotika.. :D tagad restarteju ff un viss ok :)
binary Posted April 3, 2008 Report Posted April 3, 2008 Nez gan, vai gļuks, drīzāk cache. Mēdz palīdzēt ctrl+f5 vai tools -> clear private data -> cache.
edw Posted April 3, 2008 Author Report Posted April 3, 2008 nu ta ari var, bet taja bridi vnk neiedomajos par so lietu.
Recommended Posts