Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/262.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php stmt类似产品显示_Php_Mysqli - Fatal编程技术网

php stmt类似产品显示

php stmt类似产品显示,php,mysqli,Php,Mysqli,我正在创建PHP stmt类似产品显示脚本此脚本工作,但不显示类似产品我想显示类似产品标题 这是我的密码 <?php $id=$row['id']; if($stmt = $con->prepare("SELECT title FROM products order by rand() limit 3 ")){ $stmt->execute(); } $result = $stmt->get_result(); if($result->num_rows >

我正在创建PHP stmt类似产品显示脚本此脚本工作,但不显示类似产品我想显示类似产品标题

这是我的密码

<?php 
$id=$row['id'];
if($stmt = $con->prepare("SELECT title
FROM products order by rand() limit 3
")){
$stmt->execute();
}
$result = $stmt->get_result();
if($result->num_rows > 0){
while($row = $result->fetch_array(MYSQLI_ASSOC)){
    //results
}}
?>  
view.php

    <?php
    if(isset($_GET['id'])) {
    include("config.php");
    $id = $_GET['id'];
    $sql = "select * from products where id = '$id'";
         $result = $con->query($sql); 
           if($result->num_rows > 0){           
                    while($row = $result->fetch_assoc()){
                    //results
              }}}
           ?>

确保数据库凭据正常

请尝试下面的代码并让我知道

1使用rand方法进行查询这是您想要的

您将至少插入一条记录

insert into products (id,title,description,image,cat_id) values(1,'product title','product details','product.png',100);
对于测试,查询products表以获取id为1的详细信息

现在,因为Id来自url

出于测试目的:

您可以像以前一样将代码另存为view.php 打开浏览器并输入以下内容

diretory在这里--/view.php?id=1 您可以看到Id为1的Url附加到view.php文件中。由于我们插入了id为1的记录,下面的代码将显示 仅记录id为=1的行,以此类推

<?php

         $dbhost = 'localhost';
         $dbuser = 'root';
         $dbpass = '';
         $dbname = 'anglejs';
         $conn = mysqli_connect($dbhost, $dbuser, $dbpass,$dbname);

         if(! $conn ) {
            die('Could not connect: ' . mysqli_error());
         }
         echo 'Connected successfully<br>';


$id = $_GET['id'];
//check if id is empty
if($id==''){
echo "Id is empty";
exit;
}

         $sql = "SELECT id,title,description,image,cat_id FROM products where id='$id'";
         $result = mysqli_query($conn, $sql);

         if (mysqli_num_rows($result) > 0) {
            while($row = mysqli_fetch_assoc($result)) {
               echo "Id: " . $row["id"]. "<br>";
               echo "Title: " . $row["title"]. "<br>";
                 echo "description: " . $row["description"]. "<br>";
            }
         } else {
            echo "0 results";
         }
         mysqli_close($conn);
      ?>

什么是“类似产品”?一个ID接近搜索产品ID的产品?有相同“名字”的人?具有相同“类别”的人?如果不知道相似的产品是什么,我们不可能知道如何创建查询来查找相似的产品,并且您还列出了表结构-示例数据也会有所帮助。有两个表类别和产品我昨天看到了相同的问题。有着非常相似的评论。在过去的24小时内发生了什么变化?您没有在任何地方使用$id变量吗?你的表格看起来像什么?你想从中得到什么?我想从数据库中得到类似的标题我添加了这段代码,但没有显示相同的标题。你说的相同标题是什么意思。你在找一个特别的头衔还是什么。您正在使用rand函数,这意味着告诉数据库随机选择标题。如果您想要相同的标题,请从sql查询中删除rand。使用此$sql='从产品中选择标题';我添加了不更改产品预览。看来你是糊涂了。首先,您说代码正在工作,但没有显示相同的标题。现在我要求你们删除兰德函数,而你们现在告诉我产品没有变化。请更新你的帖子。把你所有的密码再寄给我。您还可以使用ASC或DESC方法决定记录的显示方式。如果表产品的productid可能是primarykey。例如,$sql='按productId asc从产品订单中选择标题';或$sql='按productId desc从产品订单中选择标题';
create table products(id int(11) primary key auto_increment,title varchar(30),description varchar(30),image varchar(30),cat_id int(11));
insert into products (id,title,description,image,cat_id) values(1,'product title','product details','product.png',100);
<?php

         $dbhost = 'localhost';
         $dbuser = 'root';
         $dbpass = '';
         $dbname = 'anglejs';
         $conn = mysqli_connect($dbhost, $dbuser, $dbpass,$dbname);

         if(! $conn ) {
            die('Could not connect: ' . mysqli_error());
         }
         echo 'Connected successfully<br>';
         $sql = "SELECT id,title,description,image,cat_id FROM products where id='1'";
         $result = mysqli_query($conn, $sql);

         if (mysqli_num_rows($result) > 0) {
            while($row = mysqli_fetch_assoc($result)) {
               echo "Id: " . $row["id"]. "<br>";
               echo "Title: " . $row["title"]. "<br>";
                 echo "description: " . $row["description"]. "<br>";
            }
         } else {
            echo "0 results";
         }
         mysqli_close($conn);
      ?>
<?php

         $dbhost = 'localhost';
         $dbuser = 'root';
         $dbpass = '';
         $dbname = 'anglejs';
         $conn = mysqli_connect($dbhost, $dbuser, $dbpass,$dbname);

         if(! $conn ) {
            die('Could not connect: ' . mysqli_error());
         }
         echo 'Connected successfully<br>';


$id = $_GET['id'];
//check if id is empty
if($id==''){
echo "Id is empty";
exit;
}

         $sql = "SELECT id,title,description,image,cat_id FROM products where id='$id'";
         $result = mysqli_query($conn, $sql);

         if (mysqli_num_rows($result) > 0) {
            while($row = mysqli_fetch_assoc($result)) {
               echo "Id: " . $row["id"]. "<br>";
               echo "Title: " . $row["title"]. "<br>";
                 echo "description: " . $row["description"]. "<br>";
            }
         } else {
            echo "0 results";
         }
         mysqli_close($conn);
      ?>