2016-04-11 6 views
0

「詳細」ページへのリンクがある通常のhtmlでリストを作成しました。 URL:index.php?page=userDetails&usersId=10。これは私の挑戦のための正しい解決策を得る場合に変更されるかもしれません:)ブラウザ/リンクを更新してもまだ「ヒット」javascript-function

私は基本的に(GET)idを挿入してPHPに内容を生成するドロップダウンを行いました。

ドロップダウンは次のようになります。この

<select name="users" onchange="showUser(this.value)" class="selectpicker"> 
    <option data-tokens="10" value="10">user-10</option> 
    <option data-tokens="41" value="41">user-41</option> 
    <option data-tokens="9" value="9">user-9</option> 
    <option data-tokens="8" value="8">User-8</option> 
</select> 

<!-- This is where PHP-content will be printed..... --> 
<div id=\"txtHint\"><b>Person info will be listed here...</b></div> 
Javascriptが

function showUser(
{ 
    if(str == "") 
    { 
     document.getElementById("txtHint").innerHTML = ""; 
     return; 
    } 

    else 
    { 
     if(window.XMLHttpRequest) 
     { 
      // code for IE7+, Firefox, Chrome, Opera, Safari 
      xmlhttp = new XMLHttpRequest(); 
     } 

     else 
     { 
      // code for IE6, IE5 
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 
     } 

     xmlhttp.onreadystatechange = function() 
     { 
      if(xmlhttp.readyState == 4 && xmlhttp.status == 200) 
      { 
       document.getElementById("txtHint").innerHTML = xmlhttp.responseText; 
      } 
     }; 

     xmlhttp.open("GET","logic/do.php?action=ajaxReceive&input="+str,true); 
     xmlhttp.send(); 
    } 
} 

(データベースから)Idは$_GET[input]として受信され、すべてが実際に正常に動作し、私ができる。この(関数showUser)のように見えます

現時点で印刷ID。私はIDが記憶されていないブラウザを更新すると

1):

私の問題は2つのことです。私は、これはクッキーやセッションで行うことができると思いますが、私はIDを保持して機能に挿入するので、ユーザー8,10,14、またはこれまでに何を見ていたのですか?

2)同じ問題は、あるページから他のページ全体にリンクする実際のリンクです。私はスーパーエキスパートではないので、これは必要です。すべてを純粋なjavascript/jQueryとして実行することには消極的です。私は私の小さな挑戦:)

に関するいくつかの入力を楽しみにしています ...私はあなたが私のおそらくかなり基本的な問題を理解してほしいので、時々私は

:)少し息を必要とするPHP側で最高のものを修正します

乾杯歓迎

+0

すべてを '$ _SESSION''変数サーバ側にphpで保存できますが、それは現在のセッションでのみ保存され、ブラウザが再起動されると消えます。 – seahorsepip

+0

どのように実際にIDのものをサーバーに格納しますか?彼のPCでクライアント?セッション変数、クッキー、mysql?決定は情報の保存方法、期間、場所などによって異なります。 – seahorsepip

+0

@seahorsepip:私はそれを認識しています。これはログインサイトです。セッションは私と一緒に大丈夫です:) 私は自分のIDのものをmysqlに持っています。私はまだそれを怒らなかった。しかし、それは私にとっては問題ありません。私の考えは、PHPでコンテンツを生成し、ここでフィールドやフォームなどを生成し、そこから作業することでした。それは可能ではありませんか? 意味ID-> javascript-> PHPが新しいHTMLを生成していて、処理が "終了"する可能性があります.....?それは理にかなっていますか? – Nikolaj

答えて

0

window.onbeforeunloadを使用して、ページがアンロードされる前にスクリプト/機能を実行できます。 userIDをPHPスクリプトに送信して、そのuserIDを保存させることができます。

HTML

<element onbeforeunload="yourFunction()"> 

参考:http://www.w3schools.com/tags/ev_onbeforeunload.asp

Javascriptを

window.onbeforeunload = function() { /* Your function send to e.g. PHP here */ } 

jQueryの

$(window).on('beforeunload', function(){ /* Your function send to e.g. PHP here */ }); 
関連する問題