尝试重定向php页面是获取id是空的ir不存在

时间:2011-01-12 05:39:58

标签: php mysql

<?
include.....
if ($picid != $_GET['picid']) || (empty($picid)) { echo "page not working";

}
else {
$picid = $_GET['picid'];
$query = mysql_query("SELECT * FROM pic_info WHERE picid = 'picid1' ");// problem

while($rows = mysql_fetch_assoc($query)):
$picid = $rows['picid'];
$title = $rows['title'];
$link = $rows['link'];
$description = $rows['description'];
$movie_pic = $rows['movie_pic'];
$source = $rows['source'];

}

$get_comment = mysql_query("SELECT * FROM comment WHERE picid ='$picid'");// work partially
$comment_count = mysql_num_rows($get_comment);
if ($comment_count>0)
{ messages = " ";
while ($com = mysql_fetch_array($get_comment)){
$comment_id = $com['comment_id'];
$name = $com['name'];
$message = $com['message'];
$time_post= $com['time_post'];
$messages .= '<em> on ' .$time_post.'</em><b>   '.$name.'   said.....</b><br/> '.$message.'<hr/>';  // line with problem
}
}
?>

我陷入困境我试图说,如果$_GET['picid'];为空,则回显错误消息或者如果db echo out错误消息中不存在movid。当我运行它我得到一个错误。不确定我是否正在调用正确的功能。我做错了什么,请帮忙

2 个答案:

答案 0 :(得分:0)

我定义了这个方法:

function not_empty($var) {
    return isset($var) && $var != "";
}

所以要么!not_empty或:

function is_empty($var) {
    return !not_empty($var);
}

我也注意到你有:

while($rows = mysql_fetch_assoc($query)):

但没有相应的:

endwhile;

为了以防万一,或许坚持使用牙箍或结肠。

http://php.net/manual/en/control-structures.while.php

此外,您可以尝试使用

<?php
// code
?>

而不是短标签。

你错过了一个括号:

if ( $picid != $_GET['picid']) || (empty($picid) ) {

应该是:

if ( ($picid != $_GET['picid']) || (empty($picid) ) {

当然你会:

include("somefile");

答案 1 :(得分:0)

如果您要求检查是否为GET变量picid设置了任何内容,如果没有返回错误。

if (!isset($_GET[picid]) { 
    return "No Pic Id" 
} else { 
"run db code..."
}