在 URL 中发送数据以查看所选产品的单一记录

Sarwan Soomro 2023年1月30日 2022年5月13日
  1. 从数据库表中选择所有产品
  2. 在 URL 中使用 details.php?pid=(dynamic value) 发送数据
  3. 在 URL 中使用 PODS 样式 MySQL 发送 ID
  4. 在 URL 中了解 PODS 发送数据
  5. 根据所选产品 ID (Pid) 获取记录
在 URL 中发送数据以查看所选产品的单一记录

在本文中,我们将讨论如何在 URL 中发送数据以查看所选产品的单条记录。

从数据库表中选择所有产品

下面的代码解释了如何从 MySQL 数据库中获取数据并创建一个 myproducts.php 页面。

<!DOCTYPE html>  
<body align='center'>  
<head>  
    <title> View product detail </title>  
    <link rel="stylesheet" href="style.css">  
</head>  
<form action="myproducts.php" method="post" align="center">  
    <input type="submit" name="select" value="Show all products"/>  
</form>
<?php
//your database connection   
//The database file is included in the tutorial directory  
require_once ('db.php');  
//On submit  
if (isset($_POST['select']))  
{  
    //execute the mysql_query(); query to select all records from the cart table  
    //You can also find the sql dump file for the tabe in the directory  
    $response = mysqli_query($connect, 'SELECT * FROM cart');  
    echo "<table border='2' align='center'>  
<H2 align='center'> All Products </h2>
<tr>
<th>ID</th>
<td>Product Name</td>
<td>Price</td>
<td>Quantity</td>
<td>IP Rating</td>
</tr>";
//fetch records and store in the array using mysqli_fetch_array(); function
    while ($fetch = mysqli_fetch_array($response));
    {
        echo "<tr>"; 
        //echo array['index'] that contains product id which is a primary key
        //You will use this id later to dynamically retrieve records for the selected id which is now printed in the hyper reference
        //we are also using rawurlencode(); function for security which encodes your sensitive id information.
        ?><td><a href="details.php?pid=<?php echo rawurlencode($fetch['id']); ?> /">
        <?php echo $fetch['id']; ?>  </a> </td>
        <?php
        //fetch data from the cart table and create dynamic table in this while loop  
        echo "<td>" . $fetch['productname'] . "</td>";
        echo "<td>" . $fetch['price'] . "</td>";
        echo "<td>" . $fetch['quantity'] . "</td>";
        echo "<td>" . $fetch['IPrating'] . "</td>";
        echo "</tr>";
    }  
    echo "</table>";
    mysqli_close($connect); // close database connection   
}
?>
</body>
</html>

输出:

显示所有产品

在 URL 中使用 details.php?pid=(dynamic value) 发送数据

我们可以使用任何表属性作为你的 ID,包括字符串。我们可以在 HTML 元素中回显它,然后使用 $_GET['pid']; 方法来检索它。

其余的取决于我们想要如何操作动态 ID 的要求。

<!DOCTYPE html>  
<body align='center'>  
<a href='myproducts.php'> Main Page </a>  
    <head>  
    <title> URL ID FETCH SINGLE RECORD FROM PRODUCTS  </title>  
    <link rel="stylesheet" href="style.css">
    </head>

在 URL 中使用 PODS 样式 MySQL 发送 ID

myproducts.php 文件中,我们学习了如何执行以下操作:

<a href="details.php?pid=<?php echo rawurlencode($fetch['id']); ?> /"> 
<?php echo   $fetch['id']; ?> </a>

这是 PHP 中用于使 URL 动态化并发送 ID 的最常用方法。

一旦我们创建了动态的超引用,我们就可以使用 $_GET['id']; 并将其存储在变量中。这样,我们可以在这个选定的 ID 上使用任何逻辑。

由于它来自循环结构内,它会在通过 mysqli_fetch_array(); 获取数据时更改 ID。

代码(products.php):

<?php
require "db.php";
//get your id from the URL
$id=$_GET['pid'];
$query="SELECT *  FROM cart where id=?";
if($param = $connect->prepare($query))
{
    $param->bind_param('i',$id);
    $param->execute();
    $response = $param->get_result();
    $response->num_rows;
    $field=$response->fetch_object();
}
?>

在 URL 中了解 PODS 发送数据

这里要注意的最重要的部分是使用 PODS 样式的数据库方法。

检查 SQL 查询。它与我们在 MySQL 中使用的不同,因为它是 PODS。

简而言之,我们使用了 bind_Param();,这是一个 PHP 函数,可将参数连接到 SQL 查询中的变量标识符。

get_result(); 产生了一个数组。因此,每个元素都与查询结果的一行相关联。

fetch_object(); 返回结果集的当前行,而 num_rows(); 返回结果集中的行数。

<h3 align="center"> Selected product </h3>
<table align='center' border='2'>
<th> Id</th>
<th> Product Name</th>
<th> Price</th>
<th> Quantity</th>
<th> Other</th>

根据所选产品 ID (Pid) 获取记录

在下面的代码中,我们使用了 PODS 结构来获取包含针对 product.php?pid='dynamic id' 的数据的数组索引。

<?php
echo "<tr ><td>$field->id</td>  
<td>$field->productname</td>  
<td>$field->price</td>  
<td>$field->quantity</td>  
<td>$field->IPrating</td></tr>  
";
echo "</table>";  
}else{
    echo $connection->error;  
}
?>
</body>
</html>

输出:

通过 ID 查看产品

Sarwan Soomro avatar Sarwan Soomro avatar

Sarwan Soomro is a freelance software engineer and an expert technical writer who loves writing and coding. He has 5 years of web development and 3 years of professional writing experience, and an MSs in computer science. In addition, he has numerous professional qualifications in the cloud, database, desktop, and online technologies. And has developed multi-technology programming guides for beginners and published many tech articles.

LinkedIn

相关文章 - PHP URL