2016-05-31 5 views
-13

私はuserOnlineという名前のdivを持っていますが、これはサーバーからの連絡先がたくさん含まれています。 divのアイテムをクリックすると、アイテムをURLに投稿します。 それを可能にするには?サンプルコードで説明してください。divアイテムのphp onclickをURLに投稿しました

<?php 
session_start(); 

//mail("[email protected]","hhhhhh",print_r($_REQUEST,TRUE)); 
define('HOST','xxxxxxxxxxxxx'); 
define('USER','xxxxxxxxxxxxxx'); 
define('PASS','xxxxxxxxxxxxxxx'); 
define('DB','xxxxxxxxxxxxxxxxx'); 

$con = mysqli_connect(HOST,USER,PASS,DB); 
require_once 'include/DB_Functions.php'; 
if (!isset($_SESSION['email'])){ 
    ?> 
    <script> 
    window.location = 'login2.php'; 
    </script> 
<?php 
} 


$db = new DB_Functions(); 

$response = array("error" => FALSE); 
if (isset($_POST['sender_email'])&& isset($_POST['reciver_email'])&& isset($_POST['data'])) { 

    // receiving the post params 

    $sender_email = $_SESSION['email']; 
    $_POST['sender_email']=$_SESSION['email']; 
    $reciver_email = $_POST['reciver_email']; 
    $data =$sender_email.' : '. $_POST['data']; 

     ///echo $sender_email; 
     //die(); 

     // create a new chat 
     $user_data = $db->storeData($data,$sender_email,$reciver_email); 
     //die; 
     if ($user_data) { 
      // chat stored successfully 
      $response["error"] = FALSE; 
      // $response["uid"] = $user_data["unique_id"]; 
      $response["user_data"]["sender_email"] = $user_data["sender_email"]; 
      $response["user_data"]["reciver_email"] = $user_data["reciver_email"]; 
      $response["user_data"]["data"] = $user_data["data"]; 
      $response["user_data"]["created_at"] = $user_data["created_at"]; 

      echo json_encode($response); 
     } 
         } 

は、ここで私は、私は、私はちょうどそれが私を教えてください作っする方法を、私は任意の連絡先をクリックするとこのページにsender_emailreciver_emailを送りたいのdiv項目のクリックに送信するためのAntのデータを投稿したいですコード

  if (isset($_REQUEST['sender_email'])&& isset($_REQUEST['reciver_email'])&& isset($_REQUEST['fatch_server_data'])) { 

          $sender_email = $_REQUEST['sender_email']; 
         $reciver_email = $_REQUEST['reciver_email']; 

     $sql = "select * from user_data WHERE (sender_email='$sender_email' AND reciver_email='$reciver_email') OR 
     (reciver_email ='$sender_email' AND sender_email='$reciver_email')" ; 

     //$sql = "select * from user_data"; 
          $res = mysqli_query($con,$sql)or mysql_error(); 
     $resultt = array(); 
      while($row = mysqli_fetch_array($res)){ 
       array_push($resultt, 
       array(

       'data'=>$row[3], 
       'created_at'=>$row[4] 
       // 'email'=>$row[3] 
       )); 
      } 
      //   }   
json_encode(array("resultt"=>$resultt)); 

mysqli_close($con); 

?> 

<?php 
define('HOST','xxxxxxxxxxxxx'); 
define('USER','xxxxxxxxxxxxx'); 
define('PASS','xxxxxxxxxxxxxxxx'); 
define('DB','androidapi2'); 

$con = mysqli_connect(HOST,USER,PASS,DB); 

$sql = "select * from users"; 

$res = mysqli_query($con,$sql); 
$result = array(); 

    while($row = mysqli_fetch_array($res)){ 
    array_push($result, 
    array(
    // 'id'=>$row[0], 
     'email'=>$row[3], 
)); 
} 
json_encode(array("result"=>$result)); 
mysqli_close($con); 

?> 
<html> 
<head> 
<style> 
#userschat { 
    font-family:tahoma; 
    font-size:12px; 
    color:black; 
    border: 5px teal solid; 
    height: 325px; 
    width: 300px; 

overflow-y:scroll; 
} 
#usersOnLine { 

    font-family:tahoma; 
    font-size:12px; 
    color:black; 
    border: 10px teal solid; 
    height: 625px; 
    width: 300px; 
overflow-y:scroll; 
} 
#allcon{ 
    margin-bottom: 15px; 
    font-family:tahoma; 
    font-size:12px; 
    color:black; 
    border: 10px teal solid; 
    height: 40px; 
    width: 300px; 
} 
#contact{ 
    float:right; 
} 
#all{ 
    float:left; 
} 
#data { 
    width: 250px; 
    height: 30px; 
    border: 5px teal solid; 
    float:left; 
    margin-top:1px; 
} 

#send { 
    border: 5px teal solid; 
    width: 57px; 
    height: 30px; 
    float:right; 
    margin:1px; 
} 
.container{ 
    width:970px; 
    height:auto; 
    margin:0 auto; 
} 
#messageForm{ 

} 
.clickAble{ 
        display: inline-block;; 
        cursor:pointer; 
       } 

</style> 
<meta http-equiv="refresh" content="600"> 
</head> 
<body bgcolor="beige">> 
<div class="container"> 
<h2><a href="logout2.php">Logout</a></h2> 
<div id = "welcome"><h2>Welcome to Chat</h2> 
<?php echo $_SESSION['email']; ?> 
</div> 

<div id = "all"> 
<h1> Chat Box</h1> 
<div id="receiver"> 
       <h3>receiver</h3> 
       <!-- NOTICE THAT THIS IS NEW NOW... --> 
       <!-- IT'S IMPORTANT THAT YOU HAVE THIS PARAGRAPH EXACTLY AS IT IS HERE --> 
       <p class='bubbled-data'></p> 
      </div> 
<div id="sender"><h3>sender</h3> 
    <?php echo $_SESSION['email']; ?> 
    </div> 
<div id="userschat"> 
<h4 style = " margin-top: 4px; margin-left: 7px"> 
<?php 
foreach($resultt as $key => $val) 
{ 
    echo $val['data']; 
    echo "<br>"; 
    echo $val['created_at']; 
    echo "<br>"; 
    echo "<br>"; 
} 
?> 
</h4> 
</div> 
<form id="messageForm" action = "<?php $_PHP_SELF ?>" method = "POST"> 

    <input type="hidden" name="sender_email" id="sender_email" value=""> 
    <input type="hidden" name="reciver_email" id="reciver_email" value=""> 
<input type="text" name="data" id="data" placeholder="data" onFocus="fun1(this)" onBlur="fun2(this)" required="" /> 

    <input id="send" type="submit" value="Send"> 
</form> 
</div> 

<div id = "contact"> 
<div id = "allcon"> 
    <h1 style = " text-align: center; margin-top: 4px;"> All Contacts </h1> 
</div> 
<div id="usersOnLine"> 
<h2 style = " margin-top: 4px; margin-left: 7px"> 
<?php 
      foreach($result as $key => $val){ 
      echo "<span class='clickAble'>" . $val['email'] . "</span>"; 
      echo "<br>"; 
      echo "<br>"; 
     } 
?> 
</h2> 
</div> 
</div> 

</div> 

     <!-- JAVASCRIPT - JQUERY --> 
     <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script> 
     <script type="text/javascript"> 

     var objDiv = document.getElementById("userschat"); 
     objDiv.scrollTop = objDiv.scrollHeight; 

    (function ($) { 
     $(document).ready(function (e) { 
      var receiver = $("#receiver"); 
      var clickAbles = $(".clickAble"); 

      receiver.find(".bubbled-data").text(localStorage.getItem("nameValue")); 
      $("#reciver_email").val(localStorage.getItem("nameValue")); 
      // BIND THE clickAble SPAN TO AN ON-CLICK EVENT... 
      // SO THAT WITH EACH CLICK, YOU CAN SIMPLE APPEND THE CONTENT OF THAT SPAN TO THE RECEIVER DIV 
      clickAbles.on("click", function (evt) { 
       var nameValue = $(this).text(); 
       receiver.find(".bubbled-data").text(nameValue); 

       $("#reciver_email").val(nameValue); 
       localStorage.setItem("nameValue", nameValue); 


      }); 

     }); 
    })(jQuery); 
     </script> 


</body> 
</html> 
+4

なぜAJAXを使用していませんか? – keziah

+0

あなたはどこにいるのですか?あなたのコードでは、AJAX POSTを実行してjQuery '$ .post()'関数を見たい場合は、jQueryを使用しています。 – David

+0

あなたはそれを作る方法をいくつかのコードを助けてくれますか? – Malik

答えて

1

あなたはAJAXを使用する必要があります。次に例を示します。

$('.clickAble').on('click', function() { 
    $.ajax({ 
    url: 'your_url', 
    type: 'POST', 
    data: $('#messageForm').serialize(), 
    success: function(ret) { 
     console.log('success', ret); 
    }, 
    error: function(err) { 
    console.log('error', err); 
    } 
    }); 
    return false; 
}); 

​​

参考:jQuery.ajax()ドキュメント

+0

私はこのコードを貼り付けますか? – Malik

+0

(function($){ $(document).ready(function(e){ –

+0

ここには例があります)https://jsfiddle.net/rcxwgkfo/2/ –

関連する問題