Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 28

Thema: Daten per Javascript versteckt an PHP senden

  1. #1
    Kaiserliche Hoheit
    Registriert seit
    22.02.2005
    Beiträge
    1.558
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard Daten per Javascript versteckt an PHP senden

    Hallo,
    also ich habe ein Javascript, welches mir ermittelt, welchen Browser der Besucher verwendet. Diese Info möchte ich jedoch nicht
    an die URL anhängen da dies hässlich aussieht.Vielmehr möchte ich, dass die Infos versteckt (also per POST-Methode) übertragen werden. Nur wie sag ich's dem JS?
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!
    "Carpe Diem" powered by positiv Feelings

  2. #2
    Kaiser(in)
    Registriert seit
    03.06.2004
    Beiträge
    2.557
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    machs mit einer session, oder schreibs in ein cookie, dass du dann abrufst, oder einen hidden-feld....

  3. #3
    Forum Guru
    Registriert seit
    14.06.2004
    Ort
    Schleswig-Holstein
    Beiträge
    5.439
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Moin!

    Mach ein Formular welches du per post überträgst und trage den Wert per Javascript in ein Hidden-Input-Feld ein.
    Dann steht es die im PHP zur Verfügung.

    G.a.d.M.

    Ronald

  4. #4
    Kaiserliche Hoheit
    Themenstarter

    Registriert seit
    22.02.2005
    Beiträge
    1.558
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Jupp, habe mich nun belesen und komme auch zum Schluss, dass Formulare per JS erzeugt und automatisch verschickt, die beste
    Variante ist.
    Zudem erscheint dieses (komplett per document.write erzeugte) Formular nicht im Seitenquelltext. Erstaunlich...
    "Carpe Diem" powered by positiv Feelings

  5. #5
    HTML Newbie
    Registriert seit
    18.05.2005
    Ort
    Österreich
    Beiträge
    9
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Hi!

    Zitat Zitat von Torty
    Jupp, habe mich nun belesen und komme auch zum Schluss, dass Formulare per JS erzeugt und automatisch verschickt, die beste
    Variante ist.
    Zudem erscheint dieses (komplett per document.write erzeugte) Formular nicht im Seitenquelltext. Erstaunlich...
    Ich habe dasselbe Prolem. Möchte mittels JavaScript die verwendete Client-Auflösung ermitteln und dann an mein PHP-File übergeben, damit dieses dann die Daten weiterverarbeiten kann.

    Hast du zufällig einen Beispielcode von dem automatischen und versteckten Verschicken von Formularen?

    Liebe Grüsse.

  6. #6
    Gast

    Standard

    Die eleganteste Loesung ohne aufwendiges Befuellen von Formularen per javascript (und von vielen live-stat-tools verwendeten) ist folgende:

    Man nehme ein 1-pixel-image, setze als image-source
    den Pfad auf eine php-datei und haenge die gewuenschten Parameter
    per JavaScript an:

    Code:
    <html>
    <body onLoad="document.getElementById&#40;'logimg'&#41;.src='erfassungsscript.php?ref='+document.referrer;">
    [img][/img]
    </body>
    </html>
    in diesem Beispiel wird der Referrer angehaengt.

    Das Erfassungsscript verarbeitet die Daten entsprechend:

    Code:
    <?php
    
    $ref = parse_url&#40;$_GET&#91;"ref"&#93;&#41;;
    
    
    foreach&#40;$ref as $key => $val&#41;
    &#123;
    	$data .= $key." &#58; ".$val."\n";
    &#125;
    
    $handle = fopen&#40;"reflog.txt", "w"&#41;;
    fwrite&#40;$handle, $data&#41;;
    fclose&#40;$handle&#41;;
    ?>
    In diesem Beispiel schreibt es den gelieferten Referrer in eine
    Datei namens "reflog.txt"

  7. #7
    HTML Newbie
    Registriert seit
    18.05.2005
    Ort
    Österreich
    Beiträge
    9
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Hi!

    Das mit dem 1x1 Pixel Bild hab ich schon probiert.

    bild=new Image(100,100);
    bild.src="get.php";

    Aber das hat im Firefox nicht funktioniert.

    Werde mal deine Variante versuchen!

    Danke!

    Liebe Grüsse.

  8. #8
    Kaiserliche Hoheit
    Themenstarter

    Registriert seit
    22.02.2005
    Beiträge
    1.558
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Code folgt in Kürze...fahr jetzt erstmal Heim
    "Carpe Diem" powered by positiv Feelings

  9. #9
    Kaiserliche Hoheit
    Themenstarter

    Registriert seit
    22.02.2005
    Beiträge
    1.558
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Oh, eh ich das noch vergesse hier mal n Tip dazu.
    Der Trick ist einfach sich ein Formular per JS zu bauen. Etwa so:
    Code:
    <script type="text/javascript">
      info = "<form name=\"hiddenform\" action=\"index.php\" method=\"post\">";
      info += "<input name=\"resx\" type=\"hidden\" value=\""+BREITE+"\">";
      info += "<input name=\"resy\" type=\"hidden\" value=\""+HOEHE+"\">";
      info += "<input name=\"\" type=\"submit\" value=\"\" style=\"width&#58;1px; height&#58;1px;\">";
      info += "</form>";
    ..
    Und dieses Formular wird in das Dokument (also die Website) geschrieben automatisch verschickt.
    Code:
      ...
      document.write&#40;info&#41;;
      document.hiddenform.submit&#40;&#41;;
      ...
    </script>
    Ob der Submit-Button zwingend definiert werden muss müsste man mal austesten.
    "Carpe Diem" powered by positiv Feelings

  10. #10
    Gast

    Standard

    Hi!

    Naja, ich hab das jetzt so gemacht (funktioniert mit jedem getesteten Browser)!

    Code:
    <body onLoad="document.getElementById&#40;'image'&#41;.src='getJavaScriptData.php?xAufloesung='+screen.width+'&yAufloesung='+screen.height+'&xBrowserGesamt='+window.outerWidth+'&yBrowserGesamt='+window.outerHeight+'&xBrowserSichtbar='+window.innerWidth+'&yBrowserSichtbar='+window.innerHeight+'&color='+screen.colorDepth+'&visitedSites='+history.length+'&os='+navigator.platform">
        [img][/img] 
    </body>
    Und das Auslesen mit PHP dann wie gewohnt mit $Variable=$_GET["Parameter"];!

    Doch nun stehe ich vor einem neuen Problem. *gg*

    Da in der index.php, in der die JavaScript Daten an PHP übermittelt werden auch noch andere Daten (IP-Adresse usw.) in eine Datei geschrieben werden, bin ich draufgekommen, dass ich eigentlich die ausgelesenen JavaScript Daten im selben File verwenden möchte.

    Gibt es eine Möglichkeit die ermittelten Daten an die selbe Datei zu schicken, wo sie ermittelt wurden?

    Hier noch meine index.php, die ausgeführt wird.

    Code:
    <html>
      <?php
        include_once '../Language/Language.php';
        define &#40;"filename", "ip_logfile.log"&#41;;
        $ip1=getenv&#40;'REMOTE_ADDR'&#41;;
        $ip2=getenv&#40;'HTTP_CLIENT_IP'&#41;;
        $ip3=getenv&#40;'HTTP_X_FORWARDED_FOR'&#41;;
        if &#40;$ip1!=""&#41; &#123;$host1=@gethostbyaddr&#40;$ip1&#41;;&#125; else &#123;$ip1=" ";$host1=" ";&#125;
        if &#40;$ip2!=""&#41; &#123;$host2=@gethostbyaddr&#40;$ip2&#41;;&#125; else &#123;$ip2=" ";$host2=" ";&#125;
        if &#40;$ip3!=""&#41; &#123;$host3=@gethostbyaddr&#40;$ip3&#41;;&#125; else &#123;$ip3=" ";$host3=" ";&#125;
        $from = &#40;$HTTP_REFERER ? $HTTP_REFERER &#58; 'DIRECT LINK'&#41;;
        $browser=getenv&#40;'HTTP_USER_AGENT'&#41;;
        if &#40;$browser==""&#41; &#123;$browser=" ";&#125;	
          $fp=fopen&#40;filename,"ab"&#41;;
          flock&#40;$fp,LOCK_EX&#41;;  // exclusive lock
          fwrite&#40;$fp,time&#40;&#41; . "\t" . $ip1 . "\t" . $host1 . "\t" . $ip2 . "\t" . $host2 . "\t" . $ip3 . "\t" . $host3 . "\t" . $from . "\t" . $browser . "\t" . _getLanguage&#40;&#41; . "\t" . _getSupportedBrowserLanguages&#40;&#41; . "\t"&#41;;
          flock&#40;$fp,LOCK_UN&#41;;  // release the lock
          fclose&#40;$fp&#41;;      
      ?>
      <body onLoad="document.getElementById&#40;'image'&#41;.src='getJavaScriptData.php?xAufloesung='+screen.width+'&yAufloesung='+screen.height+'&xBrowserGesamt='+window.outerWidth+'&yBrowserGesamt='+window.outerHeight+'&xBrowserSichtbar='+window.innerWidth+'&yBrowserSichtbar='+window.innerHeight+'&color='+screen.colorDepth+'&visitedSites='+history.length+'&os='+navigator.platform">
        [img][/img] 
      </body>
    </html>
    Das Schreiben aller Daten sollte in einem Schritt passieren. Wenn ich nun das Ganze Schreiben in die getJavaScript.php verschiebe, passt der Referer nicht mehr, da man dann ja von der index.php kommt und somit der eigentliche Referer überschrieben wird.
    Und ich möchte nicht zweimal die Datei öffnen und schliessen um eben einmal die PHP-ermittelten Daten und einmal die JavaScript-ermittelten Daten zu schreiben!

    Hat da jemand eine Idee, wie ich das lösen könnte?

    Liebe Grüsse.

Ähnliche Themen

  1. Daten senden per POST
    Von Dodo im Forum Flash Forum
    Antworten: 0
    Letzter Beitrag: 21.06.2008, 11:27
  2. Daten schneller Senden!
    Von Ma_rC im Forum Computer - Internet Forum
    Antworten: 6
    Letzter Beitrag: 22.07.2007, 14:24
  3. Daten eingeben und versteckt abspeicher?
    Von Thund3r im Forum HTML & CSS Forum
    Antworten: 3
    Letzter Beitrag: 31.05.2007, 17:22
  4. Formular-Daten vor dem Senden mit JavaScript überprüfen
    Von Tikonteroga im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 1
    Letzter Beitrag: 27.02.2007, 07:06
  5. Daten an Server senden
    Von schemml im Forum HTML & CSS Forum
    Antworten: 1
    Letzter Beitrag: 17.11.2006, 01:04

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •