0

我目前正在尝试开发以下功能:

当有人想查看他们的相册或个人资料照片时,我想在 url 中使用album_idid在 url 中使用,如下所示:

album.php?album_id=(numeric Number)
album.php?id=(numeric number)

我目前能够执行第一个命令,当我尝试第二个命令时,它无法加载,而是被带到索引页面(根据脚本的设计。)

这是我的代码:

$album_id = addslashes(is_numeric($HTTP_GET_VARS["album_id"]));
$profile_id = addslashes(is_numeric($HTTP_GET_VARS["id"]));
?>
<?php
if($album_id==Null||!$profile_id==Null)
{
    print("<script language='JavaScript'> window.location='index.php'; </script>");
}
  else
{
if ($album_id==$album_id)
{
    include("/home/emo/public_html/incldues/layout/photos/pages/albums/album_photos.php");
}
  else
{
if ($profile_id==$profile_id)
{
    include("/home/emo/public_html/incldues/layout/photos/pages/albums/profile_photos.php");
}
  else
{
    include("/home/emo/public_html/incldues/layout/photos/pages/albums/album_photos.php");
}
}
}
?>

澄清一下,那些“页面”只包含粗体字: 显示专辑照片显示用户照片

但是我似乎无法理解我的问题可能是什么。

4

2 回答 2

2

如果您调用album.php?album_id={id},$_GET['id']为 null,则使您的第一if条语句返回到索引页面。

if (($album_id == null) || ($profile_id == null)) { ... }

一个永远是null,除非你打电话album.php?album_id={aid}&id={pid}

if (($album_id == null) && ($profile_id == null)) {
    # redirect to index.php
} else {
    if ($album_id != null) {
        # load album
    } else if ($profile_id != null) {
        # load profile
    } else {
        # both given, redirect to error.
    }
}
于 2013-06-23T04:49:31.503 回答
0

您的条件if($album_id==$album_id)将始终为真,因为它们都是相同的,并且该else部分永远不会执行。

于 2013-06-23T04:52:27.950 回答