Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: "Błąd podczas dostępu do serwera!" o co chodz?
Forum PHP.pl > Forum > XML, AJAX
Manfred
Witam,
Nie wiem dlaczego, gdy próbuje uruchomić jakieś skrypty w ajaxie na localhost to mi wyskakuje coś takiego...
dr_bonzo
My tez nie wiemy.




Moze kod pokazesz?
kwiateusz
rozumiem że odpalasz to na domowym serwerku a nie normalnie np. z pulpitu jak zwykła strone www smile.gif
Manfred
Z krasnala leci smile.gif To jest cały skrypt, zresztą kilka mam takich skryptów gdzie wciąż błąd wyskakuje, ale co do tego to jest kilka plików, dla pewności dam wszystkie snitch.gif
index.html
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
  4. <head>
  5. <title>Podpowiadanie i autouzupełnianie w AJAX</title>
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  7. <link href="suggest.css" rel="stylesheet" type="text/css" />
  8. <script type="text/javascript" src="suggest.js"></script>
  9. </head>
  10. <body>
  11. Twoja przeglądarka nie obsługuje JavaScript!!
  12. <div id="content" onclick="hideSuggestions();">
  13. <div id="message">Podaj pierwsze litery funkcji, którą chcesz odnaleźć:</div>
  14. <input type="text" name="keyword" id="keyword" maxlength="70"
  15. size="69" onkeyup = "handleKeyUp(event)" value="" />
  16. <div id="scroll">
  17. <div id="suggest">
  18. </div>
  19. </div>
  20. </div>
  21. </body>
  22. </html>


suggest.php
  1. <?php
  2. // odwoĹ‚anie do pliku zwierajÄ…cego klasÄ™ Suggest
  3. require_once('suggest.class.php');
  4. // tworzy nowÄ… instancjÄ™ klasy Suggest
  5. $suggest = new Suggest();
  6. // pobiera parametr - sĹ‚owo kluczowe
  7. $keyword = $_GET['keyword'];
  8. // czyĹ›ci dane wyjĹ›ciowe
  9. // nagłówki majÄ… zapobiec przechowywaniu danych w pamiÄ™ci podrÄ™cznej przeglÄ…darki
  10. header('Expires: Mon, 26 Jul 1997 05:00:00 GMT' ); 
  11. header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . 'GMT'); 
  12. header('Cache-Control: no-cache, must-revalidate'); 
  13. header('Pragma: no-cache');
  14. header('Content-Type: text/xml');
  15. // wysyĹ‚a wyniki do klienta
  16. echo $suggest->getSuggestions($keyword);
  17. ?>


suggest.class.php
  1. <?php
  2. // Ĺ‚aduje moduĹ‚ obsĹ‚ugi błędĂłw
  3. require_once('error_handler.php');
  4. // Ĺ‚aduje plik konfoguracyjny
  5. require_once('config.php');
  6. // klasa, ktĂłrej zadaniem jest obsĹ‚uga funkcji podpowiadania i autouzupeĹ‚niania po stronie serwera
  7. class Suggest
  8. {
  9. // obsĹ‚uga bazy danych
  10. private $mMysqli;
  11. // konstruktor, otwiera połączenie z bazÄ…
  12. function __construct() 
  13. {  
  14. // Ĺ‚Ä…czy z bazÄ…
  15. $this->mMysqli = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_DATABASE);
  16. }
  17. // destruktor, zamyka połączenie z bazÄ…
  18. function __destruct() 
  19. {
  20. $this->mMysqli->close();
  21. }
  22. // zwraca nazwy wszystkich funkcji, ktĂłre zaczynajÄ… siÄ™ od wartoĹ›ci $keyword
  23. public function getSuggestions($keyword)
  24. {
  25. // obcina Ĺ‚aĹ„cuch sĹ‚owa kluczowego
  26. $patterns = array('/s+/', '/"+/', '/%+/');
  27. $replace = array('');
  28. $keyword = preg_replace($patterns, $replace, $keyword);
  29. // tworzy zapytanie SQL, ktĂłre pobiera pasujÄ…ce nazwy funkcji z bazy
  30. if($keyword != '')
  31. $query = 'SELECT name ' . 'FROM suggest ' . 'WHERE name LIKE "' .
  32. $keyword . '%"';
  33. // jeĹ›li sĹ‚owo kluczowe nie zostaĹ‚o podane, nie zwraca nic
  34. else
  35. $query = 'SELECT name ' . 'FROM suggest ' . 'WHERE name=""'; 
  36. // wykonuje zapytanie SQL
  37. $result = $this->mMysqli->query($query);
  38. // tworzy odpowiedĹş w formacie XML
  39. $output = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
  40. $output .= '<response>';
  41. // jeĹ›li sÄ… wyniki, przeglÄ…da je w pÄ™tli i dodaje do danych wyjĹ›ciowych
  42. if($result->num_rows)
  43. while ($row = $result->fetch_array(MYSQLI_ASSOC))
  44. $output .= '<name>' . $row['name'] . '</name>';
  45. // zamyka strumieĹ„ wyjĹ›ciowy 
  46. $result->close();
  47. // dodaje znacznik koĹ„czÄ…cy plik
  48. $output .= '</response>';  
  49. // zwraca wyniki
  50. return $output;
  51. }
  52. //koniec klasy Suggest
  53. }
  54. ?>


error_handler.php
  1. <?php
  2. // ustawia metodÄ™ obsĹ‚ugi błędu uĹĽytkownika na error_handler
  3. set_error_handler('error_handler', E_ALL);
  4. // funkcja obsĹ‚ugujÄ…ca błędy
  5. function error_handler($errNo, $errStr, $errFile, $errLine)
  6. {
  7. // czyĹ›ci wygenerowane wczeĹ›niej dane wyjĹ›ciowe
  8. // komunikat o błędzie danych wyjĹ›ciowych
  9. $error_message = 'ERRNO: ' . $errNo . chr(10) .
  10.  'TEKST: ' . $errStr . chr(10) .
  11.  'LOKALIZACJA: ' . $errFile .
  12.  ', linia ' . $errLine;
  13. echo $error_message;
  14. // zapobiega wykonywaniu innych skryptĂłw php
  15. }
  16. ?>


Pozdrawiam i z góry dzięki:)
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.