【问题标题】:Show additional result database values on click - UPDATED WITH SOLUTION单击时显示其他结果数据库值 - 已更新解决方案
【发布时间】:2016-06-24 10:08:45
【问题描述】:

我是 PHP/Mysql 的新手,正在尝试通过一些在线教程来学习。一件事我似乎无法理解。

我可以使用常用的SELECT 命令在我的 mysql 数据库中搜索结果,并将结果显示在一个表中,每一行代表一个匹配的数据库条目和所有关联的列:

+--------+--------+--------+--------+
|id      |part    |price   |model   |
+--------+--------+--------+--------+
|1       | a      | 10     | X1     |
+--------+--------+--------+--------+
|2       | b      | 20     | X2     |
+--------+--------+--------+--------+
|3       | c      | 30     | X3     |
+--------+--------+--------+--------+
and so on...

但是我怎样才能分开事物,这样我的结果首先只包括idpart,而pricemodel 只显示在文本区域内,在用户点击之后搜索结果?这样他们就不需要查看大量数据,但可以查看他们感兴趣的搜索匹配的一些相关附加信息?单击的每个搜索都可以更新文本区域以仅显示该结果的附加数据。是否需要包含一些 javascript/jquery 来绑定点击事件,还是可以全部在 PHP 中完成?

谢谢。

对我有用的更新解决方案

如下所示,我执行了以下操作:1) 添加了 class='.rowselect' 为我的搜索结果中的<TR> 绑定一个 点击事件 2)在生成我的时候还添加了一个带有列 id 的 id 搜索结果表

使用此代码:

 $(document).ready(function(){

 $('.rowselect').click(function(){

    var sel_id = $(this).attr('id');
$.post("reported.php", //URL of the page on server
        { // Data Sending With Request To Server
        rowid: sel_id
        },
        function(data,status){ // Required Callback Function
        $('.output').val(data); // textarea has class output
    });
});
});

还有reported.php的PHP

  // $conn to database first, then ...
  // $name= mysqli_real_escape_string($conn, $_POST['rowid']);//-query the database table
  $sql="SELECT price, model FROM db_name entry_id=".$name.";";
  //-run  the query against the mysql query function
  $result=mysqli_query($conn, $sql);
  $row = mysqli_fetch_assoc($result);
  echo "Price: ".$row['price'] ."\n\nModel: ". $row['model'];

【问题讨论】:

    标签: php jquery search mysqli


    【解决方案1】:

    您最初只能使用 SELECT 语句调用前两列并将其显示在表中,表中的结果可以显示为链接,当用户说点击一个 ID 时,您可以进行 POST请求服务器端 (PHP) 上的方法,该方法将响应点击 ID 的附加数据,然后您可以将其填充到文本区域中。

    示例:

    //Send a POST request with id or part
    $id = (int) $_POST['id'];
    $query = "SELECT price,model from your_table where id= ?";
    //more PDO stuff
    

    【讨论】:

    • 好的 - 所以我可以使用 jQuery 来绑定表格中的点击事件,捕获 idpart,然后使用 jQuery.post() 将其发送到 POST 请求?我认为这个例子可以让我做你推荐的事情吗? api.jquery.com/jquery.post - 谢谢!
    • 我摆弄着使用 $.post 发送点击事件,绑定到 id 并按照你的建议从 id 返回一个 sql 搜索!工作得很好。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2015-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-25
    • 2020-07-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多