显示PHP结果?
我需要一些php的帮助。 只是一个小小的解释: (我正在尝试使用此代码显示5个结果显示PHP结果?,php,mysql,html,Php,Mysql,Html,我需要一些php的帮助。 只是一个小小的解释: (我正在尝试使用此代码显示5个结果 $n_id = mysql_real_escape_string ($_GET['id']); $path = ''; if(isset($n_id) && $n_id != "") { $sql = 'SELECT * FROM test2 WHERE id="' . $n_id . '"'; $news = mysql_query($s
$n_id = mysql_real_escape_string ($_GET['id']);
$path = '';
if(isset($n_id) && $n_id != "") {
$sql = 'SELECT * FROM test2 WHERE id="' . $n_id . '"';
$news = mysql_query($sql);
if($result = mysql_fetch_array($news)) {
$title = mysql_result($news,0,"title");
$date = mysql_result($news,0,"date");
echo '<b>' . $title . ' | ' . $date . '</b>
<br/>
<img src="images.php?id='. $n_id .'>';
} else {
header("Location: vendi.php");
}
echo '<br /><a href="/'.$path.'">Back to Archive</a>';
}
$n\u id=mysql\u real\u escape\u字符串($\u GET['id']);
$path='';
如果(isset($n\u id)&&$n\u id!=“”){
$sql='SELECT*FROM test2,其中id=“”.$n_id.”;
$news=mysql\u查询($sql);
如果($result=mysql\u fetch\u数组($news)){
$title=mysql_结果($news,0,“title”);
$date=mysql_结果($news,0,“date”);
回显“.$title.”|“.$date.”
';
}否则{
标题(“位置:vendi.php”);
}
回声“
”;
}
它确实显示,但我希望第一个结果是(图像+新闻标题和其他结果只是标题)。
希望我写清楚了我需要的帮助。
谢谢你在浏览你的结果时,你可以检查你是否在第一个结果中:
$counter = 0;
while ($row = mysql_fetch_array($news)) {
$title = mysql_result($news,0,"title");
$date = mysql_result($news,0,"date");
echo '<b>' . $title . ' | ' . $date . '</b>';
if ( $counter == 0 ) {
echo '<br /><img src="images.php?id='. $n_id .'>';
}
}
$counter=0;
while($row=mysql\u fetch\u数组($news)){
$title=mysql_结果($news,0,“title”);
$date=mysql_结果($news,0,“date”);
回显“.$title.”|“.$date.”;
如果($counter==0){
回声“
”;
}
}
这应该可以
$n_id = mysql_real_escape_string ($_GET['id']);
$path = '';
if(isset($n_id) && $n_id != "") {
$sql = 'SELECT * FROM test2 WHERE id="' . $n_id . '"';
$news = mysql_query($sql);
$first = TRUE;
if($result = mysql_fetch_array($news)) {
$title = mysql_result($news,0,"title");
$date = mysql_result($news,0,"date");
if($first == TRUE) {
echo '<b>' . $title . ' | ' . $date . '</b>';
$first = FALSE;
}
else {
echo '<b>' . $title . ' | ' . $date . '</b>
<br/>
<img src="images.php?id='. $n_id .'>';
}
}
else {
header("Location: vendi.php");
}
echo '<br /><a href="/'.$path.'">Back to Archive</a>';
}
}
$n\u id=mysql\u real\u escape\u字符串($\u GET['id']);
$path='';
如果(isset($n\u id)&&$n\u id!=“”){
$sql='SELECT*FROM test2,其中id=“”.$n_id.”;
$news=mysql\u查询($sql);
$first=TRUE;
如果($result=mysql\u fetch\u数组($news)){
$title=mysql_结果($news,0,“title”);
$date=mysql_结果($news,0,“date”);
如果($first==TRUE){
回显“.$title.”|“.$date.”;
$first=FALSE;
}
否则{
回显“.$title.”|“.$date.”
';
}
}
否则{
标题(“位置:vendi.php”);
}
回声“
”;
}
}
您的SQL语句只获取一行。这不是一个完整的解决方案,但应该可以让您更接近:
if (isset($_GET['id']) && is_numeric($_GET['id'])) {
$n_id = (int)$_GET['id'];
$path = '';
$count = 0;
$sql = 'SELECT * FROM test2 WHERE id BETWEEN ' . $n_id ' AND ' . ($n_id + 5);
$news = mysql_query($sql);
while ($result = mysql_fetch_array($news)) {
$title = $result['title'];
$date = $result['date'];
echo '<b>' . $title . ' | ' . $date . '</b>';
if ($count < 1) {
echo '<br/><img src="images.php?id='. $n_id .'>';
$count++;
}
}
if ($count == 0) { header("Location: vendi.php"); }
echo '<br /><a href="/'.$path.'">Back to Archive</a>';
}
if(isset($\u GET['id'])和&is_numeric($\u GET['id'])){
$n_id=(int)$_GET['id'];
$path='';
$count=0;
$sql='从test2中选择*,其中id介于'$n_id'和'.'($n_id+5);
$news=mysql\u查询($sql);
而($result=mysql\u fetch\u数组($news)){
$title=$result['title'];
$date=$result['date'];
回显“.$title.”|“.$date.”;
如果($count<1){
回声“
”;
$count++;
}
}
if($count==0){header(“Location:vendi.php”);}
回声“
”;
}
您缺少一个接近您的回音的回音。我认为他也必须切换SQL调用。看起来他在做一个单行atm。这可能会在没有更多信息的情况下得到tetchier。您在此处指定一个值:if($counter=0){
应该是==
固定的,而且是固定的。谢谢。关于单行问题,他说他正在尝试显示五个结果。谢谢你的回答对完成工作非常有帮助。我修改了我自己,但你是第一个开始