Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php/mysql]problem z danymi w wyszukiwarce
Forum PHP.pl > Forum > Przedszkole
Rico_ds
Witam,
mam problem z wyszukiwarką. Mimo iż dane są wpisywane to pokazuje mi błąd, że dane nie zostały wpisane do wyszukiwarki. Wydaje mi się, że występuje błąd w przekazaniu danych z pliku do wpisywania do pliku z systemem wyszukiwania. Niestety nie potrafię sobie z nim sam poradzic, dlatego proszę o pomoc. plik search.php
  1. <?php
  2. <form method="post" action="srch.php"> 
  3. <table>
  4. <tr><td><input type=text name='what' size=60 maxlength=255></td>
  5. <td><input type=text name='where' size=60 maxlength=255></td>
  6. <td><input type=submit></td></tr>
  7. ?>

plik srch.php:
  1. <?
  2. if ($search) // perform search only if a string was entered.
  3. {
  4. $connect = mysql_connect("localhost", "", "") or die ("Problem connecting to DataBase");
  5. $srch="%".$search."%";
  6. $query = "select * from companys WHERE name LIKE '$srch' || address LIKE '$srch' || postcode LIKE '$srch'";
  7.  
  8. $result = mysql_db_query("020london", $query);
  9.  
  10. if ($result)
  11. {
  12. echo "SEARCH RESULTS:<br><br>";
  13. echo "There is  search results";
  14.  
  15. while ($r = mysql_fetch_array($result)) { // Begin while
  16. $company_id = $r["id"];
  17. $name = $r["name"];
  18. $address = $r["address"];
  19. $postcode = $r["postcode"];
  20. $location = $r["location"];
  21. echo "<table>";
  22. echo "<tr><td>$ts</td><td>$name</td><td>$address</td><td>$postcode</td><td>$location</td></tr>";
  23. } // end while
  24. echo "</table>";
  25. } else { echo "problems...."; }
  26. } else {
  27. echo "Search string is empty. <br> Please try again";
  28. }
  29.  
  30. ?>


przy okazji czy istnieje możliwośc zrobienia tego na jednym pliku? i jak zrobi aby co drugi wynik miał tło?
Dzięki i pozdrawiam
PanGuzol
Skąd masz zmienną $search questionmark.gif
Rico_ds
Zmieniłem trochę kod:
  1. <?php
  2.  
  3. echo'SEARCH RESULTS <br/>';
  4.  
  5. $_POST['what']=trim($_POST['what']);
  6.  
  7. if(empty($_POST['what']))
  8.  
  9. die('Search string is empty. Please try again');
  10.  
  11. else
  12. {
  13.  
  14. $base=mysqli_connect('localhost','root','vertrigo','020london');
  15.  
  16. $query="Select * From comapnys Where name Like '%{$_POST['what']}%' Or description Like '%{$_POST['what']}%' Or addres Like '%{$_POST['where']}%' Or postcode Like '%{$_POST['where']}%'";
  17.  
  18. $result=mysqli_query($base,$query);
  19.  
  20. echo'There is search results<br/><br />';
  21.  
  22. $row=mysqli_fetch_assoc($result);
  23. $company_id = $row["id"];
  24. $name = $row["name"];
  25. $address = $row["address"];
  26. $postcode = $rpw["postcode"];
  27. $location = $row["location"];
  28. echo "<table>";
  29. echo "<tr><td>$name</td><td>$address</td><td>$postcode</td><td>$location</td></tr>";
  30. }
  31.  
  32. mysqli_close($base);
  33.  
  34. ?>

i:
  1. <?php
  2. <form action="search.php" method="post"> 
  3. <table>
  4. <tr><td><input type=text name='what' size=60 maxlength=155></td>
  5. <td><input type=text name='where' size=60 maxlength=155></td>
  6. <td><input type=submit value="Search" /></td></tr>
  7. </table>
  8. </form>
  9. ?>

wyświetla mi teraz coś takiego Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in odnośnie
  1. <?php
  2. $row=mysqli_fetch_assoc($result);
  3. ?>
Co może by nie tak? Jak mogę zrobi sprawdzanie drugiego pola? i proszę mi powiedziec jak mogę zrobi aby co drugi wynik miał tło. I jak mogę zrobi podliczenie ilości wyników?
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.