Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Porcjowanie ?
Forum PHP.pl > Forum > PHP
MacPain
Chodzi oto ze plik z porcjowaniem jest w innym katalogu, pierwsza czesc pojawia sie na stronie ale naciskajac nastepny nie pokazuje sie nic.Jak sie to zachowuje mozna zobaczyc na stronie
http://www.manek.fc.pl/newsite/index.php
pod kategoria firmy wg alfabetu link A.
Za pomoc z gory THX.:
kod porcjowania:
  1. <?php 
  2. define('ILOSC_WYNIKOW_NA_STRONIE', 3);
  3. require('./mysqllog.php');
  4. $SQL = "SELECT COUNT(*) FROM firma WHERE firma LIKE "a%"";
  5. $RES = mysql_query($SQL);
  6. list($iloscWpisow) = mysql_fetch_row($RES);
  7. $SQL="SELECT * FROM firma WHERE firma LIKE "a%" LIMIT ".
  8. mysql_escape_string((int)$_GET['str']*ILOSC_WYNIKOW_NA_STRONIE).",".ILOSC_WYNIKOW_NA_STRONIE;
  9. $RES=mysql_query($SQL);
  10. if(mysql_num_rows($RES) != 0){
  11. while($AFR = mysql_fetch_assoc($RES))
  12. {
  13. $K=$AFR['kategoria'];
  14. $F=$AFR['firma'];
  15. $KR=$AFR['kraj'];
  16. $W=$AFR['wojewodztwo'];
  17. $M=$AFR['miasto'];
  18. $U=$AFR['ulica'];
  19. $KO=$AFR['kod'];
  20. $TK=$AFR['telekom'];
  21. $T=$AFR['tel'];
  22. $FA=$AFR['fax'];
  23. $O=$AFR['oferta'];
  24. $S=$AFR['stronafirmy'];
  25. $E=$AFR['mail'];
  26.  
  27. echo "<table cellSpacing='0' cellPadding='0' border='0'><tr><td>
  28. <TBODY>
  29. <TR>
  30. <TD background='images/lg.gif' width='10' height='10'>
  31. </TD>
  32. <TD background='images/poziom.gif'>
  33. </TD>
  34. <TD background='images/pg.gif' width='10'>
  35. </TD>
  36. </TR>
  37. <TR>
  38. <TD background='images/pion.gif' width='9'>
  39. </TD>
  40. <TD>
  41.  
  42. <table><tr><td>
  43. <table width='0' border='0' cellSpacing='0' cellPadding='0'><tr>
  44. <td align='left' bgcolor='478FC7' height='15'>
  45.  Nazwa Firmy : <b>$F</b>
  46. </td><td align='right' bgcolor='478FC7'>
  47. Kategoria : <b>$K</b> 
  48. </td></tr><tr><td></td></tr><tr><td align='center' colspan='2' bgcolor='6B9EC5' height='15'>
  49. Strona WWW : <a href='$S' target='_blank'>$S</a>
  50. </td><td bgcolor='6B9EC5'></td></tr><tr><td></td></tr><tr><td align='left' bgcolor='8EADC5' width='220'><br>
  51.  Kraj : <b>$KR</b><br>
  52.  Województwo : <b>$W</b><br>
  53.  Miasto : <b>$M</b><br>
  54.  Ulica : <b>$U</b><br>
  55.  Kod Pocztowy : <b>$KO</b><br><br>
  56. </td><td align='left' valign='top' bgcolor='8EADC5' width='240'>
  57. <br> Tel.kom. : <b>$TK</b><br>
  58.  Tel. : <b>$T</b><br>
  59.  Fax : <b>$FA</b><br>
  60.  E-mail : <b>$E</b>
  61. </td></tr><tr><td></td></tr><tr><td align='left' colspan='2' bgcolor='A7B8C5'>
  62. <table><tr><td width='460'>
  63. <b>Oferta</b> : $O
  64. </td></tr></table>
  65. </td><td></td></tr></table>
  66. </td></tr></table>
  67.  
  68. </TD>
  69. <TD background='images/pion.gif'>
  70. </TD>
  71. </TR>
  72. <TR>
  73. <TD background='images/ld.gif' height='10'>
  74. </TD>
  75. <TD background='images/poziom.gif'>
  76. </TD>
  77. <TD background='images/pd.gif'>
  78. </TD>
  79. </TR>
  80. </TBODY>
  81. </TABLE><BR>";
  82. }
  83. if($_GET['str']>0)
  84. {
  85. echo '<a href="?str='.($_GET['str']-1).'">Poprzednie</a> ';
  86. }
  87. for($i = 0;$i<=floor($iloscWpisow/ILOSC_WYNIKOW_NA_STRONIE);$i++)
  88. {
  89. echo '<a href="?str='.($i).'">| '.($i+1).' |</a> ';
  90. }
  91. if($_GET['str']<floor($iloscWpisow/ILOSC_WYNIKOW_NA_STRONIE))
  92. {
  93. echo ' <a href="?str='.($_GET['str']+1).'">Następne</a>';
  94. }
  95. }else{
  96. echo "Przykro nam ale do tej kategori nie dodano jesszcze wpiu :(";
  97. }
  98. ?>

i kod gdzie powinno sie to pokazyac czyli na stronie glownej:
  1. <?
  2. $str=$_GET["str"];
  3. if ($str=="") $str="index2";
  4. $str2="$str.inc.txt";
  5. $dir="alfabet";
  6. if ($handle = opendir($dir)) {
  7. while (false !== ($file = readdir($handle))) { 
  8. if ($file != "." && $file != "..") { 
  9. if($file==$str2){
  10. include("$dir/$str2");
  11. }
  12. } 
  13. }
  14. closedir($handle); 
  15. }
  16. if ($handle = opendir('.')) {
  17. while (false !== ($file = readdir($handle))) { 
  18. if ($file != "." && $file != "..") { 
  19. if($file==$str2){
  20. include("$str2");
  21. }
  22. } 
  23. }
  24. closedir($handle); 
  25. }
  26. ?>
nospor
za bardzo nie wnikam w Twoj kod, ale masz blad w logice.
Gdy wciskamy A, to zmienna w url "str" przyjmuje wartosc A, ale gdy klikamy juz na strony, to ta zmienna przyjmuje wartosci aktulanej strony: 0, 1,2....
a wkodzie masz ze inkludujesz pliki: "$str.inc.txt" czyli A.inc.txt, a 0.inc.txt to chyba nie masz smile.gif

Chyba ze to celowy zabieg to przepraszam ze sie odzywalem smile.gif
MacPain
No masz rację bo nawet gdy zmieniam zmienną porcjowania dalej skrypt z glownej strony przjmuje ja jako np. str=0

Mozna by zrobic warunek if
  1. <?php
  2. if($str2== tu niewiem co napisac zeby prownywal ja do liczby calkowitej np.)
  3. {
  4. $porcja=$_POST['str2']
  5. }else{
  6. ....
  7. }
  8. ?>
nospor
Cytat
tu niewiem co napisac zeby prownywal ja do liczby calkowitej

manual wie:
http://pl.php.net/manual/pl/function.is-numeric.php
MacPain
Przerobilem porcjowanie tak:
  1. <?php
  2. if($_GET['porcja']>0)
  3. {
  4. echo '<a href="?str=a&?porcja='.($_GET['porcja']-1).'">Poprzednie</a> ';
  5. }
  6. for($i = 0;$i<=floor($iloscWpisow/ILOSC_WYNIKOW_NA_STRONIE);$i++)
  7. {
  8. echo '<a href="?str=a&?porcja='.($i).'">| '.($i+1).' |</a> ';
  9. }
  10. if($_GET['porcja']<floor($iloscWpisow/ILOSC_WYNIKOW_NA_STRONIE))
  11. {
  12. echo ' <a href="?str=a&?porcja='.($_GET['porcjar']+1).'">Następne</a>';
  13. }
  14. }else{
  15. echo "Przykro nam ale do tej kategori nie dodano jesszcze wpisu :(";
  16. }
  17. ?>

Tylko narazie calyczas pokazuje pierwsza porcje tak jakby nie zostaly przkazywane kolejne ze strony glownej.
nospor
ale w zapytaniu w limicie tez poprzerabiales?
MacPain
Nie, a powinienem heheheheh smile.gif
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.