Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: opuznione przypisywanie wartosci $_POST do $_GET
Forum PHP.pl > Forum > PHP
invx
jest sobie taki kod: (jest to kawalek forum, i sluzy do przeskakiwania do kolejnych stron z postami)
  1. <?php
  2.  
  3. $_GET['page']=$_POST['page'];
  4.  
  5. function kolejne_d_a ( $liczba )
  6. {
  7.  $wartosc = ceil ( $liczba / 10 );
  8.  if( ( $liczba % 10 ) == 0 )
  9.  {
  10. return $wartosc * 10;
  11.  }
  12.  else
  13.  {
  14. return $wartosc * 10;
  15.  }
  16. }
  17. function kolejne_d_b ( $liczba )
  18. {
  19.  $wartosc = ceil ( $liczba / 10 );
  20.  if( ( $liczba % 10 ) == 0 )
  21.  {
  22. return $wartosc * 10 +10;
  23.  }
  24.  else
  25.  {
  26. return $wartosc * 10;
  27.  }
  28. }
  29. ################################################################################
  30.  
  31.  
  32. #wyswietlanie linku do 1 strony
  33. if ( $_GET[page] != 1 )
  34. {
  35. echo&#092;"<a href='$action&id=$_GET[id]&page=1&data=$data&kolejnosc=$kolejnosc'>Pierwsza <-</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\";
  36. }
  37.  
  38. #wyswietlanie powrotych linkow, poprzednie dziesiatki
  39. if ( $_GET[page]->= 30 )
  40. {
  41. $a = kolejne_d_a($_GET[page]-3)-30;
  42. echo&#092;"<a href='$action&id=$_GET[id]&page=$a&data=$data&kolejnosc=$kolejnosc'>$a</a> ...\";
  43. }
  44.  
  45. if ( $_GET[page]->= 20 )
  46. {
  47. $b = kolejne_d_a($_GET[page]-3)-20;
  48. echo&#092;" <a href='$action&id=$_GET[id]&page=$b&data=$data&kolejnosc=$kolejnosc'>$b</a> ...\";
  49. }
  50.  
  51. if ( $_GET[page]-> 10 )
  52. {
  53. $c = kolejne_d_a($_GET[page]-3)-10;
  54. echo&#092;" <a href='$action&id=$_GET[id]&page=$c&data=$data&kolejnosc=$kolejnosc'>$c</a> ...\";
  55. }
  56.  
  57. #wyswietlanie powrotych linkow,
  58. for ( $i = $_GET[page]-3; $i<$_GET[page]; $i++ )
  59. {
  60. if ( $i > 0 )
  61. {
  62. echo&#092;" <a href='$action&id=$_GET[id]&page=$i&data=$data&kolejnosc=$kolejnosc'>$i</a> \";
  63. }
  64. }
  65.  
  66. #wyswietlanie aktualnej strony
  67. echo&#092;"<b>$_GET[page]</b> \";
  68.  
  69. #wyswietlanie kolejnych linkow
  70. for ( $i = $_GET[page]+1; $i<$_GET[page]+4; $i++ )
  71. {
  72. if ( $i <= $ile )
  73. {
  74. echo&#092;"<a href='$action&id=$_GET[id]&page=$i&data=$data&kolejnosc=$kolejnosc'>$i</a> \";
  75. }
  76. }
  77.  
  78. #wyswietlanie kolejnych linkow, kolejne dziesiatki
  79. if ( $_GET[page] <= ( $ile ) )
  80. {
  81. if ( $_GET[page]+< ( $ile ) )
  82. {
  83. $d = kolejne_d_b($_GET[page]+3);
  84.  echo&#092;"... <a href='$action&id=$_GET[id]&page=$d&data=$data&kolejnosc=$kolejnosc'>$d</a> \";
  85. }
  86. }
  87.  
  88. if ( $_GET[page]+< ( $ile -10) )
  89. {
  90. $e = kolejne_d_b($_GET[page]+3)+10;
  91. echo&#092;"... <a href='$action&id=$_GET[id]&page=$e&data=$data&kolejnosc=$kolejnosc'>$e</a> \";
  92. }
  93.  
  94. if ( $_GET[page]+< ( $ile -20 ) )
  95. {
  96. $f = kolejne_d_b($_GET[page]+3)+20;
  97. echo&#092;"... <a href='$action&id=$_GET[id]&page=$f&data=$data&kolejnosc=$kolejnosc'>$f</a>\";
  98. }
  99.  
  100. #wyswietlanie ostatniej strony
  101. if ( $_GET[page] != $ile )
  102. {
  103. echo&#092;"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href='$action&id=$_GET[id]&page=$ile&data=$data&kolejnosc=$kolejnosc'>-> Ostatnia</a>\";
  104. }
  105.  echo&#092;"wwwww $_POST[page]\";
  106.  
  107. echo&#092;"<form action='forum.php?mode=pokaz_tematy&id=$_GET[id]&page=$_GET[page]&data=$data&kolejnosc=$kolejnosc' method='POST'><input name='page' type='text' size='2'>&nbsp;&nbsp;<input type='submit' value='Skok'></form>\";
  108.  
  109. ?>


i jest sobie taki problem:

wysylajac jakis numer strony wpisywany do pola textowego w ostatniej lini w/w kodu, i klikajac na "skocz", nie zmienia sie od razu wartosc zmiennej GET w urlu, na podana z pola textowego, a pojawia sie ona dopiero za drugim przeladowaniem. Zeby lepiej wyjasnic: podaje w polu wartosci {4, 7, 30, 21} to w URLu, sa to wartosci {wartsoc_domyslna, 4, 7, 30}, a zeby pojawilo sie 21 musialbym podac akas klejna w polu textowym. I dzieje sie pomimo pierwszej lini kodu "$_GET['page']=$_POST['page'];". Nie wie dlaczego. Pomuzcie smile.gif
dr_bonzo
Cytat
nie zmienia sie od razu wartosc zmiennej GET w urlu, na podana z pola textowego

Wysylasz formularz POSTem pod adres forum.php?mode=pokaz_tematy&id=$_GET[id]&page=$_GET[page]...... Kiedy ja wyslesz POST[ 'page' ] zawiera numer strony, ktory wpisales, i dalej skrypt wypisze ci <form action=".... i tu stawi dopiero $_GET[ 'post'], ktory dopieor po nastepnym wyslaniu formularza pojawi sie w URLu.

Co to ma byc?
$_GET[page] // a gdzie definicja tej stalej?
invx
zmienna $_GET[page], caly czas jest, w URL'u, i wysylajac z pola textowego wartosc chcialem ja podmienic.
dr_bonzo
ze niby po tym
$_GET['page']=$_POST['page'];
ma sie zmienic adres URL w przegladarce?
invx
hmmmm, faktycznie nieciekawie to wyglada biggrin.gif

ale myslalem ze to jest tak:
-wpisuja jakas liczbe
-wysylam ja do GET[page]
-strona sie przeladowuje i w URL wstawia GET zaktualizowany wyzej
-dalej skrypt wykorzystujac w/w GET'a wyswietla ospowiednia stronke z postami


czyzby bylo inaczej questionmark.gif jak to rozwiazac ?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.