tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
6
ZUGRIFFE
364
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    karl123 karl123 ist offline Mitglied Silber
    Registriert seit
    Nov 2008
    Ort
    Püttlingen (Saarland)
    Beiträge
    91
    GutenTag,

    ich beziehe mich auf mein Posting am 11.12. "Variablen weitergeben" im php-Forum. Man hat dort versucht, mir zu helfen, ist aber nicht richtig gelungen. Wahrscheinlich habe ich das Problem nicht ausreichend formuliert. Hier nun ein neuer Ansatz:

    Auf den Seiten meines Webauftritts möchte ich eine Zusatzinformation darstellen, der Benutzer kann das aber ausschalten und wieder einschalten. Das wird so realisiert, dass beim Anklicken eines Symbols eine Javascript-Funktion den CSS-Stil display von inline auf none und umgekehrt schaltet. Wenn der Benutzer nun die Seite verlässt und eine andere Seite innerhalb meines Webauftritts, ist der Zustand der Zusatzinformation verloren.

    Ich könnte bei jedem Link auf eine meiner Seiten, die Zustandsinformation per GET weitergeben; das möchte ich aber nicht.
    Ich könnte bei jeder Zustandsänderung die Seite neu laden und den Zustand per POST weitergeben.

    Ich habe derzeit eine SESSION, in der ich den Zustand idealerweise speichern könnte. Was ich jetzt nur brauche, ist das Laden der SESSION dann, wenn der Benutzer eine Änderung der Zustandsinformation per Klick startet.

    Ich habe noch nie etwas mit AJAX gemacht, denke aber, dass es ohne AJAX nicht funktioniert. Kann mir jemand da helfen?
     

  2. #2
    kuddeldaddeldu kuddeldaddeldu ist offline Mitglied Diamant
    Registriert seit
    Dec 2007
    Ort
    Bremen
    Beiträge
    3.418
    Hi,

    da Du nur ein serverseitiges Script anstossen möchtest und den Response nicht brauchst, könntest Du einfach ein image-Object in Javascript anlegen, dessen src Du bei Bedarf neu setzt auf "savestate.php?details=1" bzw. "savestate.php?details=0".
    Damit Du keine Probleme mit dem Cache bekommst, hängst Du als unbenannten Parameter noch den aktuellen Zeitstempel dran.

    LG
     
    Da es nötig zu werden scheint: Ich leiste hier keinen Support über PN. Stellt Rückfragen zu Euren Problemen bitte in Eurem Thread, dann können alle helfen.

  3. #3
    karl123 karl123 ist offline Mitglied Silber
    Registriert seit
    Nov 2008
    Ort
    Püttlingen (Saarland)
    Beiträge
    91
    Hi,

    Funktioniert prächtig! Hier mein Javascript:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    
    function showSitemap() {
        document.getElementById("arrowShow").style.display = "none";
        document.getElementById("arrowHide").style.display = "inline";
        document.getElementById("showmap").style.display = "inline";
        document.getElementById("sitemap").value = "show";
        dummy = new Image();
        dummy.src='Sitemap.php?zeige=show&zeit=<?php echo time(); ?>';
    }
     
    function hideSitemap() {
        document.getElementById("arrowHide").style.display = "none";
        document.getElementById("arrowShow").style.display = "inline";
        document.getElementById("showmap").style.display = "none";
        document.getElementById("sitemap").value = "hide";
        dummy = new Image();
        dummy.src='Sitemap.php?zeige=hide&zeit=<?php echo time(); ?>';
    }

    und hier das PHP-Script:
    PHP-Code:
    <?php
    session_start
    ();
    if (isset(
    $_GET['zeige']) && ($_GET['zeige']=='show' || $_GET['zeige']=='hide')) $_SESSION['sitemap'] = $_GET['zeige'];
    ?>
    Und dann noch der Aufruf im HTML:
    HTML-Code:
        <span id="arrowShow"><a title="show" class="arrowlink" href="#" onclick="showSitemap()">&laquo;&laquo;&laquo;</a></span>
        <span id="arrowHide"><a title="hide" class="arrowlink" href="#" onclick="hideSitemap()">&raquo;&raquo;&raquo;</a></span>
    Vielen Dank für deine Hilfe.
    Noch eine Frage: muss ich das Image-Objekt wieder löschen? Wenn ja, wie?
     

  4. #4
    kuddeldaddeldu kuddeldaddeldu ist offline Mitglied Diamant
    Registriert seit
    Dec 2007
    Ort
    Bremen
    Beiträge
    3.418
    Hi,

    Zitat Zitat von karl123 Beitrag anzeigen
    Funktioniert prächtig!
    Vielen Dank für deine Hilfe.
    Gerne.

    Zitat Zitat von karl123 Beitrag anzeigen
    Noch eine Frage: muss ich das Image-Objekt wieder löschen?
    Nein, warum? Ich würde nicht in den Funktionen jedes Mal ein neues Image-Objekt erstellen. Erstelle eins global und biege in den Funktionen nur den src um.

    LG
     
    Da es nötig zu werden scheint: Ich leiste hier keinen Support über PN. Stellt Rückfragen zu Euren Problemen bitte in Eurem Thread, dann können alle helfen.

  5. #5
    karl123 karl123 ist offline Mitglied Silber
    Registriert seit
    Nov 2008
    Ort
    Püttlingen (Saarland)
    Beiträge
    91
    Hi,

    Global erstellen und dann lokal nutzen kriege ich irgendwie nicht hin. Wahrscheinlich liegt es daran, dass ich den Code des Javascript im Header habe, wo er nicht ausgeführt wird.
    Da gibt es doch irgendwas, damit der Code dort ausgeführt wird, aber das weiß ich nicht mehr. Sonst müsste ich mit body onload arbeiten.
    (Javascript ist nicht so mein Ding; ich nutze es recht selten)
     

  6. #6
    kuddeldaddeldu kuddeldaddeldu ist offline Mitglied Diamant
    Registriert seit
    Dec 2007
    Ort
    Bremen
    Beiträge
    3.418
    Hi,

    Zitat Zitat von karl123 Beitrag anzeigen
    Global erstellen und dann lokal nutzen kriege ich irgendwie nicht hin. Wahrscheinlich liegt es daran, dass ich den Code des Javascript im Header habe, wo er nicht ausgeführt wird.
    Natürlich wird der Code dort ausgeführt. Sonst wären Deine Funktionen ja gar nicht definiert.

    HTML-Code:
    <head>
       <script type="text/javascript">
          dummy = new Image();
    
          function showSitemap() {
    	dummy.src='Sitemap.php?zeige=show&zeit=<?php echo time(); ?>';
          }
    
          function hideSitemap() {
    	dummy.src='Sitemap.php?zeige=hide&zeit=<?php echo time(); ?>';
          }
       </script>
    </head>
    LG
     
    Da es nötig zu werden scheint: Ich leiste hier keinen Support über PN. Stellt Rückfragen zu Euren Problemen bitte in Eurem Thread, dann können alle helfen.

  7. #7
    karl123 karl123 ist offline Mitglied Silber
    Registriert seit
    Nov 2008
    Ort
    Püttlingen (Saarland)
    Beiträge
    91
    Ich habe document.dummy.src... geschrieben.

    Nochmals vielen Dank!
     

Ähnliche Themen

  1. Variable weitergeben
    Von lll192837465lll im Forum PHP
    Antworten: 5
    Letzter Beitrag: 29.01.10, 08:18
  2. Variable per URL weitergeben
    Von D@nger im Forum PHP
    Antworten: 5
    Letzter Beitrag: 09.09.06, 22:15
  3. Variable weitergeben!
    Von a*new*found*flo im Forum Flash Plattform
    Antworten: 3
    Letzter Beitrag: 28.03.06, 15:32
  4. Variable an Popup weitergeben
    Von e-arty im Forum PHP
    Antworten: 8
    Letzter Beitrag: 24.03.05, 13:46
  5. Variable weitergeben
    Von kleiner_muckefuck im Forum C/C++
    Antworten: 4
    Letzter Beitrag: 01.11.03, 16:51