返回mysql查询作为特定表行的数组

5q4ezhmt  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(313)

我已经为此工作了大约3天,仍然不知道如何做到这一点,即使我所有的搜索。
以下是我已经完成的工作:
我有一张table在里面 index.php 从mysql数据库获取数据的。当用户单击表中的任何给定行时,我希望 eventDetail.php 要打开的页面。
我还没弄明白:
那我需要 eventDetail.php 运行一个mysql查询,获取上一次单击的表行的数据 index.php 分页并将其存储在数组中,以便使用 eventDetail.php 在需要的地方呼叫。
这是密码 index.php 打开我的 eventDetail.php 页码: index.php ```

这是我到目前为止所做的 `eventDetail.php` 但甚至不确定我是否正确地开始了: `eventDetail.php` ```
<?php

        $db_host = '127.0.0.1'; // Server Name
        $db_user = 'root'; // Username
        $db_pass = 'password'; // Password
        $db_name = 'mydb'; // Database Name

        $conn = mysqli_connect($db_host, $db_user, $db_pass, $db_name);
        if (!$conn) {
            die ('Failed to connect to MySQL: ' . mysqli_connect_error());
        }

    $str=$_GET['str']; // collect the row id

    $queryRow = ("SELECT id, eventName, description FROM mytable WHERE 
    id=:id");

我需要你的帮助 id, eventName, description 从上一页单击的行返回到一个数组,这样我就可以在这个页面上实际使用该数据。

mzmfm0qo

mzmfm0qo1#

多亏了@bobrodes,我终于明白了。
这是你需要的剧本 index.php :

<script>
            $(document).ready(function onClickRow() {

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

            var str=$(this).attr('value'); // Find out which button is clicked, stores its value in variable 'str'

            $(window.location = 'eventDetail.php?str='+str).load('eventDetail.php?str='+'/'+str); // To collect data from database
            })
            })
            </script>

这是你需要的php代码 eventDetail.php :

<?php

$db_host = '127.0.0.1'; // Server Name
$db_user = 'root'; // Username
$db_pass = 'password'; // Password
$db_name = 'mydb'; // Database Name

$conn = mysqli_connect($db_host, $db_user, $db_pass, $db_name);
if (!$conn) {
    die ('Failed to connect to MySQL: ' . mysqli_connect_error());
}

   $str = $_GET['str']; // collect the row id

   $queryRow = ("SELECT id, eventName, description FROM mytable WHERE id='$str'"); // SQL Statement

  $result = mysqli_query($conn, $queryRow); // Execute SQL Query
  $items = array(); // Create an array and store in a variable called $items
  // Statement below fetches the row that was clicked and stores the data in the array $items
  if (mysqli_num_rows($result) > 0) {
  while($row = mysqli_fetch_assoc($result)) {
    $items[] = $row;
  }
  }

  // Statement below separates each item in the array and converts it to a string and stores in variable named $item
  foreach ($items as $item) {
    echo $item['id'];
    echo $item['eventName'];
    echo $item['description'];
  }
   mysqli_close($conn);
   ?>

这会打开的 eventDetail.php 并返回在url中单击的数据库中的表行。然后,您可以编辑页面其余部分的代码,以便在页面上根据需要从该行返回数据。

相关问题