Ankündigung

Einklappen
Keine Ankündigung bisher.

Cookie abfrage

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Cookie abfrage

    Hallo an alle
    ich habe folgendes Problem
    Das script dient zur Kontrolle ob Cookies angenommen werden.
    wenn ich das script im Fenster lade dann wird mir als erstes immer die Fehlermeldung angezeigt "Biite aktivier deine Cookie..." wenn ich dann aber die Seite neu lade dann geht das auf einmal.. ich lasse bei meinem Browser alle cookies zu. Wisst ihr warum das so ist? bzw. was kann ich dagegen tun dass gleich das richtige Ergebnis angezeigt wird ohne dass man selbst noch auf den Reload button klicken muss.

    index.php
    Code:
    $AblaufZeit=time()+18000;
    $AktuelleZeit=time();
    setcookie("Zeit",$AktuelleZeit,$AblaufZeit);
    if (isset($_COOKIE['Zeit'])) {
    			$cookietrue = "UPDATE users SET reload = '0'WHERE uid ='".$uid."'";
    			mysql_query($cookietrue) OR die(mysql_error());
    			usersms();
    		}
    else {
    		$reloadon = "SELECT reload FROM users WHERE uid ='".$uid."'";
    		$reload_on = mysql_query($reloadon) OR die(mysql_error());
    		$reloadnow = mysql_fetch_row($reload_on);
    		if ($reloadnow == 0) {
    			$reloadsite = "UPDATE users SET reload = '1'WHERE uid ='".$uid."'";
    			mysql_query($reloadsite) OR die(mysql_error());
    			include "modules/".$module_name."/java.js";
    			}
    		else {
    			$activatecookies = "users SET reload = '0'WHERE uid ='".$uid."'";
    			mysql_query($activatecookies) OR die(mysql_error());
    			echo "<center>Bitte aktivier deine Cookies, ansonsten kannst du keine SMS verschicken</center>";
    			}
    	}
    java.js
    Code:
    <script language="javascript">
    location.href="http://pixahoi.pytalhost.de/modules.php?name=SMS";
    </script>
    Man muss dazu wissen ...die index.php wird über diesen Link geöffnet..http://pixahoi.pytalhost.de/modules.php?name=SMS

    Vielen Dank jetzt schon mal...

  • #2
    Jo wir wissen warum das so ist und du weißt es auch wenn du mal hier unterhalb der Tabelle guckst.
    Diese Erweiterung ist EXPERIMENTELL.
    [...]
    Seien Sie gewarnt und verwenden Sie diese Erweiterung auf eigenes Risiko..

    Kommentar


    • #3
      ja....dafür wird doch die Seite neu geladen! oder nicht? wenn der cookie nicht vorhanden ist wird doch else genommen...so und da erstmal standart in der mysql tabelle 0 für reloadnow ist lädt er erstmal neu..

      oder ??

      Kommentar


      • #4
        Das unformatierte Gewirr da hab ich mir vorm posten gar nicht erst angetan...

        Was gibt denn $reloadnow so aus?

        Und werden $module_name und $uid intern gesetzt?
        Diese Erweiterung ist EXPERIMENTELL.
        [...]
        Seien Sie gewarnt und verwenden Sie diese Erweiterung auf eigenes Risiko..

        Kommentar


        • #5
          $reloadnow gibt 0 aus...so wie es sein soll. $uid und $modul_name werden korrekt gesetzt...

          Kommentar


          • #6
            Zitat von maser2005
            $reloadnow gibt 0 aus...so wie es sein soll.
            Sollte es aber nicht [var_dump($reloadnow)] => entweder FALSE oder ein Array.
            PHP-Code:
            <?php
            if (FALSE == && == && $undefined_var == 0) echo 'blub';

            if (array() == 
            0) echo 'blub zum zweiten';

            /*may be*/
            if ($reloadnow[0] == 0) echo 'blub zum dritten';
            ?>
            Zitat von maser2005
            $uid und $modul_name werden korrekt gesetzt...
            Über Deinem Beispiel steht index.php, nicht Ausschnitt aus index.php...

            Kommentar


            • #7
              Wenn du setcookie() aufrufst, wird vom Webserver ein HTTP-Header an den Client geschickt, mit dem der Client aufgefordert wird, einen Cookie zu setzen. Da die Anfrage des Clients aber schon vorher geschehen ist, kannst du nicht überprüfen, ob der Client das Cookie akzeptiert hat, ohne die Seite neuzuladen, damit eine erneute Anfrage des Clients an den Server gesendet wird, die dann auch eine entsprechende Information über das Cookie enthalten kann, falls es gesetzt wurde.

              Kommentar


              • #8
                Zitat von xabbuh
                Da die Anfrage des Clients aber schon vorher geschehen ist, kannst du nicht überprüfen, ob der Client das Cookie akzeptiert hat, ohne die Seite neuzuladen
                Gerade dieses Neuladen soll sein Code doch erledigen... :wink:

                Kommentar


                • #9
                  Zitat von karl-150
                  Gerade dieses Neuladen soll sein Code doch erledigen... :wink:
                  Achso, dann habe ich seine Frage falsch verstanden. Ich hatte gedacht, dass er sich wundert, warum überhaupt neugeladen werden muss.

                  Kommentar


                  • #10
                    karl-150 danke schon mal für deine Hilfe...kannst du mir aber eben erklären wie der Quelltext jetzt aussehen müsste...versteh irgendwie nicht wie du das meinst....

                    Danke!

                    Kommentar


                    • #11
                      Zitat von maser2005
                      kannst du mir aber eben erklären wie der Quelltext jetzt aussehen müsste...versteh irgendwie nicht wie du das meinst....
                      Zitat von maser2005
                      $reloadnow gibt 0 aus...so wie es sein soll.
                      Das kann nicht sein. Bis jetzt hat PHP bei mir noch jede wahre Bedingung erkannt.

                      Meinst Du nicht vielleicht if ($reloadnow[0] == 0) (mysql_fetch_row() liefert ein Array zurück).

                      Kommentar


                      • #12
                        Danke das war die rätselslösung..

                        Kommentar

                        Lädt...
                        X