2015-07-20 89 views
0

我有一个按钮将您重定向到最后一页。重定向错误(返回页面)

但是,当它进入news.php?page = 1 & search = s我得到一个错误。

错误看起来像这样http://i.gyazo.com/357a1bd5468a5e77a81ad53c7882093d.png

和脚本。

的script.js

$(document).ready(function() { 
$('#back').on('click', function(e) { 
    $.ajax({ 
     url: 'ajax/back.php', 
     success: function(data) { 
      var search = getUrlVars()['search']; 
      if(typeof(search) === 'undefined') { 
       window.location = "news.php?page="+data; 
      } else { 
       if(search.length > 0) { 
        window.location = "news.php?search="+search+"&page="+data; 
       } else { 
        window.location = "news.php"; 
       } 
      } 
     } 
    }); 
}) 
}); 

back.php

<?php 

session_start(); 

if(isset($_SESSION['last_page'])) { 
    echo $_SESSION['last_page']; 
} else { 
    echo 1; 
} 
$_SESSION['last_page'] = array(); 

?> 
+0

你有重定向循环。 a-> a-> a-> ...-> a'或a-> b-> ...-> z-> a-> b -...'在你的情况下:'新闻。 php' - >'news.php?page =' - >'news.php' - > etc ... –

+0

我该如何解决这个问题? – Ucar

+0

修复你的逻辑,使脚本不会进入循环。 –

回答

0

去背页变化,

window.location = "news.php?search="+search+"&page="+data; 

parent.history.go(-1); 
+0

但文章中也有评论系统。因此,当我输入run this命令时,它会转到第3页的注释,当你在第3页时。 – Ucar

0

我想我找到了循环。

news.php

if (isset($_GET['page'])) { 
    $page = mysql_real_escape_string($_GET['page']); 
    if($page < 1 || $page > $total_pages) { 
     header("Location: news.php?page=1&search=$search"); 
    } 
} else { 
    $page = 1; 
} 

$ TOTAL_PAGES = 2(这取决于我多么寻呼机也有,所以6日消息每一页,我有8所以它的2

+0

$ total_pages出错了,导致值为0,因为这个“header”是循环。 – Ucar