开发者

Using 2 while loops to get data from 2 tables

开发者 https://www.devze.com 2023-02-12 14:45 出处:网络
I\'m trying to get an id from the users database so that I can link to about.php?id=$id1 and I\'m using 2 while loops to do that. I end up getting what I want, about.php?id=$id1 but there are duplicat

I'm trying to get an id from the users database so that I can link to about.php?id=$id1 and I'm using 2 while loops to do that. I end up getting what I want, about.php?id=$id1 but there are duplicate entries...

Here's the code.

<?php
require("connect.php");
require("header.php");



$max = 5; //amount of articles per page. change to what to want

$p = $_GET['p'];

if(empty($p))

{

$p = 1;

}

$limits = ($p - 1) * $max; 

//view the news article!
$id = isset($_GET['id']) ? $_GET['id'] : false;
if($id && is_numeric($id)){

$id = $_GET['id'];

$sql = mysql_query("SELECT * FROM blogdata WHERE id = '$id'");




while($r = mysql_fetch_array($sql))

{
echo $total;
$id = $r['id'];
$date = $r['date'];
$title = $r['title'];
$content = $r['content'];
$email = $r['author_email'];
$cat = $r['category'];
$author = $r['author'];

$query1 = mysql_query("SELECT * FROM users");
while ($row1 = mysql_fetch_array($query1)){
$id1 = $row1['id'];

echo "<center>
        <table border='0' width='100%' cellspacing='10'>
        <tr>
        <td width='20%' valign='top'><div class='title'><a href=\"?id=$id\">$title</a></div>
                <div class='info'><i>$date</i><br />
                By <a href='$id1'>$author</a><br />
                $cat</div>
        </td>
        <td width='80%' valign='top'>";
        echo nl2br($content); 
        echo "</td>
        </tr>
        </table>
        <hr />
        <a href='index'>&larr; Rewind.</a>
        </center>";

}
}



}else{



//view all the news articles in rows

$sql = mysql_query("SELECT * FROM blogdata ORDER BY id DESC LIMIT ".$limits.",$max") or die(mysql_error());

//the total rows in the table

$totalres = mysql_result(mysql_query("SELECT COUNT(id) AS tot FROM blogdata"),0);       

//the total number of pages (calculated result), math stuff...

$totalpages = ceil($totalres / $max); 

while($r = mysql_fetch_array(开发者_运维百科$sql))

{

$id = $r['id'];
$date = $r['date'];
$title = $r['title'];
$content = $r['content'];
$email = $r['author_email'];
$cat = $r['category'];
$author = $r['author'];

$query1 = mysql_query("SELECT * FROM users");
while ($row1 = mysql_fetch_array($query1)){
$id1 = $row1['id'];

echo "<center>
        <table border='0' width='100%' cellspacing='10'>
        <tr>
        <td width='20%' valign='top'><div class='title'><a href=\"?id=$id\">$title</a></div>
                <div class='info'><i>$date</i><br />
                By <a href='$id1'>$author</a><br />
                $cat</div>
        </td>
        <td width='80%' valign='top'>";
        echo nl2br($content); 
        echo "</td>
        </tr>
        </table>
        <hr />
        </center>";

}
}
//close up the table

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

$page = $_GET['p'];

for($i = 1; $i <= $totalpages; $i++)
{ 
    if ( $page == $i ) {
        echo "<b>$i</b>";
    } else {
        echo "<a href='?p=$i'>$i</a>";
    }
    if ($i < $totalpages)
        echo " <font color=\"#666\">&bull;</font> ";
}
}


echo "<br />";
require("footer.php");
?>


Couldn't fully get your question, but does SELECT DISTINCT column_name FROM table help you? It selects only distinct rows from a table.

0

精彩评论

暂无评论...
验证码 换一张
取 消