Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wyswietlenie danych z MySQL do XML
Magdalena1001
post 25.03.2017, 22:32:01
Post #1





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 25.03.2017

Ostrzeżenie: (0%)
-----


Witam,

Probuje wyswietlic dane z MySQL w PHP do XML poprzez metode post w HTML, aby dzialalo jak wyszukiwarka (powiedzmy jak Google - tylko jeden box do wpisywania). Udalo mi sie z uzyciem jednej kolumny z bazy danych ale nie mam pojecia jak to zrobic zeby pobralo dane rowniez z innych kolumn.

Ponizej podaje kod ktory dziala lecz wyswietla tylko jedna kolumne, mianowicie 'area' - chce wyswietlic rowniez 'price', 'type', itd. :

  1. header('Content-type: text/xml');
  2. if (isset($_REQUEST['property'])) {
  3. $narea = trim($_REQUEST['property']);
  4.  
  5.  
  6. if ( preg_match("/[^a-zA-Z0-9 \-']|^$/", $narea) ) die ('<No_data/>');
  7. } else {
  8. die ('<Error/>');
  9. }
  10.  
  11. //Connect to MySQL server with PHP
  12. $conn = mysqli_connect("mysql.cms.gre.ac.uk","pm336","pm336","mdb_pm336") or die
  13. ('<property_details><error>'.mysqli_error().'</error></property_details>');
  14.  
  15. $query = 'SELECT id, contact, area, type, bedrooms, price FROM PROPERTY WHERE area RLIKE "'.$narea.'"';
  16. // AND price RLIKE "'.$narea.'" AND id RLIKE "'.$narea.'" AND contact RLIKE "'.$narea.'" AND type RLIKE "'.$narea.'" AND bedrooms RLIKE "'.$narea.'"
  17.  
  18. $result = mysqli_query($conn, $query) or die
  19. ('<property_details><error>'.mysqli_error().'</error></property_details>');



Jakies pomysly? Co robie zle? PS. Chce uzyc REQUEST a nie POST.
Go to the top of the page
+Quote Post
Tomplus
post 26.03.2017, 12:14:56
Post #2





Grupa: Zarejestrowani
Postów: 1 834
Pomógł: 225
Dołączył: 20.03.2005
Skąd: Będzin

Ostrzeżenie: (0%)
-----


CHyba zapominasz o funkcji wyświetlającej dane wynikowe mysqli_fetch_array($result)

  1. while($row = mysqli_fetch_array($result)) {
  2. echo "<property>";
  3. foreach($row as $key => $value) {
  4. echo "<$key>$value</$key>";
  5. }
  6. echo "</property>";
  7. }



PS. Nie wklejaj na fora hosta serwera, loginu/hasła do bazy danych.

Ten post edytował Tomplus 26.03.2017, 12:16:14
Go to the top of the page
+Quote Post
nospor
post 26.03.2017, 19:29:38
Post #3





Grupa: Moderatorzy
Postów: 36 447
Pomógł: 6292
Dołączył: 27.12.2004




@Tomplus to nie jest funkcja wyswietlajaca dane, a funkcja pobierajace dane. Ot drobna roznica wink.gif
Poza tym chyba nie zapomnial, skoro napisal wyraznie, ze dla jednej kolumny dziala wink.gif

@Magdalena
1) Problem nie ma zadnego zwiazku z ajax czy xml, no chyba ze pozniej doprecyzujesz. Poki co przenosze
2) Ale co ci nie dziala dla innych kolumn? Skoro umiesz wyswietlic jedna kolumne, to jaki problem wyswietlic dwie? CHyba ze mowiac "wyswietlic" masz na mysli warunek w zapytaniu, ktory widac zakomentowany w kodzie. Ale wowczas to wypadaloby odrozniac pojecia: WARUNEK oraz WYSWIETLIC wink.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Tomplus
post 26.03.2017, 19:40:48
Post #4





Grupa: Zarejestrowani
Postów: 1 834
Pomógł: 225
Dołączył: 20.03.2005
Skąd: Będzin

Ostrzeżenie: (0%)
-----


Pytanie na ile poprawnie zostało przedstawione pytanie oraz jaki jest dalszy ciąg kodu. Albo może to zwykły błąd w zapytaniu, atrybut encji który nie istnieje.
Go to the top of the page
+Quote Post
thek
post 27.03.2017, 00:16:42
Post #5





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Pytanie co konkretnie chcesz zrobić i czy wiesz co siedzi w tych kolumnach. Możesz mieć bowiem błąd na poziomie logiki zapytania. Nie ma zwyczajnie wyniku dla tego co chcesz zrobić bo zapytanie ma złą konstrukcję. Przykład? Szukasz rekordu, który w kolumnie pasuje do wzorca i w innej też pasuje do tego samego wzorca. Pytanie tylko czy aby na pewno to miano osiągnąć? Może miał pasować nie do obu naraz, ale do któregokolwiek z nich? Może błąd zakradł się do tego co kolumna zawiera? Dane tam mają w treści znak, który nie może być wprost wrzucony do XML? Może trzeba wpierw zamienić takie na encje, by nie spowodować błędu parsera? Przyczyny mogą być tym samym różnej natury i dobrze by było gdyby określono gdzie konkretnie problem się pojawia. Na jakim poziomie? Czym się objawia?


--------------------
Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 20.04.2024 - 00:06