用rand函数排序的语句不起作用

用rand函数排序的语句不起作用

我有三类潜在客户的数据表




未标明


现在,我想做的是,当用户单击“热销”时,系统将从“热销”下的潜在客户数据类别中提取5条随机记录。

下面是我的代码:

<?php
session_start();
include 'db_connect.php';
require 'logincheck.php';
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

$username = mysqli_real_escape_string($conn, $_SESSION['uiduser']);
$fullname = mysqli_real_escape_string($conn, $_SESSION['fullname']);

if(isset($_GET["q"])) {


// posted data
$query_q = mysqli_real_escape_string($conn, $_GET['q']);
$status="Fresh";

$sql = "SELECT * FROM adv_leads WHERE adv_type='".$query_q."' AND
adv_status='".$status."' ORDER BY RAND() LIMIT 5";
$result = mysqli_query($conn, $sql);

if(mysqli_num_rows($result) > 0){}else{ echo "error";}


while($build = mysqli_fetch_assoc($result))
{
echo '<tr class="select">';
              echo '<td>'.$build['adv_uid_leads'].'</td>';
              echo '</tr>';
}}
?>


这里

q= Type of lead i.e.HOT, COLD
Status= Fresh Leads


如果我删除WHERE子句,系统运行正常,但使用WHERE子句,则返回“ 0”结果。

最佳答案

朋友,我可能知道您数据库的价值,因为无论何时使用
"adv_type='".$query_q."'",它将检查完全匹配,而不是您可以在查询中使用like

例如:

 $sql = "SELECT * FROM adv_leads WHERE adv_type LIKE'%".$query_q."%' AND
adv_status='".$status."' ORDER BY RAND() LIMIT 5";

关于php - 用rand函数排序的语句不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49468022/

10-10 05:06