2013-07-21 3 views
0

Что мне нужно сделать, это сделать разбиение на страницы с помощью PHP и отправить клик по адресу href в PHP_SELF и перестроить страницу в соответствии с ней.Пользовательская разбивка на страницы в php с POST

Вот несколько примеров кода:

for ($i = 1; $i <= $pagecount; $i++) { 

    if ($i == 1) 
     echo "<ul>"; 

    echo "<li>"; 
    echo "<input type=\"hidden\" name=\"p\" value=\"". $i ."\">"; 
    echo "<a href=\"\" onclick=\"document.forms['page'].submit(); return false;\">"; 
    echo "<span>". $i ."</span></a></li>"; 
    if ($i == $pagecount) 
    echo "</ul>"; 

} 

Я перечисляю страниц этим и то, что я хочу, чтобы отправить только Clicked номер страницы PHP_SELF но только посылает p=2 для 2-х страниц (например $_POST["p"] = 2), так как последняя спрятанная переменная p равна 2. Как я могу исправить это, не изменяя часть href? Моя цель - отправить переменную и не видеть ее в URL-адресе. Спасибо в любом заранее :)

+0

onclick должен будет извлечь соответствующий номер страницы и вставить его в скрытое поле ДО того, как вы .submit() его. Почему вы используете POST для разбивки на страницы так или иначе? Обычно вы нажимаете на результаты с помощью запросов GET, что означает, что вы можете вставлять номер страницы в качестве параметра запроса MUCh. –

+0

Моя цель - отправить переменную и не видеть ее в URL-адресе. Спасибо за ваш ответ, и я знаю, что GET проще, единственное, что нужно сделать, это установить href = "? P =". $ I, но я специально хочу сделать это с помощью POST – erdem84

ответ

0

Я решил проблему, сделав такой код:

for ($i = 1; $i <= $pagecount; $i++) { 

    if ($i == 1) 
     echo "<ul>"; 

    echo "<li>"; 
    echo "<input type=\"hidden\" id=\"p\" name=\"p\">"; 
?> 
<a href="" onclick="document.getElementById('p').value=<?php echo $i ?>; document.forms['page'].submit(); return false;"> 
<?php 
    echo "<span>". $i ."</span></a></li>"; 
    if ($i == $pagecount) 
    echo "</ul>"; 

} 

The A HREF код не работает под PHP тега. Не знаю точной причины, хотя это должно быть связано с опцией getElementById.

Смежные вопросы