PHP在链接点击时重新加载div的内容

时间:2015-03-30 08:35:16

标签: php

如果您点击PHP链接,我想重新加载特定的div。

HTML代码:

<nav>
    <a href="register.php">Register</a>
    <a href="login.php">Login</a>
</nav>
<div class="content">
    //Reload Content here
    <p>That's a test paragraph for the start page</p>
</div>

现在我想将点击的页面包含在div.content

如何在php中捕获链接点击?这可能吗?如何将页面包含在我的div.content中?

谢谢!

2 个答案:

答案 0 :(得分:0)

如果您希望在没有页面重新加载的情况下实现此目的,您可能需要考虑使用Jquery和AJAX ...否则您可能希望使用PHP GET请求,如下所示:

<nav>
    <a href="?content=register">Register</a>
    <a href="?content=login">Login</a>
</nav>
<div class="content">
    <?php 
        if (isset($_GET['content'])) {

            if (file_exists($_GET['content'] . '.php')) {

                require($_GET['content'] . '.php');
            }
        }
    ?>
    <p>That's a test paragraph for the start page</p>
</div>

答案 1 :(得分:0)

PHP代码在服务器上执行,无法重新加载<div> widhout呈现整个页面。如果您绝对想要使用PHP来执行此操作,则需要在<iframe>中创建<div class=content>并重新加载。

网址参数存储在$_GET变量中。 例如:可以使用$_GET['page']

检索foo.com?page=bar
<?php 
echo $_GET['page']; // will return "bar"
?> 

没有<iframe>

的纯PHP示例
<nav>
    <a href="register.php">Register</a>
    <a href="login.php">Login</a>
</nav>
<div class="content">
<?php
     if(isset($_GET['page']))
     {
        // Includes the content. @ is for supressing errors if the file is not found.
        // Can be solved with is_file();
        // http://php.net/manual/en/function.is-file.php
        @include "/path/to/file/".$_GET['page'].".php";
     }  
?>
</div>

这不是最安全的方法,因为您可以操纵URL以在系统中包含其他PHP文件,但您明白了。