workaround für aufgeklappte HauptNavi via Sitemap funzt !!!

mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

workaround für aufgeklappte HauptNavi via Sitemap funzt !!!

Beitrag von mvf »

hallo community

auf der suche nach der mglichkeit die navigation aufzuklappen, bin ich auf verschiedene threads gestossen. unter anderem auf eine aussage von timo, dass die navigation nicht dafür ausgelegt ist, und einen hinweis von emmergence glaube ich, dass man doch eine sitemap 'vergwohltätigen' könne.

gesagt getan:
http://dev1.elflein-kosmetik.de/cont46d ... viswitch=0
modul vpsitemap in der hauptnavigationsbox
http://dev1.elflein-kosmetik.de/cont46d ... viswitch=1
modul hauptnavigation in der hauptnavigationsbox

jetzt bin ich dann aber auch schon mit meinem latein am ende
das ganze ist im layout hinterlegt mit

Code: Alles auswählen

if ($naviswitch == 0 ) ... else ...
was muss noch getan werden, damit ich die variable 'naviswitch' immer mit übergeben kann, und wie kann ich nun einen link/button so ausstatten, dass er die variable checked und dann onklick das gegenteil also 0<->1 setzt?
Zuletzt geändert von mvf am Mo 21. Nov 2005, 04:42, insgesamt 4-mal geändert.
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams
mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

Beitrag von mvf »

wenn ich es recht hier im board gelesen habe, ist in diesem fall es wohl am sinnvollsten, die variable in der session mitzführen.

ich habe kein ahnung :(

Code: Alles auswählen

if (!isset($naviswitch)) {
    $sess->register("naviswitch");
    $naviswitch = 0;
}   
damit sollte sie global registriert werden und auf den wert 0 gesetzt, vorausgestzt sie war nicht bereits registriert, richtig?

wird diese variable nun automatich für diese session immer mitgeführt?
kann ich diese auf allen seiten nutzen solange die session nicht endet?
wie kann ich die variable per click ändern?

merci für euren input schon mal vorab.
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams
mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

Beitrag von mvf »

also mit meinen sehr begrenzten php-kenntissen und einer ganzen nacht gefrickel (zum glück sieht mich keiner jetzt, so ganz ohne schlaf :oops: ) die 'frucht' meines bemühens ist online, allerdings nur auf der folgenden seite imlpementiert.

http://dev1.elflein-kosmetik.de/cont46d ... p?idcat=13

der button funktioniert, fast :( denn irgendwie wird der $naviswitch nicht ordentlich übergeben oder irgendwas anderes läuft falsch, denn bei jedem refresh der seite mittels F5 oder click im header oder breadcumb führt zu einem wechsel, das soll aber nu bei click auf den button passieren.

hier der code snipplet. kann mir bitt einer helfen, ich brauche bitte ein erfolgserlebnes bevor ich mit dem schädel auf die tastaur schlage und einschlafe :oops:

Code: Alles auswählen

<?php

if (!isset($naviswitch)) {
        $sess->register("naviswitch");
        $naviswitch = 0;
        }

if ($naviswitch == 0 ) {
   ?>      
<div align="left" style="float:left;">
    <div class="ml1shdwce">
        <div class="ml1shdwtr">
            <div class="ml1shdwbl">
                <div class="ml1wrap">
                    <div class="ml1headl">
                        <div align="left" style="float:left;"><container id="20" name="Kategoriebox Headline"></container></div>
                            <div align="right" style="float:right; padding-right:4px">
                            <form action="<?php $naviswitch = 1; ?>" method="POST">
                            <input type="submit" name="submit" value=""></form>
                            </div>
                    </div>
                    <div class="ml1content1"><container id="21" name="Hauptnavigation" default="Hauptnavigation"></container></div>
                </div>
            </div>
        </div>
    </div>
</div>   

<?php }
  else{
 ?>
<div align="left" style="float:left;">
    <div class="ml1shdwce">
        <div class="ml1shdwtr">
            <div class="ml1shdwbl">
                <div class="ml1wrap">
                    <div class="ml1headl"><div align="left" style="float:left;"><container id="22" name="Kategoriebox Headline"></container></div>
                            <div align="right" style="float:right; padding-right:4px">
                            <form action="<?php $naviswitch = 0; ?>" method="POST">
                            <input type="submit" name="submit" value=""></form>
                            </div>
                    </div>
                    <div class="ml1content"><container id="23" name="Hauptnavigation" default="Hauptnavigation"></container></div>
                </div>
            </div>
        </div>
    </div>
</div>
<?php
};
?> 
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams
mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

Beitrag von mvf »

kann machen was ich will, aber es klappt ned :(

kann mir denn keiner helfen bitte?
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams
mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

Beitrag von mvf »

:motz: verflixt :(

was für möglichkeiten gibt es denn sonst noch eine variable global per click zu setzen ausser javascript, und warum wird die action der form immer ausgeführt wenn mann die seite aufruft?

mittlerweile bastele ich da über 19 stunden am stück dran

ja schmunzelt nur über meine mangelnden php-kenntnisse, aber bitte helft mir auch!
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams
mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

Beitrag von mvf »

wie bereits beschrieben, scheint mittlerweile die variable $naviswitch in die session geschrieben zu werden, da sonst ja nicht bei jedem F5 die navi switchen würde.

wie kann ich denn die die url derart gestalten, dass mir diese auch immer die variable in der url mitausgibt, also

http://dev1.elflein-kosmetik.de/cont46d ... p?idcat=13 und "&naviswitch=1 bzw. 0" soll noch mit augegeben werden.

???

ich verzweifle :(
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

Code: Alles auswählen

<form action="front_content.php" method="GET">
<input type="hidden" name="idcat" value="<?php echo $idcat; ?>">
<input type="hidden" name="naviswitch" value="<?php echo $naviswitch; ?>">
hilft das ?
*** make your own tools (wishlist :: thx)
mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

Beitrag von mvf »

emmergence, zunächst danke, dass überhaupt einer an meinem problem teil nimmt

der aktulle code sieht so aus:

Code: Alles auswählen

<!--  bof: main -->
<?php
if (!isset($naviswitch)) {
        $sess->register("naviswitch");
        }
         
if ($naviswitch == 0 ) {
   ?>     
<div align="left" style="float:left;">
    <div class="ml1shdwce">
        <div class="ml1shdwtr">
            <div class="ml1shdwbl">
                <div class="ml1wrap">
                    <div class="ml1headl">
                            <form action="front_content.php" method="GET">
                            <input type="hidden" name="idcat" value="<?php echo $idcat; ?>">
                            <input type="submit" name="naviswitch" value="<?php echo $naviswitch; ?>"></form>
                    </div>              
                                                            
                    <div class="ml1content1"><container id="21" name="Hauptnavigation" default="Hauptnavigation"></container></div>
                </div>
            </div>
        </div>
    </div>
</div>   

<?php }
  else {
 ?>
<div align="left" style="float:left;">
    <div class="ml1shdwce">
        <div class="ml1shdwtr">
            <div class="ml1shdwbl">
                <div class="ml1wrap">
                
                    <div class="ml1headl">
                            <form action="front_content.php" method="GET">
                            <input type="hidden" name="idcat" value="<?php echo $idcat; ?>">
                            <input type="submit" name="naviswitch" value="<?php echo $naviswitch; ?>"></form>
                    </div>   
                    
                    <div class="ml1content"><container id="23" name="Hauptnavigation" default="Hauptnavigation"></container></div>
                </div>
            </div>
        </div>
    </div>
</div>
<?php
};
?>
    <div align="left" style="float:right;">
        <div class="mainshdwce">
            <div class="mainshdwtr">
                <div class="mainshdwbl">
                    <div class="maincontent">
                        <container id="40" name="MainHeadline"></container>
                        echo der $naviswitch: &nbsp;&nbsp; <?php echo "$naviswitch"; ?>

                    </div>
                </div>
            </div>
        </div>
    </div>
</div>
<!--  eof: main -->
wie übergebe ich denn dort nun bei klick auf den button in der navibox headline den wert 1 oder 0 ?

besten dank nochmal

Nachtrag bei der variante wird die $naviswitch nicht gesetzt
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams
mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

Beitrag von mvf »

ersetze ich die formteile mit

Code: Alles auswählen

                            <form action="front_content.php" method="GET">
                            <input type="hidden" name="idcat" value="<?php echo $idcat; ?>">
                            <input type="submit" name="naviswitch" value="<?php $naviswitch=1; ?>"></form>

respective $naviswitch=0 im 2. teil, dann wird die naviswicht im rechte fenster zwar ausgelesn aber eben wieder bei jedem F5 oder klick auf
Studio bzw Infocenter oder News im Header wechselt diese wieder.

die soll verflixt nochmal nur über den button in der katboxheadline geändet werden :(
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

Code: Alles auswählen

<input type="submit" name="naviswitch" value="<?php $naviswitch=1; ?>">
ähm wie ? wird nicht gehen...

beim ersten

Code: Alles auswählen

<form action="front_content.php" method="GET"> 
<input type="hidden" name="idcat" value="<?php echo $idcat; ?>"> 
<input type="hidden" name="naviswitch" value="1">
<input type="submit" name="submit" value="Absenden">
</form>
beim zweiten

Code: Alles auswählen

<form action="front_content.php" method="GET"> 
<input type="hidden" name="idcat" value="<?php echo $idcat; ?>"> 
<input type="hidden" name="naviswitch" value="0">
<input type="submit" name="submit" value="Absenden">
</form>
tuts nicht ?
*** make your own tools (wishlist :: thx)
mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

Beitrag von mvf »

is online grade

nun steht zwar nach dem klich auf 'navi switchen' alles prima in der URL aber leider nicht mehr geändert, bleibt jetzt einfach 1

ich kann nicht mehr :motz: <- gilt nicht der community !!!

'this prob drives me in sane'
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams
mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

Beitrag von mvf »

TEILERFOLG

geh mal via headerklick auf studio
dann cookies löschen
jetzt nur noch switchen über den button, das funktioniert!

sobald man dann wieder im header auf studio klickt springt es auf 1 und bleibt dann auch.

die links im header entsprechen einem andern kategoriebaum als studio sollte doch aber bei der session egal sein, ich dachte mit

Code: Alles auswählen

if (!isset($naviswitch)) {        
        $sess->register("naviswitch");
        }
würde diese global für die session zur verfüung stehen?

im horizonatlen menu der headerlink studio ist ein redirect in der config des artikels einfach mit 'weiterleitung | haken | front_content.php?idcat=13' verdrahtet.


:?: :?: :?:
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams
mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

Beitrag von mvf »

... und wenn man wie beschrieben
via headerklick auf studio
dann cookies löschen
jetzt nur noch switchen über den button
macht dann kann man auch mit F5 refreshen und die navi bleibt ;)

allerdings eben nur solange bis ich auf irgend etwas anderes klicke :(
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams
mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

Beitrag von mvf »

hier mal der current code für die, die vieleicht noch einsteigen ;)

Code: Alles auswählen

<?php
if (!isset($naviswitch)) {        
        $sess->register("naviswitch");
        }
         
if ($naviswitch == 0 ) {
   ?>     
<div align="left" style="float:left;">
    <div class="ml1shdwce">
        <div class="ml1shdwtr">
            <div class="ml1shdwbl">
                 <div class="ml1wrap">
                    <div class="ml1headl">
                        <div align="left" style="float:left;"><container id="20" name="Kategoriebox Headline"></container></div>
                        <div align="right" style="float:right; padding-right:8px;">
                            <form action="front_content.php" method="GET">
                            <input type="hidden" name="idcat" value="<?php echo $idcat; ?>">
                            <input type="hidden" name="naviswitch" value="1">
                            <input type="image" src="upload/backgrounds/arrow_up.gif" title="Navigation einklappen">
                            </form>
                        </div>
                    </div>            
                    <div class="ml1content1"><container id="21" name="Hauptnavigation" default="Hauptnavigation"></container></div>
                </div>
            </div>
        </div>
    </div>
</div>
  

<?php }
  else {
 ?>
<div align="left" style="float:left;">
    <div class="ml1shdwce">
        <div class="ml1shdwtr">
            <div class="ml1shdwbl">
                 <div class="ml1wrap">
                    <div class="ml1headl">
                        <div align="left" style="float:left;"><container id="22" name="Kategoriebox Headline"></container></div>
                        <div align="right" style="float:right; padding-right:8px; padding-top:1px;">
                            <form action="front_content.php" method="GET">
                            <input type="hidden" name="idcat" value="<?php echo $idcat; ?>">
                            <input type="hidden" name="naviswitch" value="0">
                            <input type="image" src="upload/backgrounds/arrow_down.gif" title="Navigation aufklappen">
                            </form>
                        </div>
                    </div>            
                    <div class="ml1content"><container id="23" name="Hauptnavigation" default="Hauptnavigation"></container></div>
                </div>
            </div>
        </div>
    </div>
</div>
<?php
};
?>
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams
mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

Beitrag von mvf »

so, ich bin nahe dran aufzugeben :(

jetzt warte ich noch ob die tage vieleicht herrB, timo, die halchteranerin oder ein anderer 'senior' sich meiner erbarmt, ansonsten muss ich das vorhaben wohl vorerst mal auf eislegen.

soviel ich auch über session variablen hier im board und n anderen foren lese , es will nicht klappen, dabei ist es sicher nur wieder so eine klitze kleinigkeit :(

dank an emmergence nochmal und erneut der aufruf an die gemeinde ;)
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams
Gesperrt