$_SERVER verträgt sich nicht mit Javascript?

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

  • $_SERVER verträgt sich nicht mit Javascript?

    Hallo,

    in datei.php frage ich Informationen wie $_SERVER['HTTP_REFERER'] und $_SERVER['HTTP_HOST'] ab.

    Das funktioniert eigentlich ganz gut, nur jetzt muss ich die Datei mit <script type="text/javascript" src="datei.php"></script> einbinden.

    Jetzt erhalte ich falsche bzw. unvollständige Informationen. Weiß jemand genau woran das liegt und kann mir sagen, wie ich es hinbekommen, dass ich die Informationen von der Seite erhalte, auf der der JavaScript Code eingesetzt wird?

    Danke für eure Hilfe!

    MfG

  • #2
    Re: $_SERVER verträgt sich nicht mit Javascript?

    Original geschrieben von ComicKopf
    in datei.php frage ich Informationen wie $_SERVER['HTTP_REFERER'] und $_SERVER['HTTP_HOST'] ab.
    Und du fragst sie vermutlich nicht nur ab, sondern gibst sie auch aus ...?
    Das funktioniert eigentlich ganz gut, nur jetzt muss ich die Datei mit <script type="text/javascript" src="datei.php"></script> einbinden.

    Jetzt erhalte ich falsche bzw. unvollständige Informationen.
    Jetzt haben wir von dir nur, wenn schon nicht falsche, dann doch zumindest höchst unvollständige Informationen erhalten.
    Weiß jemand genau woran das liegt
    Ja, sogar ganz genau - an der Zeile 4711!
    (Bin ich gut im Raten? Was anderes bleibt ja nicht, wo du uns doch so viel Quellcode zeigst ...)

    Du wirst ganz einfach die Syntax von Javascript verletzt haben - oder die Ausgabe deines PHP-Scriptes entspricht nicht der, die du eigentlich haben wolltest.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      ok, hier der relevante Code aus dem Script.

      PHP-Code:

      <?php

       $from
      =$_SERVER['HTTP_REFERER'];
       if(
      strlen($from)>150){$from=substr($from,0,147); $from.="...";}

       
      $page=$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
       if(
      strlen($page)>150){$page=substr($page,0,147); $page.="...";}


       
      $update="UPDATE tabelle SET feld1='$page',feld2='$from'";
       
      mysql_query($update);

      ?>

      Es wird auch alles richtig in die Datenbank geschrieben. Es geht nur darum, dass jetzt, wenn das Skript per:
      <script type="text/javascript" src="datei.php"></script>
      aufrufe, genau die source des script-tags als $page angezeigt wird.

      Mein Problem ist: Ich möchte bei $page gerne die Seite, in der das Tag eingebunden wird in der DB abspeichern.

      Kommentar


      • #4
        Ja wenn du <script src="datei.php" ...> schreibst, wird der Browser einen GET-Request an datei.php senden. Genau so, als würdest du die Adresse von datei.php in die Adresszeile des Browsers tippen und Enter drücken.

        <script src="datei.php?from=seite" ...> könnte helfen.

        Kommentar


        • #5
          wie meinst du das mit from=seite?
          was soll ich da übergeben?

          Kommentar


          • #6
            Die Körbchengröße deiner Mutter, eine Schippe Sand und deine Unterhose von gestern - aber bloß nicht die Information, die dir bisher fehlt.

            Kommentar


            • #7
              ich kann doch nicht die information aus $_SERVER übergeben, wenn sie erst in der datei abgefragt werden kann...?

              Kommentar


              • #8
                Original geschrieben von ComicKopf
                ich kann doch nicht die information aus $_SERVER übergeben, wenn sie erst in der datei abgefragt werden kann...?
                Die Informationen aus dem Request, mit dem die Javascript-Ressource angefordert wird, sind für dich sowieso vollkommen uninteressant.


                Entweder nimmst du dir die Information aus $_SERVER zu dem Zeitpunkt, wo sie für dich interessant sind - also im Script, welches das HTML-Dokument erzeugt, welches das Javascript einbindet, und übergibst sie da wie vorgeschlagen als Parameter - oder, wenn das nicht möglich ist, weil das in fremde Seiten eingebunden wird, dann musst du die Besitzer dieser Seiten bitten, entsprechende Info als Parameter an den Aufruf anzuhängen.
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar


                • #9
                  ok, danke

                  Kommentar

                  Lädt...
                  X