Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wybieranie rekordów z 2 zakresów
tomczan
post 27.09.2009, 17:58:03
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 27.09.2009

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


  1. $x_start = '9';
  2.  
  3. $x_koniec = '29';
  4.  
  5. $y_start = '6';
  6.  
  7. $y_koniec = '26';


  1. SELECT x,y FROM `table` WHERE x BETWEEN '$x_start' AND '$x_koniec' AND y BETWEEN '$y_start' AND '$y_koniec'


nie podaje wyników, to zapytanie działa tylko 'na sztywno', czyli:

  1. SELECT x,y FROM `table` WHERE x BETWEEN '9' AND '29' AND y BETWEEN '6' AND '26'


po podaniu wartości podaje poprawny wynik. Co jest nie tak?

Dodam jeszcze, że:



  1.  
  2. CREATE TABLE `table` (
  3.  
  4. `id` INT NOT NULL AUTO_INCREMENT ,
  5.  
  6. `x` VARCHAR(4) NOT NULL,
  7.  
  8. `y` VARCHAR(4) NOT NULL,
  9.  
  10. PRIMARY KEY (`id`))
  11.  


Proszę o szybką odpowiedź.

Ten post edytował tomczan 27.09.2009, 17:59:38
Go to the top of the page
+Quote Post
maly_swd
post 27.09.2009, 18:42:58
Post #2





Grupa: Zarejestrowani
Postów: 744
Pomógł: 118
Dołączył: 14.02.2009
Skąd: poziome

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


a zrob w php i zobacz czy aby na 100% zapytanie Ci sie dobrze sklada:

  1. echo "SELECT x,y FROM `table` WHERE x BETWEEN '$x_start' AND '$x_koniec' AND y BETWEEN '$y_start' AND '$y_koniec'";


albo podaj kawalek kodu jak to wywolujesz


--------------------
śmieszne obrazki
Kryzys: Ser jem spleśniały, wino piję stare i samochód mam bez dachu..
Go to the top of the page
+Quote Post
tomczan
post 27.09.2009, 19:30:52
Post #3





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 27.09.2009

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


  1. <?php
  2.  
  3. require('config.php');
  4.  
  5. mysql_connect($server, $user, $pass)
  6.  
  7.  
  8. $x_start = '9';
  9. $x_koniec = '29';
  10. $y_start = '6';
  11. $y_koniec = '26';
  12.  
  13. echo('<table><tr><td>x</td><td>y</td></tr>');
  14. $query = mysql_query("SELECT x,y FROM `table` WHERE x BETWEEN '$x_start' AND '$x_koniec' AND y BETWEEN '$y_start' AND '$y_koniec'");
  15. while($row = mysql_fetch_array($query)){
  16. echo('<tr><td>'.$row['x'].'</td><td>'.$row['y'].'</td></tr>');
  17.  
  18. }
  19. echo('</table>');
  20.  
  21. ?>


oto całość kodu, dzięki któremu chce to wyświetlić
Go to the top of the page
+Quote Post
nospor
post 27.09.2009, 19:34:35
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




przeciez to są liczby a nie tekst...
nie: '$x_start'
a: $x_start

analogicznie reszta


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

"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
phpion
post 28.09.2009, 07:08:11
Post #5





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




To co ~nospor + ode mnie:
Cytat(tomczan @ 27.09.2009, 18:58:03 ) *
  1.  
  2. CREATE TABLE `table` (
  3.  
  4. `id` INT NOT NULL AUTO_INCREMENT ,
  5.  
  6. `x` VARCHAR(4) NOT NULL,
  7.  
  8. `y` VARCHAR(4) NOT NULL,
  9.  
  10. PRIMARY KEY (`id`))
  11.  

zmień typ z VARCHAR na INT żeby poprawnie przechowywać liczby.
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: 27.06.2025 - 21:11