Znači opet ja:-D iman php skriptu koja bi tribala dohvatit iz baze prema dobivenin koordinatama i radijusu objekte koji imaju koordinate unutar radijusa od početnih... :-D valjda je jasno.
$radius= $_POST['radius']; $table="sometable"; $x= $_POST['x']; $y= $_POST['y']; $SQL_query = 'SELECT * FROM '.$table.' WHERE (3958*3.1415926*sqrt((x-'.$x.')*(x-'.$x.') + cos(x/57.29578)*cos('.$x.'/57.29578)*(y-'.$y.')*(y-'.$y.'))/180) <= '.$radius.';';
i sad ovo ne radi... Zaštooo??? šta god san googlea nudi se ovo ka rješenje. E, i zanima me bi li bilo brže prvo nać unutar kojih koor triba bit i onda samo ispitivat da je x između neke dvi i y između neke dvi? Znan da onda neću dobit kružnicu a to mi je bitno...
Tako je, ne dobije varijable ocito. Jesi siguran da saljes te varijable POST metodom? Ako imas request tipa http://www.adresa.com/file.php?radius=100&x=1.9768&y=1.1123 onda ti treba $_GET umjesto $_POST.
Ako saljes post metodom, daj kod kojim to radis.
jesi proba prvo izračunat taj radijus u php-u i spremit ga u neku varijablu, a onda uspoređivat tu varijablu sa radijusom iz baze?
ali neman radijus u bazi, samo x i y nekog objekta.
A u kojem smislu ne radi, jel ti izbacuje kakvu grešku ili daje krivu vrijednost?
$result = mysql_query ($SQL_query, $DB_link) or die ("Data not found. Your SQL query didn't work... ");
Ode umre i dobijen ovu poruku. Naravno, samo napomena, DB_link je dobro postavljen. Problem je 100% u upitu
Pa daj lupi mysql_error() umjesto tog fixnog error stringa da vidimo sta kaze. Malo mi je kasno sad za ovakvu matematiku :D
nemoj da te matematika zamara, to je jedna mala formulica preuzeta sa neta. Malo trigonometrije i pretvaranja gps koordinata u kilometre (ili milje ode). Evo greška:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')(x-) + cos(x/57.29578)cos(/57.29578)(y-)(y-))/180) <=' at line 1
Izgleda da ne dobije ove php varijable???
ajme glup san, bilo je post, sad je get... to je to! :-D