Neue Navi

Gesperrt
hyperjojo
Beiträge: 102
Registriert: Fr 1. Nov 2002, 23:57
Kontaktdaten:

Neue Navi

Beitrag von hyperjojo »

Hi Leute,

ich suche eine Navigation, soweit ich bisher durchgeschaut habe kann das kein hier veröffentlichtes Modul.
Die Ausgabe soll im Prinzip Baumförmig sein und in etwas so aussehen:

Code: Alles auswählen

<img src="arrow.jpg" alt=""> Menuepunkt 1<br>
<img src="arrow.jpg" alt=""><img src="arrow.jpg" alt=""> Untermenue 1<br>
<img src="arrow.jpg" alt=""><img src="arrow.jpg" alt=""> Untermenue 2<br>
<img src="arrow.jpg" alt=""><img src="arrow.jpg" alt=""> Untermenue 3<br>
<img src="arrow.jpg" alt=""><img src="arrow.jpg" alt=""> Untermenue 4<br>
<img src="arrow.jpg" alt=""><img src="arrow.jpg" alt=""><img src="arrow.jpg" alt=""> Unter-Sub-menue4.1<br>
<img src="arrow.jpg" alt=""><img src="arrow.jpg" alt=""><img src="arrow.jpg" alt=""> Unter-Sub-menue4.2<br>
<img src="arrow.jpg" alt=""><img src="arrow.jpg" alt=""><img src="arrow.jpg" alt=""> Unter-Sub-menue4.3<br>
<img src="arrow.jpg" alt=""><img src="arrow.jpg" alt=""> Untermenue 5<br>
<img src="arrow.jpg" alt=""><img src="arrow.jpg" alt=""> Untermenue 6
Natürlich jede Zeile einzeln verlinkt.

Hat jemand ne Idee, wie ich das anstellen kann?? Mit Contenido bin ich grade erst eingestiegen und hab auch mit Programmierung nit viel am Hut!

Danke für jeden Hinweis!

hyperjojo
Sven777b
Beiträge: 503
Registriert: Mi 18. Sep 2002, 00:00
Wohnort: Sachsen
Kontaktdaten:

Beitrag von Sven777b »

Hi,

du kannst z.b. meine Hauptnavigation nehmen :
http://contenido.de/forum/viewtopic.php?t=118
oder eine andere - es gibt noch mehr mit ähnlichem Prinzip.

Die Einrückung geschieht bei mir durch &nbsp; , die in entsprechender Anzahl aneinander gereiht werden. Diese kannst du durch dein Bild ersetzen.

Original (ziemlich weit unten):

Code: Alles auswählen

$mod_space = array_pad($mod_space,($con_tree[$nr][level] - 1),"&nsbp;&nbsp;");
Neu:

Code: Alles auswählen

$mod_space = array_pad($mod_space,($con_tree[$nr][level] - 1),"<img src='img/arrow.jpg' alt=''>");
fertig ;)
Module zum anschauen:
bei Sven: http://contenido-module.de
bei Pulk : http://spielwiese.pulk.net

Der-Dirigent: http://der-dirigent.de
JUG
Beiträge: 113
Registriert: Fr 20. Sep 2002, 12:24
Wohnort: Karlsruhe
Kontaktdaten:

Beitrag von JUG »

Genau - die Sven-Navi wollte ich ja schon immer mal ausprobieren - thxx für die Erinnerung :D

Ich habe aber irgendwo einen Fehler gemacht, die Errorlog meint folgendes:

Code: Alles auswählen

2003-Apr-Tue 00:05:07: error 1064 (You have an error in your SQL syntax near '1';
$nav_col_out  = "#6699FF";
$nav_col_over = "#9999FF";
$nav_col_back = "#6' at line 1) - Invalid SQL: UPDATE con_lay SET name='Standard', description='', code='
Die Korrektur in der front_content von detlev habe ich auch gemacht. Aber ich versteh's nicht, was Contenido meint, "Invalid SQL" weist auf ein Prob in der DB hin - er will, dass ich bei con_lay Änderungen vornehme, aber was genau soll da geändert werden?
Bild
Sven777b
Beiträge: 503
Registriert: Mi 18. Sep 2002, 00:00
Wohnort: Sachsen
Kontaktdaten:

Beitrag von Sven777b »

sch... addslashes-Fehler. Ich weiß auch nicht was das genau ist. Jedenfalls müsste er eigentlich beim Layout alle ' durch \' ersetzen - dafür gibt es ein addslashes($code) - scheinbar versagt das aber gerne oder es wird irgendwo anders vor dem SQL-Update wieder rückgängig gemacht. k.A.
ersetze einfach die Zeile:

$nav_start = '1';

durch

$nav_start = "1";

oder

$nav_start = \'1\';
Module zum anschauen:
bei Sven: http://contenido-module.de
bei Pulk : http://spielwiese.pulk.net

Der-Dirigent: http://der-dirigent.de
JUG
Beiträge: 113
Registriert: Fr 20. Sep 2002, 12:24
Wohnort: Karlsruhe
Kontaktdaten:

Beitrag von JUG »

Jo, die Fehlermeldung in der Errorlog hat sich nicht wiederholt, das hätten wir. Trotzdem mag Contenido die Layoutänderung nicht übernehmen. Keine Fehlermeldung, es sieht so aus, als ob alles ok ist, aber wenn ich das Bearbeitungsfenster wieder öffne, erscheint das alte Layout.

Was genau mag er nicht?

Code: Alles auswählen

<!-- BEGIN NAVIGATION -->
<?php
//-----------------------------------------------------------------------------//
$nav_start = "5";
$nav_col_out  = "#6699FF";
$nav_col_over = "#9999FF";
$nav_col_back = "#6600FF";
$nav_col_on   = "#FF0000";
$nav_col_off  = "#000000";
// offenen Pfad finden //
$nav_path = array();
$nav_tree = array();
$tmp_idcat = $idcat;
while($tmp_idcat > 0){
   array_push($nav_path, $tmp_idcat);
   $tmp_idcat = $con_tree[$tmp_idcat][parent];
};
$nav_path = array_reverse($nav_path);
if($nav_path[0] != $nav_start){$nav_path = array($nav_start);};
// Baum sortieren //
for($i = 0;$i < sizeof($nav_path);$i++){
   $tmp_found=0;
   for($nr = 0; $nr <= $con_tree_max; $nr++){
      if($con_tree[$nr][parent] == $nav_path[$i] && $con_tree[$nr][preid] == '0'){$tmp_found=1;break;}
   }
   unset($tmp_level);$tmp_level = array();
   do{
      array_push($tmp_level , $nr);
      $nr = $con_tree[$nr][postid];
   } while($nr != '0' && $tmp_found==1);
   if($i == 0){$nav_tree = $tmp_level;}
   else {
      $x = array_search("$nav_path[$i]", $nav_tree);
      array_splice($nav_tree, $x+1, 0, $tmp_level);
   };
};
// Baum ausgeben //
echo "<table width=100% cellspacing=\"5\" cellpadding=\"0\" border=\"0\">\n";
foreach($nav_tree as $nr){
   if(($con_tree[$nr][public] == '1' or $auth->auth["uid"] != "nobody") and $con_tree[$nr][visible] == '1'){
      echo "<tr><td onMouseOver=\"this.style['background']='".$nav_col_over."';\" ";
      echo "onMouseOut=\"this.style['background']='".$nav_col_out."';\" bgcolor=\"$nav_col_out\" nowrap>";
      unset($mod_space);$mod_space = array();
      $mod_space = array_pad($mod_space,($con_tree[$nr][level] - 1),"&nsbp;&nbsp;");
      echo "<span style='background-color:".$nav_col_back.";'>".implode("",$mod_space)."</span>";
      if($nr == $idcat){ echo "<span style='background-color:".$nav_col_on."'>&nbsp;</span>"; }
      else { echo "<span style='background-color:".$nav_col_off."'>&nbsp;</span>"; };
      echo "<a href=\"".$con_tree[$nr][link]."\" id=\"left-menu\">".$con_tree[$nr][titel]."</a></td></tr>";
   };
};
unset($nav_tree);unset($nav_path);
echo "</table>";
?>
<!-- END NAVIGATION -->
Sven
Beiträge: 60
Registriert: Mi 12. Mär 2003, 10:53
Kontaktdaten:

Beitrag von Sven »

moin

wenn ich den hier oben geposteten code bei mir einfuege bekomme ich jedesmal einen sql fehler bei den '

undzwar kommt der fehler bei dem teil mit dem javascript
onmouseover .....

wie muss man den code aendern damit es in die db geschieben wird und trotzdem funktioniert ?

danke fuer eure anworten

Sven
Sven777b
Beiträge: 503
Registriert: Mi 18. Sep 2002, 00:00
Wohnort: Sachsen
Kontaktdaten:

Beitrag von Sven777b »

einen Backslash vor jedes einfache Anführungszeichen \'
alternativ müsste mal jemand die Stelle finden, wo die SQL-Abfrage durchgeführt wird und dort ein addslashes davorsetzen
Module zum anschauen:
bei Sven: http://contenido-module.de
bei Pulk : http://spielwiese.pulk.net

Der-Dirigent: http://der-dirigent.de
Sven
Beiträge: 60
Registriert: Mi 12. Mär 2003, 10:53
Kontaktdaten:

Beitrag von Sven »

:(

leider bringt ein addslashes(); fuer den sql query gar nix
im gegenteil

noch nicht einmal der login funzt danach

wer testen moechte

conlib\db_mysql.inc

zeile 116

Sven

ps: schonmal erwaehnt das ich kein js mag ;)

EDIT:
kann ja an der stelle auch net gehen da ja dann der ganze string bearbeitet wird

die richtige stelle dafuer ist im verzeichniss
contenido\inc\

die datei
fnc_lay.inc.php

und da in zeile 26 die // am zeilenanfang rausnehmen

nur ich sehe nun keine navigation leider :(

EDIT2:
ich habe deswegen keine Navigation gesehen da die Strukturpunkte bei mir standardmaessig deaktiviert sind.
So nun habe auch ich meine Navigation.
Ich habe die von sven777b glaub ich war die erste fassung in ein modul umgeschrieben welches ich die naechsten tage hier veroeffentlichen werde nachdem noch einige schoenheitsfehler beseitigt worden sind.
Sven777b
Beiträge: 503
Registriert: Mi 18. Sep 2002, 00:00
Wohnort: Sachsen
Kontaktdaten:

Beitrag von Sven777b »

@Sven: das mit addslashes ist nicht gut! - bei mir werden dann jedesmal wenn ich das Layout bearbeite, neu Slashes hinzugefügt. Diese Lösung beträfe also mehrere Files, weil die Slashes wieder entfernt werden müssen.

Ich hab noch ein Lösungsangebot was bei mir definitiv funktioniert hat:

/contenido/inc/fnc_lay.inc.php Zeile 28
original:

Code: Alles auswählen

$sql = "INSERT INTO $cfgTab_lay (name, description, deletable, code, idclient, author, created, lastmodified) VALUES ('$name', '$description', '1', '$code', '$client', '$author', '$date', '$date')";
neu:

Code: Alles auswählen

$sql = "INSERT INTO $cfgTab_lay (name, description, deletable, code, idclient, author, created, lastmodified) VALUES ('$name', '$description', '1', `$code`, '$client', '$author', '$date', '$date')";
ok... wer es jetzt nicht sehen konnte ;)
ich habe die einfachen Anführungszeichen ( ' ) bei $code durch die nach hinten gestellten ersetzt ( ` ) ( Shift + Apostroph )
Module zum anschauen:
bei Sven: http://contenido-module.de
bei Pulk : http://spielwiese.pulk.net

Der-Dirigent: http://der-dirigent.de
JUG
Beiträge: 113
Registriert: Fr 20. Sep 2002, 12:24
Wohnort: Karlsruhe
Kontaktdaten:

Beitrag von JUG »

@ sven777:

Habe die Änderung in der fnc_lay.inc.php vorgenommen, dennoch wird mein neuer Layoutcode (insbesondere der Navi-Quelltext, siehe letzter Beitrag) nicht übernommen. Kannst du mir da bitte weiter helfen? Danke.

Grüße
JUG
Sven777b
Beiträge: 503
Registriert: Mi 18. Sep 2002, 00:00
Wohnort: Sachsen
Kontaktdaten:

Beitrag von Sven777b »

was für einen Browser verwendest du ? klingt nach einem non-IE
im Forum Bugs bzw. Bugfixes sind Beiträge zum Thema Submit-Buttons. Das Problem könnte bei dir darin bestehen, dass der Submit-Button falsch interpretiert wird. Dieses Problem hatten wir schonmal und auch gelöst. Ich hab nur gerade nicht die Zeit den Beitrag zu suchen...
Module zum anschauen:
bei Sven: http://contenido-module.de
bei Pulk : http://spielwiese.pulk.net

Der-Dirigent: http://der-dirigent.de
JUG
Beiträge: 113
Registriert: Fr 20. Sep 2002, 12:24
Wohnort: Karlsruhe
Kontaktdaten:

Beitrag von JUG »

Ist der IE 6.0 auf WinXP. Das Layout nimmt er, nur wenn ich den Navi-Quelltext mit ins Layout packe, wird es nicht übernommen.
Sven777b
Beiträge: 503
Registriert: Mi 18. Sep 2002, 00:00
Wohnort: Sachsen
Kontaktdaten:

Beitrag von Sven777b »

Hier die beiden Links aus dem Bugtracker.
Ersteres sollte bei dir die Lösung bringen.
Der zweite Link behandelt zwar ein anderes Problem - die Lösung ist aber die selbe.

http://contenido.de/forum/viewtopic.php?t=280 (Mozilla , Netscape - Bugfix)

http://contenido.de/forum/viewtopic.php?t=204 (Probleme beim bearbeiten..)
Module zum anschauen:
bei Sven: http://contenido-module.de
bei Pulk : http://spielwiese.pulk.net

Der-Dirigent: http://der-dirigent.de
Sven777b
Beiträge: 503
Registriert: Mi 18. Sep 2002, 00:00
Wohnort: Sachsen
Kontaktdaten:

Beitrag von Sven777b »

würdest du mir bitte mal Layout mit Navi zusenden ? dann kann ich es bei mir mal testen und den Fehler suchen. Kontaktvarianten stehen in meinem Profil.
Module zum anschauen:
bei Sven: http://contenido-module.de
bei Pulk : http://spielwiese.pulk.net

Der-Dirigent: http://der-dirigent.de
Gesperrt