Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z wyszukiwaniem w skrypcie
Forum PHP.pl > Forum > PHP
free
W ponizszym skrypcie pozamienialem zmeinne by pasowaly do mojej macierzystej strony /chodzi o $page=$_GET['page']; zamiast page bylo jakies nr/
Caly skrypt oparty o baze danych juz mi dziala,mam tylko problem z wyszukiwaniem, pokazuje blad w linii 65 $r = mysql_fetch_array($wynik);

Oto kod pliku new.php
  1.  <?
  2.  
  3.  
  4. if(isset($_GET['page'])){
  5.  
  6.  $page=$_GET['page'];
  7.  
  8. if($page == 'szukaj'){
  9. $search=$_POST['search'];
  10.  $wyniki=explode(" ",$search);
  11.  $warunki=" (tytul LIKE '%$wyniki[0]%' || info LIKE '%$wyniki[0]%' || tresc LIKE '%$wyniki[0]%')";
  12. for ($i=1;$i<count($wyniki);$i++)
  13. {
  14. $warunki.=" and (tytul LIKE '%$wyniki[$i]%' || info LIKE '%$wyniki[$i]%' || tresc LIKE '%$wyniki[$i]%')";
  15. }
  16.  $pytanie = "SELECT * FROM news WHERE $warunki ORDER BY id DESC ";
  17.  $result = mysql_query($pytanie);
  18.  $ile = mysql_num_rows($result);
  19.  
  20.  if($result && (mysql_num_rows($result)>0)){
  21.  //wyswietlana jest lista
  22. while ($t = mysql_fetch_array($result)) {
  23. $tresc=$t['tresc'];
  24. $tytul_glowna=$t['tytul'];
  25. $info_glowna=$t['info'];
  26. $id_glowna=$t['id'];
  27. $data = $t['data'];
  28.  
  29. //jesli informacja ma opcje "wiecej" to tytul pisany jest czcionka pogrubiona
  30.  
  31. if($tresc) {
  32. print(iso("<TABLE border=0 width=100%><tr>\n<td align=left><b><a href=news.php?page=$id_glowna >$tytul_glowna</a></b> </td></tr><tr><td >$data</td></tr>\n<td align=left bgcolor=#006699>$info_glowna <div align=right><a href=news.php?page=$id_glowna>wiecej</a></div></td></tr>\n</table><br>\n"));
  33.  
  34.  //jesli nie ma wiecej tresci to zwykla czcionka
  35.  
  36. }else{
  37. print(iso("<TABLE border=0 width=100%><tr>\n<td align=left><b><a href=#>$tytul_glowna</a></b></td></tr><tr><td >$data</td></tr>\n<td align=left bgcolor=#006699>$info_glowna</td></tr>\n</table><br>\n"));
  38. }
  39. }
  40. }
  41. echo "<table border=0 width=100%><tr><td valign=\"top\">";
  42. if($ile == '1'){
  43. echo "Znaleziono: ".$ile." rekord";
  44. }else if($ile == '2' ){
  45. echo "Znaleziono: ".$ile." rekordy";
  46. }else if($ile == '3' ){
  47. echo "Znaleziono: ".$ile." rekordy";
  48. }else if($ile == '4' ){
  49. echo "Znaleziono: ".$ile." rekordy";
  50.  
  51. }else if($ile >= '4' ){
  52. echo "Znaleziono: ".$ile." rekordów";
  53.  
  54. }else{
  55. echo"</td><td >Brak danych na zapytanie: <b>".$search."</b>. Sprecyzuj pytanie ponownie.</td>";}
  56. echo "</td><td align=right><a href=index.php>Strona głowna</a> </td></tr></table>";
  57.  
  58.  }else{
  59.  
  60.  $wykonaj = "UPDATE news SET `czytano` = `czytano` + 1 WHERE id = $page";
  61. $ok = mysql_query($wykonaj);
  62.  
  63. $pytanie = "SELECT * FROM news WHERE id = $page";
  64. $wynik = mysql_query($pytanie);
  65. $r = mysql_fetch_array($wynik);
  66. $tytul = $r['tytul'];
  67. $calosc=$r['tresc'];
  68. $info = $r['info'];
  69. $data = $r['data'];
  70. print(iso("<TABLE border=0 width=98% align=center><tr>\n<td align=left bgcolor=#34c375>$tytul </td></tr><tr><td align=left bgcolor=#3e89bf>$data</td></tr><tr><td align=left bgcolor=#eeeeee><b> $info </b> </td></tr><tr><td align=left bgcolor=#ebebeb> $calosc</td></tr>\n<td align=right>
  71. <a href=\"javascript:history.back()\">...powrót</a></td></tr>\n</table>\n"));
  72.  }
  73.  
  74. }else{
  75.  
  76. if(isset($_GET['from']))
  77. {
  78.  $from = $_GET['from'];
  79. }else{
  80. $from=$_GET['from']=0;
  81. }
  82. echo '<center><table border="0" width=98% ><tr><td valign=top>';
  83.  
  84.  
  85. $next=5;
  86. $wiersz=0+$_GET['from'];
  87.  
  88. $query = mysql_query("SELECT count(*) FROM news");
  89. $row = mysql_fetch_array($query);
  90. $size = $row['count(*)'];
  91.  
  92. $pytanie = "SELECT * FROM news ORDER by data DESC LIMIT $wiersz, $next";
  93. $wynik = mysql_query($pytanie);
  94. $ile = mysql_num_rows($wynik);
  95.  
  96. while ($r = mysql_fetch_array($wynik)) {
  97. $id_glowna=$r['id'];
  98. $tytul_glowna=$r['tytul'];
  99. $info_glowna=$r['info'];
  100. $tresc=$r['tresc'];
  101. $data = $r['data'];
  102. $licznik = $r['czytano'];
  103. if($tresc) {
  104. print(iso("
  105. <TABLE border=0 width=100% align=center><tr><td class=news-tytul align=left><a href=?page=$id_glowna class=\"link-glowna\">$tytul_glowna</a></b><br>$data"));
  106.  
  107. if($licznik == "0"){
  108. echo '';}
  109. else if($licznik == "1"){
  110. echo '<br>Czytano: '.$licznik.' raz.';}
  111. else{
  112. echo '<br>Czytano: '.$licznik.' razy.';}
  113.  
  114. print(iso("
  115. </td></tr></table>
  116. <table border=0 width=100% align=center><tr><td align=left bgcolor=#ffd300>$info_glowna </td></tr><tr ><td bgcolor=#E9EEEF align=right><a href=news.php?page=$id_glowna >wiecej</a></td></tr></table><br>"));
  117.  
  118. }else{
  119.  
  120. print(iso("
  121. <TABLE border=0 width=100% ><tr><td align=left >$tytul_glowna<br></td></tr><tr><td >$data</td></tr></table>
  122. <table border=0 width=100% align=center> <tr><td align=center >$info_glowna</td></tr></table><br>"));
  123.  }
  124. }
  125.  
  126.  
  127. echo "</td></tr><tr><td height=100% valign=bottom>";
  128. $r=$wiersz-$next;
  129. $f=$wiersz+$next;
  130. echo "<table border=0 cellspacing=0 cellpadding=0 width=100%><tr><td height=15 align=left>&nbsp;Wyswietlono: ";
  131.  
  132. if($f < $size){
  133. echo "$wiersz do $f wiadomosci z &nbsp;</td><td width=25>$size </td>";
  134. }else{
  135. echo "$wiersz do $size wiadomosci z &nbsp;</td><td width=25>$size </td>";
  136. }
  137. echo "<td>&nbsp;</td>";
  138. echo" <div align=right valign=middle>";
  139. if($r >= 0){
  140. echo "<td width=80><a href=news.php?from=$r >&nbsp;<< powrót</a>&nbsp;</td><td>&nbsp;</td>";
  141.  }
  142.  
  143. if($f < $size){
  144. echo "<td>&nbsp;</td><td width=80><a href=news.php?from=$f >&nbsp;wiecej >></a> </td>";
  145. }
  146. echo "</tr></table></div></td></tr></table> ";
  147.  
  148.  
  149. }
  150.  
  151. ?>
  152. <form name=form method=POST action=news.php?page=$szukaj><input type=text name=search size=11 value="Wpisz frazę"> <input type=submit name=Submit value=Szukaj></form> 
babejsza
  1. <?
  2. $pytanie = "SELECT * FROM news WHERE id = $page";
  3.         $wynik = mysql_query($pytanie);
  4. ?>


chyba chodzi o błędne zapytanie. Powinno być tak:

  1. <?
  2. $pytanie = "SELECT * FROM news WHERE id = '$page'";
  3.         $wynik = mysql_query($pytanie);
  4. ?>
free
Niestety to nie to. Zmienilem, dodalem apostrofy i rzeczywiscie nie wyswietla juz bledu linijki 65, ale nie zwraca tez zadnego rezultatu.
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.