如何让其他用户使用PHP查看用户配置文件图片?

如何让其他用户使用PHP查看用户配置文件图片?,php,html,Php,Html,我所寻找的只是当运行下面的代码,点击相册或音乐链接时,它会发布到同一页面,对吗?因此,url会发生变化,并根据单击的链接在其末尾添加href。那么,当单击链接时,我如何调用以下内容: <?php echo 'Albums';?> 原始代码: if(isset($_GET['username']) === true && empty($_GET['username']) === false){ $username = $_GET['username']

我所寻找的只是当运行下面的代码,点击相册或音乐链接时,它会发布到同一页面,对吗?因此,url会发生变化,并根据单击的链接在其末尾添加href。那么,当单击链接时,我如何调用以下内容:

<?php echo 'Albums';?>

原始代码:
if(isset($_GET['username']) === true && empty($_GET['username']) === false){
$username       = $_GET['username'];

if(user_exists($username) === true){
$user_id        = user_id_from_username($username);
$profile_data   = user_data($user_id, 'first_name','last_name','email');
?>

    <h1><?php echo $profile_data['first_name']; ?>'s Yor Page</h1>




<div id="navWrapper">


    <ul>
        <li>
            <a href="#"><img src="uploads/profile/blank_profile.gif" width="150" height="150" id="blank_profile"></a>
        </li>

        <nav>
            <ul>
                <li>
                    <a href="?albums">Albums</a>
                </li>
                <li>
                    <a href="?music">Music</a>
                </li>
            </ul>
        </nav>
    </ul>

</div>
<?php
}else{
    echo 'Sorry, that user doesn\'t exist';
}
}else{
header('Location: index.php');
exit();
}

include 'includes/overall/overall_footer.php';
?>
if(isset($\u GET['username'])==true&&empty($\u GET['username'])==false){
$username=$_GET['username'];
如果(用户_存在($username)==true){
$user\u id=用户名($username)中的用户\u id\u;
$profile_data=user_data($user_id,'first_name','last_name','email');
?>
你的页面
现在,当单击返回yorpage.com/lr/username?相册时,我有了链接设置,当我单击此链接并转到url yorpage.com/lr/username?相册时,如何调用php函数或语句

因此,一个简单的回音将是很好的演示目的,只是得到点击返回是我所寻找的。如果你需要更多的信息,我不认为你需要我不是要求为我编码这个我可以返回图像或专辑等。我只是想知道如何处理链接被点击,并返回一个简单的回音时专辑或音乐点击了c链接。谢谢。

我可能会感到困惑(因为那是很多文本),但我想你要找的是关于htaccess的教程…使用重写规则以静默方式转换url:

http://domain/[username]/album

…或类似的内容。用户将看到第一个url,但脚本将有权访问
$\u GET
数组中的
用户
操作
。\n然后您可以进行检查

if(isset($_GET['action']) && $_GET['action']=='album'){ //do something...

关于这方面的教程有很多,但这是我找到的。

我有点迷路了,但据我所知,你的问题是:我如何在url中传递参数,以便当我转到url时,它会转到相册,对吗

下面是一个类似的例子:

    if (isset($_GET['page'])) {
        $pageArgs = explode('/', $_GET['page']);
        if(isset($pageArgs[0])) {
            $username = $pageArgs[0];   
        } else {
            header('Location: index.php');
            exit();     
        }
        $action = (isset($pageArgs[1])) ? $pageArgs[1] : false;
        switch($action)
        {
            case 'albums':
                print 'These are my albums <br/>';
                break;
            case 'music':
                print 'This is my music! <br/>';
                break;

            default:
                print '
                    <nav>
                        <ul>
                            <li><a href="'.$username.'/albums">Albums</a></li>
                            <li><a href="'.$username.'/music">Music</a></li>
                        </ul>
                    </nav>';
                break;
        }
    }

文件页/home.php
文件页/user.php
class页面\u用户
{
私人$subPage;
公共函数构造($args)
{
如果(isset($args[0]))
$this->username=$args[0];
否则{
$this->username=false;
返回;
}
if(isset($args[1]))
$this->subPage=$args[1];
否则{
$this->subPage=false;
返回;
}
}
公共活动展览($部分)
{
如果($this->username)
{
交换机($部分)
{
案例“内容”:
$otp='我的用户名是'.$this->用户名'
'; $otp.=$this->showSubPage(); 返回$otp; 打破 “亚航行”案例: 返回$this->nav(); 打破 违约: 返回“”; 打破 } }否则{ 返回“找不到用户名!”; } } 受保护函数nav() { 返回 '
'; } 受保护的函数showSubPage() { 开关($this->subPage) { 案例“相册”: return“这些是我的相册
”; 打破 案例“音乐”: 返回“这是我的音乐!
”; 打破 } } }
模板/my_template.html

我的链接在这里
[%%次导航%%]
[%%内容%%]
我的(c)版权公告

下次当我看到其他人创建facebook克隆时,我会自杀的。你真的应该缩短你的解释,清楚地问问题出在哪里。我完全沉浸在你的源代码/文本中。@Dagon好的,我现在就去做:-P编辑经过一点研究,我发现轮子已经发明了。谁知道呢?耶s、 但是它有全套颜色吗?好吧,达贡,去吧,伙计,顺便说一句,这是一个项目!如果你不能提供帮助和指导,请不要评论,这里的人是来学习的!!!!不,不完全是我想要的,我想我不知道如何正确表达我的问题,但这非常有帮助,谢谢。是的完成了,你甚至为我清理了url!谢谢你,没有问题!!!!顺便说一句,如果是为了学校,你真的想给人留下深刻印象,不要使用意大利面PHP(混合演示[HTML]和代码[PHP]),试着将你的代码从模板中分离出来。查看我编辑的答案以获取示例。
    if (isset($_GET['page'])) {
        $pageArgs = explode('/', $_GET['page']);
        if(isset($pageArgs[0])) {
            $username = $pageArgs[0];   
        } else {
            header('Location: index.php');
            exit();     
        }
        $action = (isset($pageArgs[1])) ? $pageArgs[1] : false;
        switch($action)
        {
            case 'albums':
                print 'These are my albums <br/>';
                break;
            case 'music':
                print 'This is my music! <br/>';
                break;

            default:
                print '
                    <nav>
                        <ul>
                            <li><a href="'.$username.'/albums">Albums</a></li>
                            <li><a href="'.$username.'/music">Music</a></li>
                        </ul>
                    </nav>';
                break;
        }
    }
// Find which page is requested
$pageIDs = pageSelector();
// namespaced pages. You can change to real namespaces with:
// $mPage = '\\Page\\' . $pageIDs[0];
$mPage = 'Page_' . $pageIDs[0];
array_shift($pageIDs);

// Path to Template file (the static elements common to all pages like
// header, footer, logo, navigation, etc...
$templatePath = 'templates/my_template.html';

if(!empty($pageIDs))
    $pageArgs = $pageIDs;
else
    $pageArgs = false;

//create Page Object, the dynamic content divided by sections
//for instance, content, columnA, columnB   
$page = new $mPage($pageArgs);

$template = new Template($templatePath, $page);

//Here's an example of a section
$template->addSection('subNavigation');

print $template;

// PageSelector Function
function pageSelector()
{
    if (isset($_GET['page'])) {
        $pIDs = explode('/', $_GET['page']);    
    } else {
        $pIDs = array('home');
    }
    $pagePath = 'pages/' . $pIDs[0] . '.php';
    if (file_exists($pagePath)) {
        require_once($pagePath);
        return $pIDs;
    } else {
        $pagePath = 'pages/home.php';
        require_once($pagePath);
        return array('home');
    }
}



//Template Object
class Template
{
    private $path, $page;
    private $sections = array('content');

    public function __construct($tPath, $page)
    {
        $this->path = $tPath;
        $this->page = $page;
    }

    public function addSection($newSectionName)
    {
        $this->sections[] = $newSectionName;
    }

    public function __toString()
    {
        $html = file_get_contents($this->path);
        foreach($this->sections as $section) {
            $html = str_replace('[%%'.$section.'%%]', $this->page->show($section), $html);
        }
        return $html;
    }
}
class Page_home
{
    public function __construct($args) {}

    public function show($section)
    {
        switch($section)
        {
            case 'content':
                return 'this is my main page';
            break;

            default:
                return '';
            break;
        }
    }   
}
class Page_user
{
    private $subPage;
    public function __construct($args)
    {
        if(isset($args[0])) 
            $this->username = $args[0];
        else {
            $this->username = false;
            return;
        }
        if(isset($args[1]))
            $this->subPage = $args[1];
        else {
            $this->subPage = false;
            return;
        }

    }

    public function show($section)
    {
        if($this->username)
        {
            switch($section)
            {
                case 'content':
                    $otp  = 'My username is ' . $this->username . '<br/>';
                    $otp .= $this->showSubPage();
                    return $otp;
                break;

                case 'subNavigation':
                    return $this->nav();
                break;

                default:
                    return '';
                break;
            }   
        } else {
            return 'username not found!';
        }
    }

    protected function nav()
    {
        return
        '<nav>
            <ul>
                <li><a href="user/'.$this->username.'/albums">Albums</a></li>
                <li><a href="user/'.$this->username.'/music">Music</a></li>
            </ul>
        </nav>';    
    }

    protected function showSubPage()
    {
        switch($this->subPage)
        {
            case 'albums':
                return 'These are my albums <br/>';
                break;
            case 'music':
                return 'This is my music! <br/>';
                break; 
        }
    }
}
<!DOCTYPE HTML>
<html>
<head>
</head>
<body>
    <div id="mainNav">myLink | Go | Here</div>
    <nav id="subNav">[%%subNavigation%%]</nav>
    <div id="content">[%%content%%]</div>
    <footer>my (c) copyright notice</footer>
</body>
</html>