jQuery,Ajax,SQL分页,SESSION的问题

时间:2015-10-14 21:56:58

标签: javascript php jquery ajax

这是我第一次使用jQuery ajax进行分页。 我是这样做的:

我将文件'GetAllMessages.php'包含在div中,只有我已登录。[有效]

我只有在登录时才会再次包含文件'GetMessages.php',这会告诉我数据库中有多少邮件。 [works]

当我点击“消息”链接时,我打开一个弹出窗口,然后从“GetAllMessages.php”获取前四条消息。 [作品]

在这个div的末尾我有像[1,2,3 ...]这样的页面然后用jquery $ .ajax函数(post方法)我再次进入'GetAllMessages.php'但是这一次我告诉了文件我点击了哪个页面,它给了我下一个我想要的信息。 [不工作]

就像SESSION不存在,但是如果我在'GetAllMesasages.php'的开头添加'SESSION_START',它说它已经开始在我的初始'GetAllMessages.php'加载,但当我点击页面链接[1,2,3 ......]错误消失了,一切正常。

GetAllMessages.php

<?php
if(isset($_SESSION["uname"])){
include ('config.php');
include ('getMessages.php');

$pages=$messageCount/$messagesPerPage;

if(isset($_POST["page"])){
$page=$_POST["page"];
}else{
$page=1;
}

$startQuery=($page-1)*$messagesPerPage;

$getMessagesQuery = "SELECT * from messages ORDER BY id DESC LIMIT ".$startQuery.",".$messagesPerPage."";
$result = $conn->query($getMessagesQuery);
if($result->num_rows>0){
    while($row=$result->fetch_assoc()){
        $mId=$row["id"];
        $mName=$row["name"];
        $mEmail=$row["email"];
        $mMessage=$row["message"];
        $mDate=$row["messageDate"];
        $mIsRead=$row["seen"];
        $mIsAnswered=$row["answered"];

        if($mIsRead==0){
            $messageStatus="unread";
            $markReadButton="<button class='button1'>Mark as read</button>";
        }else if($mIsAnswered==1){
            $markReadButton="";
            $messageStatus="answered";
        }else{
            $markReadButton="";
            $messageStatus="";
        }                       
        echo "
        <div class='message ".$messageStatus."' data-messageid='".$mId."'>
            <p class='date'>".$mDate."</p>
            <p class='sender'>".$mName." - ".$mEmail."</p>
            <p class='messageContent'>".$mMessage."</p>
            <span class='buttons'>              
            <button class='reply'>Reply</button>
            ".$markReadButton."
            </span>
        </div>";
    }
}
}else die();
?>

0 个答案:

没有答案