Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/227.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 Echo-popout div中的Echo结果只回显数据库中的第一个结果_Php_Mysql_Database_Echo - Fatal编程技术网

PHP Echo-popout div中的Echo结果只回显数据库中的第一个结果

PHP Echo-popout div中的Echo结果只回显数据库中的第一个结果,php,mysql,database,echo,Php,Mysql,Database,Echo,我有一个显示数据库结果的搜索引擎,并使用了一个显示模式,当用户单击“单击我以获取更多联系信息”时会打开一个弹出框,但是目前无论在任何结果上单击哪个链接,都会回显相同的联系信息,这是第一个结果中的信息 有没有人能给我指出正确的方向,告诉我如何去做,这样当用户点击“点击我获取更多联系信息”时,正确的联系信息就会出现在结果的弹出框中 谢谢你的帮助,非常感谢 echo "<div id='myModal' class='reveal-modal'>"; echo "<h1>Mod

我有一个显示数据库结果的搜索引擎,并使用了一个显示模式,当用户单击“单击我以获取更多联系信息”时会打开一个弹出框,但是目前无论在任何结果上单击哪个链接,都会回显相同的联系信息,这是第一个结果中的信息

有没有人能给我指出正确的方向,告诉我如何去做,这样当用户点击“点击我获取更多联系信息”时,正确的联系信息就会出现在结果的弹出框中

谢谢你的帮助,非常感谢

echo "<div id='myModal' class='reveal-modal'>";
echo "<h1>Modal Title</h1>";
echo "<p>Contact:" . $row['contact'] . "</p>";
echo "<a class='close-reveal-modal'>&#215;</a>";
echo "</div>";

echo "<a href='#' data-reveal-id='myModal'>Click Me For More Contact Info</a>";
echo”“;
呼应“情态标题”;
回声“触点:”$行['contact']。“

”; 回声“;
编辑:搜索结果显示良好,仅当结果回显到弹出div时,以下是我的代码:

include('config.inc');



    // Check and set username
$username = (isset($_SESSION['username']) ? $_SESSION['username'] : 'guest');

// Check and set category
$category = (!empty($_GET['category']) ? $_GET['category'] : null);

// Check and set search
if(!empty($_GET['search'])){
$search = $_GET['search'];
}else{
$search = null;
}

// Check that $_GET['price'] is ASC if not set to DESC
// as static values its ok to directly put in the query 
if(isset($_GET['price']) && $_GET['price'] == 'ASC'){
$price = 'ASC';
}else{
$price = 'DESC';
}

if ($search !== null){

$sql = "SELECT * FROM people WHERE MATCH (lname,fname) AGAINST (:search IN BOOLEAN MODE)";

$q   = $conn->prepare($sql) or die("failed!");
// Bind the params to the placeholders
$q->bindParam(':search', $search, PDO::PARAM_STR);
$q->execute();
}

if ($search !== null && $category !== null){

$sql = "SELECT * FROM people WHERE MATCH (lname,fname) AGAINST (:search IN BOOLEAN MODE) AND category = :category";

$q   = $conn->prepare($sql) or die("failed!");
// Bind the params to the placeholders
$q->bindParam(':search', $search, PDO::PARAM_STR);
$q->bindParam(':category', $category, PDO::PARAM_STR);
$q->execute();
}

if ($category !== null && $search !== null && isset($price)){

$sql = "SELECT   *
        FROM     people
        WHERE    MATCH (lname,fname) AGAINST (:search IN BOOLEAN MODE)
        AND      category = :category
        ORDER BY price ".$price;

$q = $conn->prepare($sql);
// Bind the params to the placeholders
$q->bindParam(':search', $search, PDO::PARAM_STR);
$q->bindParam(':category', $category, PDO::PARAM_STR);
$q->execute();
}

if ($category == null && $search !== null && isset($price)){

$sql = "SELECT   *
        FROM     people
        WHERE    MATCH (lname,fname) AGAINST (:search IN BOOLEAN MODE)

        ORDER BY price ".$price;

$q = $conn->prepare($sql);
// Bind the params to the placeholders
$q->bindParam(':search', $search, PDO::PARAM_STR);
$q->execute();
}

if ($q){

//declaring counter
    $count=0;
    while($r = $q->fetch(PDO::FETCH_ASSOC)){
    $row = $r;

    $fname = $row['fname'];
    $lname = $row['lname'];
    $firstname = $row['firstname'];
    $surname = $row['surname'];

//counter equals
$count++;

//insert an image every 5 rows
    if($count==5){
    $count=0;
   echo "<table width='50%' style='border-bottom:1px solid #000000;'";
echo "<tr>";
echo "<td>";
echo "<div id='page-wrap'>";
echo "<div class='discounted-item freeshipping'>";

echo "<a href='images/box1.png' rel='lightbox'><img src='images/box1.png' width='20%' height='98%' /></a>";


echo "<div class='reasonbar'><div class='prod-title' style='width: 70%;'>AN AD CAN GO HERE</div><div class='reason' style='width: 29%;'><b>Ad Company</b></div></div>";

echo "<div class='reasonbar'><div class='prod-title1' style='width: 70%;'>Description about the advert from a company</div><div class='reason1' style='width: 29%;'>Category: Advert</div></div>";

echo "<div class='reasonbar'><div class='prod-title2' style='width: 70%;'>HELLO, User</div><div class='reason2' style='width: 29%;'></div></div>";


echo "</td>";
echo "</tr>";
echo "</td>";
echo "</tr>";
echo "</table>";
}




echo "<table width='50%' style='border-bottom:1px solid #000000;'";
echo "<tr>";
echo "<td>";
echo "<div id='page-wrap'>";
echo "<div class='discounted-item freeshipping'>";

echo "<a href='./img/users/" . $row['category'] . "/" . $row['username'] . "/" . $row['filename'] . "' rel='lightbox'><img src=\"./img/users/" . $row['category'] . "/" . $row['username'] . "/" . $row['filename'] . "\" alt=\"\" width='15%' height='80%' /></a>";


echo "<div class='reasonbar'><div class='prod-title' style='width: 70%;'>" .$row['fname'] . "</div><div class='reason' style='width: 29%;'><b>". $row['firstname'] . " " . $row['surname'] ."</b></div></div>";

echo "<div class='reasonbar'><div class='prod-title1' style='width: 70%;'>" .   $row['lname'] . "</div><div class='reason1' style='width: 29%;'>Category:<br /> ".   $row['category'] . "</div></div>";

echo "<div class='reasonbar'><div class='prod-title2' style='width: 70%;'>Contact:" . $row['contact'] . "</div><div class='reason2' style='width: 29%;'>Price: &pound;".    $row['price'] . "</div></div>";



echo "</td>";
echo "</tr>";
echo "</td>";
echo "</tr>";
echo "</table>";

echo "<div id='myModal' class='reveal-modal'>";
echo "<h1>Modal Title</h1>";
echo "<p>Contact:" . $row['contact'] . "</p>";
echo "<a class='close-reveal-modal'>&#215;</a>";
echo "</div>";

echo "<a href='#' data-reveal-id='myModal'>Click Me For A Modal</a>";


}


}

else
echo "No results found for \"<b>$search</b>\"";
包括('config.inc');
//检查并设置用户名
$username=(isset($_会话['username'])?$_会话['username']:'guest');
//检查并设置类别
$category=(!empty($\u GET['category'])?$\u GET['category']:null);
//检查并设置搜索
如果(!empty($\u GET['search'])){
$search=$_GET['search'];
}否则{
$search=null;
}
//如果未设置为DESC,请检查$u GET['price']是否为ASC
//作为静态值,可以直接放入查询中
如果(isset($\u GET['price'])&&&$\u GET['price']=='ASC'){
$price='ASC';
}否则{
$price='DESC';
}
如果($search!==null){
$sql=“从匹配(lname,fname)的人员中选择*(:以布尔模式搜索)”;
$q=$conn->prepare($sql)或die(“failed!”);
//将参数绑定到占位符
$q->bindParam(':search',$search,PDO::PARAM_STR);
$q->execute();
}
如果($search!==null&&$category!==null){
$sql=“从匹配(lname,fname)的人员中选择*(以布尔模式搜索)和类别=:类别”;
$q=$conn->prepare($sql)或die(“failed!”);
//将参数绑定到占位符
$q->bindParam(':search',$search,PDO::PARAM_STR);
$q->bindParam(':category',$category,PDO::PARAM_STR);
$q->execute();
}
如果($category!==null&&$search!==null&&isset($price)){
$sql=“选择*
来自人们
其中匹配(lname,fname)与(:在布尔模式下搜索)
和类别=:类别
按价格订购:$price;
$q=$conn->prepare($sql);
//将参数绑定到占位符
$q->bindParam(':search',$search,PDO::PARAM_STR);
$q->bindParam(':category',$category,PDO::PARAM_STR);
$q->execute();
}
如果($category==null&&$search!==null&&isset($price)){
$sql=“选择*
来自人们
其中匹配(lname,fname)与(:在布尔模式下搜索)
按价格订购:$price;
$q=$conn->prepare($sql);
//将参数绑定到占位符
$q->bindParam(':search',$search,PDO::PARAM_STR);
$q->execute();
}
如果($q){
//申报柜台
$count=0;
而($r=$q->fetch(PDO::fetch_ASSOC)){
$row=$r;
$fname=$row['fname'];
$lname=$row['lname'];
$firstname=$row['firstname'];
$LANSAME=$row['LANSAME'];
//计数器等于
$count++;
//每5行插入一个图像
如果($count==5){
$count=0;

echo“从数据库检索数据时,请确保使用
while($row=$req->fetch())
检索所有数据。然后,您必须根据需要选择正确的行


小心,
$row
是一个包含所有行的数组。因此:
$row[0]['contact']
将包含第一行的联系人,
$row[1]['contact']
将包含第二行的联系人,等等。

来自您提供的链接:

只需给你的modal div类“discover modal”和一个唯一的ID(我们将使用该ID启动此modal)
,方法是将“data-discover-ID”属性放在锚点上,单击时插件将“data-discover-ID”属性(在本例中为“myModal”)的值与具有该ID的HTML元素相匹配

目前,你似乎给每个模态相同的id,所以所有模态链接都将以第一个为目标

echo "<div id='myModal".$count."' class='reveal-modal'>";
echo "<h1>Modal Title</h1>";
echo "<p>Contact:" . $row['contact'] . "</p>";
echo "<a class='close-reveal-modal'>&#215;</a>";
echo "</div>";

echo "<a href='#' data-reveal-id='myModal".$count."'>Click Me For A Modal</a>";
echo”“;
呼应“情态标题”;
回声“联系人:“.$row['Contact']”“

”; 回声“;
请发布您的数据库查询。您如何填充其他结果?从您的代码来看,您似乎正在while循环中创建多个弹出框,单击链接时如何调用它们。您是否有办法识别单独的弹出框?您确定不总是打开第一个弹出框,而是打开第一个弹出框与链接相对应的链接。@mrmryb是的,当前它只是打开第一个弹出框,而不是相应的一个,这就是我被卡住的地方,关于如何将它链接到相应链接的想法是什么?您使用的是标准javascript还是任何类型的javascript库?您可以发布弹出函数的代码。有点困惑,如果您使用的是fetchAll(),您就不需要执行while循环了,这似乎是您在
$row[0]['contact']]
中所暗示的。感谢您的帮助,非常感谢我现在就测试它!-现在可以了!!再次非常感谢您!感谢您接受我的答案,很高兴我能提供帮助。祝您好运。