Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z zapytaniem do bazy z warunkiem
Forum PHP.pl > Forum > Bazy danych > MySQL
slawekxx
Witam , mam mały problem z takim zapytaniem
  1. $query = 'SELECT * FROM dane_koncowe WHERE region = "'.$region.'" ORDER BY `dzien`,`czas` DESC ';
wyświetla mi się taki błąd " Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: Can't connect to local MySQL server through socket '/tmp/mysql.sock " co jest nie tak z tym zapytaniem ?
wookieb
Nawiąż połączenie z bazą przed użycie mysql_real_escape_string
slawekxx
no ni by działa ale nie działa , chodzi o zapytanie w takim pliku xml
  1.  
  2.  
  3. require("phpsqlajax_dbinfo.php");
  4.  
  5. // Start XML file, create parent node
  6.  
  7. $dom = new DOMDocument("1.0");
  8. $node = $dom->createElement("dane_koncowe");
  9.  
  10. $parnode = $dom->appendChild($node);
  11.  
  12. // Opens a connection to a MySQL server
  13.  
  14. $connection=mysql_connect ($db_server, $username, $password);
  15. if (!$connection) { die('Not connected : ' . mysql_error());}
  16.  
  17. // Set the active MySQL database
  18.  
  19. $db_selected = mysql_select_db($database, $connection);
  20. if (!$db_selected) {
  21. die ('Can\'t use db : ' . mysql_error());
  22. }
  23.  
  24.  
  25. if ($_POST)
  26. {
  27. if (!empty($_POST['region']) && is_scalar($_POST['region']))
  28. {
  29. $region = mysql_real_escape_string($_POST['region']);
  30.  
  31.  
  32.  
  33. [b]$query = 'SELECT * FROM dane_koncowe WHERE region = "'.$region.'" ORDER BY `dzien`,`czas` DESC ';[/b]
  34.  
  35. }
  36. }
  37.  
  38. $result = mysql_query($query);
  39. if (!$result) {
  40. die('Invalid query: ' . mysql_error());
  41. }
  42.  
  43.  
  44. header("Content-type: text/xml");
  45.  
  46.  
  47. // Iterate through the rows, adding XML nodes for each
  48.  
  49. while ($row = mysql_fetch_array($result)){
  50. // ADD TO XML DOCUMENT NODE
  51. $node = $dom->createElement("marker");
  52. $newnode = $parnode->appendChild($node);
  53.  
  54. $newnode->setAttribute("name_pl",$row['name_pl']);
  55. $newnode->setAttribute("dzien", $row['dzien']);
  56. $newnode->setAttribute("czas", $row['czas']);
  57. $newnode->setAttribute("type", $row['type']);
  58. $newnode->setAttribute("lat", $row['lat']);
  59. $newnode->setAttribute("lng", $row['lng']);
  60. $newnode->setAttribute("wind_dir", $row['wind_dir']);
  61. $newnode->setAttribute("wind_force", $row['wind_force']);
  62. $newnode->setAttribute("temperature", $row['temperature']);
  63. $newnode->setAttribute("pressure", $row['pressure']);
  64. }
  65.  
  66. echo $dom->saveXML();
  67.  
wookieb
No ale co ja mam się domyślać jakisz masz błąd/wynik kodu?
slawekxx
jak można wstawić prawidłowo warunek-kod tak aby za pomocą input type radio wybrać tam region z bazy, np. za pomocą takiego zapytania
  1. $query = 'SELECT * FROM dane_koncowe WHERE 1 ORDER BY `dzien`,`czas` DESC ';


prawidłowo generuje się plik xml , ale jak już wstawię zmienną region = "'.$region.'" do warunku plik się nie generuje czyli zapytanie jest puste "Invalid query: Query was empty" jak to poprawić aby się plik generował ?
wookieb
1) Jeżeli wstawiasz region to zapytanie nie może puste nieprawdaż?
2) Skoro masz puste zapytanie to zastanów się dlaczego nie masz zmiennej (albo zawartości) $query
3) Sprawdź czy zmienne którą podajesz ma prawidłową wartość ( var_dump ) i masz rekordy dla tego regionu
slawekxx
Wszystkie dane są w bazie nie wiem czemu się tak dzieje. Ogólnie to chcę aby za pomocą input type radio wybierając za pomocą tego kodu
  1. <head>
  2. <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
  3. <title>Pogoda</title>
  4.  
  5. src="http://maps.google.com/maps?file=api&v=2&key="
  6. type="text/javascript"></script>
  7. <script type="text/javascript" src="js/jquery.js"></script>
  8. <script type="text/javascript" src="js/jquery.tooltip.pack.js"></script>
  9. <script type="text/javascript" src="js/google_maps.js"></script>
  10. <script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
  11. <script type="text/javascript" src="js/jquery-ui-1.8.4.custom.min.js"></script>
  12. <script type="text/javascript" src="js/dialog.js"></script>
  13.  
  14. <style type="text/css">
  15. /*demo page css*/
  16. body{ font: 62.5% "Trebuchet MS", sans-serif; margin: 50px;}
  17. .demoHeaders { margin-top: 2em; }
  18. #dialog_link {padding: .4em 1em .4em 20px;text-decoration: none;position: relative;}
  19. #dialog_link span.ui-icon {margin: 0 5px 0 0;position: absolute;left: .2em;top: 50%;margin-top: -8px;}
  20. ul#icons {margin: 0; padding: 0;}
  21. ul#icons li {margin: 2px; position: relative; padding: 4px 0; cursor: pointer; float: left; list-style: none;}
  22. ul#icons span.ui-icon {float: left; margin: 0 4px;}
  23. th{text-align:center;}
  24. </style>
  25.  
  26.  
  27. <link href="js/jquery.tooltip.css" rel="stylesheet" type="text/css" />
  28. <link href="css/ui-lightness/jquery-ui-1.8.4.custom.css" rel="stylesheet" type="text/css"/>
  29. </head>
  30.  
  31. <body onload="load()" onunload="GUnload()">
  32. <div id="dialog" title="Mapa Pogody na dzień<?php $dzien=$rew[`dzien`];echo"$dzien";?>
  33. ">
  34.  
  35.  
  36. <div align="center"> <div id="map" style="width: 950px; height: 780px"></div>
  37.  
  38.  
  39.  
  40. <form name="form1" id="form1" action="" method="post">
  41. <tr><td><b>Wybierz Region</b></td></tr>
  42. <td><input type="radio" name="region" value="Grecja" />Cały obszar Grecji</td>
  43. <td><input type="radio" name="region" value="Cyklady" />Cyklady</td>
  44. <td><input type="radio" name="region" value="Peloponez" />Peloponez</td>
  45. <td><input type="radio" name="region" value="Dodekanez" />Dodekanez</td>
  46. <td><input type="radio" name="region" value="Epirus" />Epirus</td>
  47. <td><input type="radio" name="region" value="Kreta" />Kreta</td>
  48. <td><input type="radio" name="region" value="Macedonia Srodkowa" />Macedonia Środkowa</td>
  49. <tr><td><input type="radio" name="region" value="Macedonia Wschodnia i Tracja" />Macedonia Wschodnia</td>
  50. <td><input type="radio" name="region" value="Macedonia Zachodnia" />Macedonia Zachodnia</td>
  51. <td><input type="radio" name="region" value="Sporady" />Sporady</td>
  52. <td><input type="radio" name="region" value="Tesalia" />Tesalia</td>
  53. <td><input type="radio" name="region" value="Wyspy Egejskie Północne" />Wyspy Egejskie Północne</td>
  54. <td><input type="radio" name="region" value="Wyspy Jońskie" />Wyspy Jońskie</td>
  55. <td><input type="radio" name="region" value="Wyspy Sorońskie" />Wyspy Sorońskie</td></tr>
  56.  
  57. <td><input type="submit" name="Wybierz" value="Wybierz"/></td>
  58.  
  59.  
  60. <?php
  61.  
  62.  
  63.  
  64. ?>
  65. </body>


wybrać region i połączyć go z zapytaniem tego kodu
  1. <?php
  2.  
  3. require("phpsqlajax_dbinfo.php");
  4.  
  5. // Start XML file, create parent node
  6.  
  7. $dom = new DOMDocument("1.0");
  8. $node = $dom->createElement("pogoda");
  9. $parnode = $dom->appendChild($node);
  10.  
  11. // Opens a connection to a MySQL server
  12.  
  13. $connection=mysql_connect ($db_server, $username, $password);
  14. if (!$connection) { die('Not connected : ' . mysql_error());}
  15.  
  16. // Set the active MySQL database
  17.  
  18. $db_selected = mysql_select_db($database, $connection);
  19. if (!$db_selected) {
  20. die ('Can\'t use db : ' . mysql_error());
  21. }
  22.  
  23. // Select all the rows in the markers table
  24.  
  25. [b]$query = 'SELECT * FROM dane_koncowe WHERE 1 ORDER BY `dzien`,`czas` DESC ';[/b]
  26. $result = mysql_query($query);
  27. if (!$result) {
  28. die('Invalid query: ' . mysql_error());
  29. }
  30.  
  31. header("Content-type: text/xml");
  32.  
  33. // Iterate through the rows, adding XML nodes for each
  34.  
  35. while ($row = mysql_fetch_assoc($result)){
  36. // ADD TO XML DOCUMENT NODE
  37. $node = $dom->createElement("marker");
  38. $newnode = $parnode->appendChild($node);
  39. $newnode->setAttribute("name_pl",$row['name_pl']);
  40. $newnode->setAttribute("dzien", $row['dzien']);
  41. $newnode->setAttribute("czas", $row['czas']);
  42. $newnode->setAttribute("type", $row['type']);
  43. $newnode->setAttribute("lat", $row['lat']);
  44. $newnode->setAttribute("lng", $row['lng']);
  45. $newnode->setAttribute("wind_dir", $row['wind_dir']);
  46. $newnode->setAttribute("wind_force", $row['wind_force']);
  47. $newnode->setAttribute("temperature", $row['temperature']);
  48. $newnode->setAttribute("pressure", $row['pressure']);
  49. }
  50.  
  51. echo $dom->saveXML();
  52.  
  53. ?>
ale nie wiem jak to zrobić ?
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.