Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> różnice w wynikach dla zapytania, pomiędzy phpmyadminem a adodb
mihauu
post
Post #1





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 29.05.2005

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


witam.

Mam sobie tabelke ogloszenia_ogl. Jest tam kilka pól charakteryzujących produkt , kategorie w ktorej sie znajduje oraz aktywnosc. Poczatkowo pole akcept bylo set ('0','1') wszystko dzialalo pieknie na zapytanie :
  1. SELECT COUNT(id) AS ile
  2. FROM ogloszenia_ogl
  3. WHERE akcept='1' AND sciezka LIKE '%/$k%'



Liczylo wszystkie rekordy aktywne z kategorii i podkategorii $k.

Postanowilem wprowadzic 3 wartosc do komorki akcept.
Ustawilem ja SET('0','1','2'). W tym momencie wszystko sie posypalo. Zapytanie zaczelo zwracać rekordy niezależnie od pola akcept. Teraz zmieniłem poraz kolejny na int(2) - caly czas jest źle.
Baza jest wypelniona paroma rekordami wiec niespecjalnie wiem co zrobić, najchętniej bym ją skasował i zaczął od nowa, ale to raczej nie wchodzi w gre.
Co ciekawe jesli to zapytanie wkleje do phpmyadmina to dziala poprawnie , jednak w skrypcie w ogole nie bierze pod uwagę pola akcept, zupelnie jakby go nie bylo.


php Version 4.4.1
mysql Client API version 4.1.12

adodb 4.65


a kawelek kodu wyglada tak:

  1. <?php
  2. if ($page != ""){
  3. $zzz = $page * 10;
  4.  
  5. } else {
  6. $zzz=11;
  7. $page=1;
  8. }
  9.  
  10. $limit_min = $zzz - 10;
  11. $limit_max = 10;
  12.  
  13. $i = 0;
  14. $liczenie ="SELECT COUNT(id) AS ile FROM ogloszenia_ogl WHERE akcept='1' AND sciezka LIKE '%/$k%' ";
  15. $policz_ile2 = $db->Execute("$liczenie");
  16. echo($liczenie."<br><br>");
  17. if ($policz_ile2 === false) die ("nie moglem policzyc rekordow"); //
  18. while (!$policz_ile2->EOF) {
  19. $ile_zdjec = $policz_ile2->fields['ile'];
  20. // echo("$ile_ogloszen asdasd");
  21. $policz_ile2->MoveNext();
  22.  
  23. } // while
  24. ?>



najlepsze jest to jak potem wyswietlam te wyniki i kaze pytam where akcept='1' to on pokazuje mi wszystkie rekordy, i przy kazdym wyswietlam ile wynosi akcept to pokazuje 1.

jesli spytam sie :
  1. WHERE akcept='1'


to pokazuje cos innego niz
  1. <?php
  2. where akcept=1
  3. ?>



Czy to możliwe żeby baza się sypła? Jak skopiowałem tę tabelę to zapytanie wcale nie chce działać w adodb(zwraca blad), w phpmyadmin działą








Spotkał się ktoś z czymś takim i wie jak to ugryźć ?
Z góry dzięki za pomoc.

ps mam nadzieje że w dobrym dziale pisze...

Ten post edytował mihauu 10.02.2006, 15:28:53
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 26.09.2025 - 08:50