Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP] Nie działający Select
grzes999
post
Post #1





Grupa: Zarejestrowani
Postów: 305
Pomógł: 29
Dołączył: 5.07.2011

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


Witam
Męczę się już jakiś czas z tym problem i nic mi nie wychodzi.
Otóż załóżmy, że mam taką tabelę



I chcę pobrać id_rozkladu określonej godziny w formularzu.Godzina jest zapisana w tabeli jak char.
Mój fragment kodu z zapytaniem
  1. $zapytanie=mysql_query("Select id_rozkladu from rozklad where godzina='\"$czas\"'");
  2. $wynik=mysql_fetch_array($zapytanie);
  3. $ile=mysql_num_rows($zapytanie);


Do testów zrobiłem tylko zliczanie tych pól; ale niestety cały czas jest 0.
Próbowałem już like ale też nie pomogło.
Połączenie z baza mam na pewno tak, że to można pominąć.
Dodam jeszcze, że to samo zapytanie z wstawioną godziną w panelu phpmyadmin działa.

Ten post edytował grzes999 25.07.2011, 12:05:48
Go to the top of the page
+Quote Post
jacusek
post
Post #2





Grupa: Zarejestrowani
Postów: 262
Pomógł: 3
Dołączył: 18.10.2009
Skąd: Łódź

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


  1. "Select id_rozkladu from rozklad where godzina=\"$czas\""

to powinno pomóc. Masz błąd w składni- apostrof za dużo na końcu pytania.
Zawsze możesz spróbować to sprawdzić sprawdzające jakie pytanie przesyłane jest do bazy - wystarczy wpisać echo $zapytanie
Go to the top of the page
+Quote Post
grzes999
post
Post #3





Grupa: Zarejestrowani
Postów: 305
Pomógł: 29
Dołączył: 5.07.2011

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


To nie to, a co do apostrofu to jak kopiowałem kod to nie skopiowałem apostrofa na początku.I niby zapytanie przesyła się dobre; ale niestety nic nie wybiera z tabeli.
Go to the top of the page
+Quote Post
jacusek
post
Post #4





Grupa: Zarejestrowani
Postów: 262
Pomógł: 3
Dołączył: 18.10.2009
Skąd: Łódź

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


  1. $ile=mysql_num_rows($wynik);

a może tak?
Go to the top of the page
+Quote Post
Janusz1200
post
Post #5





Grupa: Zarejestrowani
Postów: 110
Pomógł: 6
Dołączył: 19.12.2010
Skąd: Krzyżanowice

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


Wydaje się, że być może kolumnę z godziną masz szerszą niż 5 i są tam spacje, w zapytaniu ich nie masz.
Go to the top of the page
+Quote Post
kudlatypawelek
post
Post #6





Grupa: Zarejestrowani
Postów: 46
Pomógł: 5
Dołączył: 30.06.2011

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


'SELECT id_rozkladu FROM rozklad WHERE godzina LIKE "%'.$czas.'%"', ale za piękne to nie jest.
Go to the top of the page
+Quote Post
DiH
post
Post #7





Grupa: Zarejestrowani
Postów: 251
Pomógł: 34
Dołączył: 7.01.2010

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


@grzes999 A zrobiłeś chociaż echo tego $zapytanie? Stworzyłem sobie identyczną tabelkę jak Twoja, dodałem rekord z polem czas ustawionym na 23:58 i poniższy kod działa:
  1. $czas = "23:58";
  2. $sql = "SELECT * FROM tab WHERE czas = '" .$czas. "'";
  3. $query = mysql_query($sql);
Go to the top of the page
+Quote Post
grzes999
post
Post #8





Grupa: Zarejestrowani
Postów: 305
Pomógł: 29
Dołączył: 5.07.2011

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


Sprawdzałem i zapytanie niby było dobre i faktycznie jeżeli robię to na oddzielnym dokumencie to to dział.Jednak to jest tylko mały fragment większej aplikacji, W której godzina przesyłana jest za pomocą zmiennej sesyjnej.I właśnie z nią jest coś nie tak niby jest dobrze przesłana a nie daje mi oczekiwanego rezultatu.

Dziękuję wszystkim za pomoc.Miałem w zmiennej jakieś białe znaki i usuwałem je nie w tym miejscu co trzeba. Tylko teraz wynik zapytania wyświetla mi się dwa razy.

  1. $zapytanie="Select rozklad.id_rozkladu from trasy,rozklad where trasy.z='$z1' and trasy.cel='$do' and trasy.id_trasy = rozklad.id_trasy and godzina='" .$time. "'";
  2. $wynik=mysql_query($zapytanie);
  3. $wynik=mysql_fetch_array($wynik);
  4. foreach($wynik as $id_trasy)
  5. echo $id_trasy;


Co tym razem może być nie tak??

[edit]
Dobra już po problemie temat można zamknąć.
Dla ciekawskich dopisałem break`a i wszystko jest tak jak trzeba.
Dziękuję wszystkim za pomoc wink.gif

Ten post edytował grzes999 25.07.2011, 18:24:45
Go to the top of the page
+Quote Post
DiH
post
Post #9





Grupa: Zarejestrowani
Postów: 251
Pomógł: 34
Dołączył: 7.01.2010

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


Zamień mysql_fetch_array na mysql_fetch_assoc i break nie powinien być potrzebny.
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 Aktualny czas: 19.08.2025 - 11:45