[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: $_POST и MySQL
asid
Доброго время суток знатоки. Столкнулся с такой проблемой.
Из формы методом POST предаю значение. В скрипт который выполняет
построчный вывод данных из БД.
Так вот как только скрипт стартует происходит разбика на страницы
как только нажимаю к примеру стр2 вся выборка исчезает а остается только
ссылки на странице. Не подскажите где "копать". Заранее спасибо.
Код :
<?php
$foto = $_POST['foto'];
// количество записей, выводимых на странице
$per_page=10;
// получаем номер страницы
if (isset($_GET['page'])) $page=($_GET['page']-1); else $page=0;
// вычисляем первый оператор для LIMIT
$start=abs($page*$per_page);
// составляем запрос и выводим записи
// переменную $start используем, как нумератор записей.

$xxx = $pol;
mysql_connect("localhost", "root") or die("не могу соедениться;");
mysql_select_db("Proba");
$q = "SELECT * FROM `new` WHERE `fotolink` = '$foto' ORDER BY id LIMIT $start,$per_page";
$res=mysql_query($q);
while($row=mysql_fetch_array($res)) {
echo ++$start.
" ".$row['id']."<br>\n";
}

// дальше выводим ссылки на страницы:
$q="SELECT count(*) FROM `new` ";
$res=mysql_query($q);
$row=mysql_fetch_row($res);
$total_rows=$row[0];

$num_pages=ceil($total_rows/$per_page);

for($i=1;$i<=$num_pages;$i++) {
if ($i-1 == $page) {
echo $i." ";
} else {
echo '<a href="'.$_SERVER['PHP_SELF'].'?page='.$i.'">'.$i."</a> "; //'.$_SERVER['PHP_SELF'].'
}
}

echo $pol;
mysql_close();
?>




Спустя 55 минут, 51 секунда (19.05.2011 - 12:12) linker написал(а):
Если здесь $_POST['foto'], то почему здесь $_GET['page']?

Спустя 4 минуты, 37 секунд (19.05.2011 - 12:17) asid написал(а):
$_GET['page']? это для создание ссылок на страницы. Насколько я понимаю.



Спустя 53 минуты, 28 секунд (19.05.2011 - 13:10) inpost написал(а):
asid
Переходя на вторую страницу каким образом $_POST передаётся?

Спустя 15 минут, 55 секунд (19.05.2011 - 13:26) asid написал(а):
Переходя на вторую страницу каким образом $_POST передаётся?

Вот это и есть хороший вопрос. Как организовать-то передачу дальше этого $_POST Мозг кипит а я не знаю. Явно там все гениально и просто ... Не подскажите ?

Спустя 4 часа, 39 минут, 23 секунды (19.05.2011 - 18:05) inpost написал(а):
Передавай в ссылке через $_GET, либо в сессию кидай :)
Я у себя на сайте так сделал, но там передавалось более 30+ параметров через $_POST: (свои данные только подставь)
if(!empty($ok))
$_SESSION['search_key'] = serialize($POST);
else
$POST = unserialize($_SESSION['search_key']);

Спустя 14 часов, 38 минут, 8 секунд (20.05.2011 - 08:43) asid написал(а):
Пробовал и сессии и GET. Вот пример кода для GET

<?php
$chel= $_GET['pol'] ;
// количество записей, выводимых на странице
$per_page=10;
// получаем номер страницы
if (isset($_GET['page'])) $page=($_GET['page']-1); else $page=0;
// вычисляем первый оператор для LIMIT
$start=abs($page*$per_page);
// составляем запрос и выводим записи
// переменную $start используем, как нумератор записей.

mysql_connect("localhost", "root") or die("не могу соедениться;");
mysql_select_db("Proba");
$q = "SELECT * FROM `new` WHERE `sex` = '$chel' ORDER BY id LIMIT $start,$per_page";
$res=mysql_query($q);
while($row=mysql_fetch_array($res)) {
echo ++$start.
" ".$row['id']."<br>\n";
}

// дальше выводим ссылки на страницы:
$q="SELECT count(*) FROM `new` ";
$res=mysql_query($q);
$row=mysql_fetch_row($res);
$total_rows=$row[0];

$num_pages=ceil($total_rows/$per_page);

for($i=1;$i<=$num_pages;$i++) {
if ($i-1 == $page) {
echo $i." ";
} else {
echo '<a href="vib.php?page='.$i.'&pol=$chel">'.$i."</a> ";
}
}

echo $dd;
mysql_close();
?>

При старте срипта все ок, как и с методом POST, но ссылка на 2 страницу уже выглядит так http://www.localhost/proba/vib.php?page=2&pol=$chel

Спустя 9 минут, 29 секунд (20.05.2011 - 08:53) inpost написал(а):
А почему ты ?page='.$i.' - тут выделил переменную, а там - нет?

Спустя 5 минут, 30 секунд (20.05.2011 - 08:58) asid написал(а):
Гениально..... Огромное спасибо все заробило..... Спасибо еще раз 3 дня мук.
Спасибо Inpost user posted image
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.