Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Witam wszystkim
Jestem początkującym w php-ie i mam prosty pewnie dla większości problem. Mianowicie:
Mam sobie zapytanie SQL-owe które wyciąga mi jakieś rekordy z bazy danych.
np:
SELECT * FROM TABELA WHERE DATA BETWEEN 2007-01-01 AND 2007-10-10
i tu mi działa wszystko OK, ale chciałbym żeby pojawiał mi się formularz na którym są tylko dwa pola:
data początkowa i data końcowa i abym za pomocą tego formularza wpisał wartość pierwszej daty a potem drugą date a do zapytania były już przekierowane odpowiednie zmienne i ukazywała mi się tabela z danym z wpisanego zakresu. Czyli chciałbym aby powyższe zapytanie mogło być za każdym razem defniowane (pod względem zakresu dat)
z góry dziękuje za informacje
Offline
Najprościej?
robisz optiona jednego z mnóstwem dat (o ile do tego nie ma jakiejś funkcji), nazywasz go np. option1, drugiego takiego samego, ale nazywasz go option2 i to on będzie datą końcową:
$host = ""; //host bazy $user = ""; //user $pass = ""; //hasło do bazy $dbname = ""; //nazwa bazy danych $polaczenie = mysql_connect("$host", "$user", "$pass"); mysql_select_db("$dbname"); //jeśli są obie zmienne if ($_POST[option1] == TRUE && $_POST[option1] == TRUE) { $data_pocz = $_POST[option1]; $data_kon = $_POST[option2]; //wywołujemy zapytanie $zap = "SELECT * FROM TABELA WHERE DATA BETWEEN $data_pocz AND $data_kon"; while($wiersz = mysql_fetch_array($zap)) { echo " ".$wiersz['JAKAŚ DANA Z TABELI'].""; echo " ".$wiersz['JAKAŚ DANA NUMER 2 Z TABELI'].""; } mysql_close($polaczenie); } else { echo "<FORM ACTION="" METHOD="post"> Wybierz coś: <SELECT NAME="option1"> <OPTION VALUE="2007-01-01">2007-01-01</OPTION> <OPTION VALUE="2007-02-01">2007-01-01</OPTION> <OPTION VALUE="2007-03-01">2007-01-01</OPTION> </SELECT><br /> <INPUT TYPE="submit" VALUE="Zobacz co wpisałem"> </FORM>"; //Drugi formularz z drugą nazwą option2 }
Myślę, że powinieneś coś kombinować coś w ten kit.
Offline
Lepiej zastosować jakiś kalendarzyk do wybierania dat. Polecam http://www.softcomplex.com/products/tigra_calendar/
Beda sobie dwa pola powiedzmy 'data_od' i 'data_do' , wystarczy zczytać z POST-a i do zapytania SQL.
Offline
+ proponuję zabezpieczyć skrypt przez SQL Injection :)
Offline
Dziękuje za odpowiedzi :)
Offline