php sql查询条件需要从js里取值,如何从js里取 var变量值?

循环输出了N个联系人,但是需要点击联系人时,去查这个人的对话内容显示,所以取了账号值作查询条件,但要怎么传给php呢?$(this).click(function(){-... 循环输出了N个联系人,但是需要点击联系人时,去查这个人的对话内容显示,所以取了账号值作查询条件,但要怎么传给php 呢?

$(this).click(function () {
--这里省略各种代码---xxxx
var herid3=$(".ChatId").html();

<?php $senduserid= var herid3 <<----------表达类似这样-如何把上边的 var传到这呢?

$get_talks = $db->query("SELECT content,addtime FROM chat" WHERE userid='$userid' AND senduserid='$senduserid' OR userid='$senduserid' AND senduserid='$userid' ORDER BY id DESC LIMIT 20");

$contents = array(); //倒装 对话肉容,不然最新的排最后
while($array = $db2->fetch_array($get_talks))
{ $contents[] = $array; }
$talks = array_reverse($contents);
?>

展开
 我来答
折柳成萌
高粉答主

2018-08-03 · 繁杂信息太多,你要学会辨别
知道顶级答主
回答量:4.4万
采纳率:96%
帮助的人:6213万
展开全部

使用ajax是最佳选择。下面来个示例。

  • html表单:


  •    
  • <!DOCTYPE html><html lang="zh_CN">    <head>        <meta charset="utf-8" />        <title>Untitled Document</title>        <script src="         <script>             ;jQuery(function($){                 $('input#ajax-submit').click(function(){                     $va = $.trim($('input[name=a]').val());                     if(''==$va){                          $('#msg').html('<span style="color:red">您没有输入变量A???</span>');                     }else{                            $data = {                             va:$('input[name=a]').val()                             };                             $.ajax({                                                                     type: 'POST',                                    url: "baidu.php",                                     data: $data ,                                    cache:false,                                        dataType:'json',                                       context: document.body,                                    success: function(res){                                             if('success'==res.r){                                                   $('#msg').html('<span style="color:green">'+res.d+'</span>');                                                return false;                                             }else{                                                 $('#msg').html('<span style="color:red">'+res.d+'</span>');                                              }                                                                             },                                    error : function() {                                                $('#msg').html('<span style="color:red">出事儿了!</span>');                                            return false;                                      }                                });                     }                  });              });         </script>    </head>    <body>        <form id="ajaxform" name="ajaxform" method="post" action="action.php">            <p>            <label for="a">请输入变量A</label><input type="text" name="a" id="a"/>            </p>            <p id="msg"></p>            <p>                    <input  id ="ajax-submit" type="button" value="提交"/>            </p>        </form>    </body></html>
  •    
  • 2. 其对应的PHP文件可对js传递过来的参数进行处理(插入数据库、查询数据库、更新数据库等操作),示例:

  •    
  • <?php/** * @author: suifengtec coolwp.com * @date:   2015-07-21 10:34:35 * @last Modified by:   suifengtec coolwp.com * @last Modified time: 2015-07-21 10:46:52 */function hi_ajax(){    if(        isset($_POST['va'])        &&!empty($_POST['va'])         ){         $a = maybe_need_to_kill_mysql_injection( $_POST['va'] );         $r = array('r'=>'success','d'=>'我是AJAX返回的数据,您传递的a的变量是:'.$a);     }else{        $r = array('r'=>'error','d'=>'js没有传递给我参数');         }     echo json_encode($r);    die();}  function maybe_need_to_kill_mysql_injection( $a ){         $a = stripslashes($a);        $a = htmlspecialchars($a);        $a = mysql_real_escape_string($a);        return $a;}  hi_ajax();
  •    
  • 3.关键点儿

    3.1 是否有输入,没有输入,就不ajax,而友好的进行提示;

    3.2 有输入,ajax,但是在使用ajax进PHP的参数前,要对参数进行安全过滤;

    3.3 在PHP中处理ajax传递过来的参数后,要进行返回,最好将操作结果友好的呈现给浏览器用户。

    4. 示例的截图

    4.1 js判断没有输入变量(变量值为空)

    4.2 因为js的前端修改可能会被修改,所以,要在PHP中再加判断:

    4.3 传递参数正确,并操作成功的返回 

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式