lat lon title description icon iconSize iconOffset, нужно подгружать из нее данные.
<?php
$bbx = $_GET["bbox"] ;
$array = explode(",",$bbx);
$ble = $array[0] ;
$bbo = $array[1] ;
$bri = $array[2] ;
$bto = $array[3] ;
// include("dbconnect.php");
$con = mysql_connect("localhost","poi","1");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
$ergebnis = mysql_query("SELECT lat, lon, title, description, icon, iconSize, iconOffset FROM poi
AND lat BETWEEN $bbo AND $bto
AND lon BETWEEN $ble AND $bri")
OR die("Error: $abfrage <br>".mysql_error()
);
$header = "lat\tlon\ttitle\tdescription\ticon\ticonSize\ticonOffset\n" ;
echo $header ;
while($row = mysql_fetch_object($ergebnis))
{
$daten = $row->lat."\t".$row->lon."\t".$row->title."\t".$row->description."\t".$row->icon."\t".$row->iconSize."\t".$row->iconOffset"\n";
echo $daten ;
}
?>
Денвер не выдает никаких ошибок, но и точки на карте не появляются.
Спустя 22 минуты, 28 секунд (16.12.2011 - 11:37) Placido написал(а):
Не знаю, почему нет ошибок, но запрос неверный - отсутствует WHERE
...FROM poi
WHERE lat BETWEEN $bbo AND $bto
AND lon BETWEEN $ble AND $bri
Спустя 1 час, 50 минут, 11 секунд (16.12.2011 - 13:27) dimmer написал(а):
Заменил AND на WHERE, но результат тот же. Может я как-то не так подключаюсь к базе?
Спустя 3 часа, 1 минута (16.12.2011 - 16:28) Placido написал(а):
А где mysql_select_db()?
Спустя 2 часа, 22 минуты, 59 секунд (16.12.2011 - 18:51) dimmer написал(а):
Изменил на такой вариант, результат прежний.
Еще подумал, влияет ли на выборку тип поля? Например, если у координат тип поля TEXT.
<?php
$bbx = $_GET["bbox"] ;
$array = explode(",",$bbx);
$ble = $array[0] ;
$bbo = $array[1] ;
$bri = $array[2] ;
$bto = $array[3] ;
$link = mysql_connect('localhost', 'poi', '1');
if (!$link) {
die('Не удалось соединиться : ' . mysql_error());
}
$db_selected = mysql_select_db('poi', $link);
if (!$db_selected) {
die ('Не удалось выбрать базу poi: ' . mysql_error());
}
$ergebnis = mysql_query("SELECT lat, lon, title, description, icon, iconSize, iconOffset FROM poi
WHERE lat BETWEEN $bbo AND $bto
AND lon BETWEEN $ble AND $bri")
OR die("Error: $abfrage <br>".mysql_error()
);
$header = "lat\tlon\ttitle\tdescription\ticon\ticonSize\ticonOffset\n" ;
echo $header ;
while($row = mysql_fetch_object($ergebnis))
{
$daten = $row->lat."\t".$row->lon."\t".$row->title."\t".$row->description."\t".$row->icon."\t".$row->iconSize."\t".$row->iconOffset"\n";
echo $daten ;
}
?>
Еще подумал, влияет ли на выборку тип поля? Например, если у координат тип поля TEXT.
Спустя 9 минут, 51 секунда (16.12.2011 - 19:01) Игорь_Vasinsky написал(а):
да. влияет.
Спустя 2 часа, 52 минуты, 12 секунд (16.12.2011 - 21:53) Placido написал(а):
Если поле не числовое, то значения нужно брать в апострофы.
"SELECT lat, lon, title, description, icon, iconSize, iconOffset FROM poi
WHERE lat BETWEEN '$bbo' AND '$bto'
AND lon BETWEEN '$ble' AND '$bri'")
Спустя 1 час, 49 минут, 44 секунды (16.12.2011 - 23:43) dimmer написал(а):
Placido, огромное спасибо!
Не прошло и суток, как я нашел как посмотреть ошибки :D
http://127.0.0.1/base/dbcsv.php?bbox=21.82...3,55.4242437506
Матюгалось на строчку
iconOffset"\n"; заменил на iconOffset."\n";
Потом
Заменил FROM poi на FROM convenience
Ура!!! Работает.
Осталось разобраться почему вместо русских букв квадраты.
Не прошло и суток, как я нашел как посмотреть ошибки :D
http://127.0.0.1/base/dbcsv.php?bbox=21.82...3,55.4242437506
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in Z:\home\localhost\www\base\dbcsv.php on line 40
Матюгалось на строчку
$daten = $row->lat."\t".$row->lon."\t".$row->title."\t".$row->description."\t".$row->icon."\t".$row->iconSize."\t".$row->iconOffset"\n";
iconOffset"\n"; заменил на iconOffset."\n";
Потом
Error:
Table 'poi.poi' doesn't exist
Заменил FROM poi на FROM convenience
Ура!!! Работает.
Осталось разобраться почему вместо русских букв квадраты.
Спустя 4 минуты, 12 секунд (16.12.2011 - 23:47) Игорь_Vasinsky написал(а):
Цитата |
то значения нужно брать в апострофы. |
в одинарные кавычки))
в апострофа беруться названия таблиц, полей
Спустя 1 минута, 6 секунд (16.12.2011 - 23:49) Игорь_Vasinsky написал(а):
Цитата |
$link = mysql_connect('localhost', 'poi', '1'); if (!$link) { die('Не удалось соединиться : ' . mysql_error()); } |
$link = mysql_connect('localhost', 'poi', '1');
if (!$link) {
die('Не удалось соединиться : ' . mysql_error());
}
mysql_query("SET NAMES 'ut8'");
Спустя 11 минут, 41 секунда (17.12.2011 - 00:00) dimmer написал(а):
Игорь_Vasinsky спасибо.
Рабочий вариант, вдруг кому пригодится.
Рабочий вариант, вдруг кому пригодится.
<?php
$bbx = $_GET["bbox"] ;
$array = explode(",",$bbx);
$ble = $array[0] ;
$bbo = $array[1] ;
$bri = $array[2] ;
$bto = $array[3] ;
$link = mysql_connect('localhost', 'poi', '1');
if (!$link) {
die('Не удалось соединиться : ' . mysql_error());
}
$db_selected = mysql_select_db('poi', $link);
if (!$db_selected) {
die ('Не удалось выбрать базу poi: ' . mysql_error());
}
mysql_query("SET NAMES 'ut8'");
$ergebnis = mysql_query("SELECT lat, lon, title, description, icon, iconSize, iconOffset FROM convenience
WHERE lat BETWEEN '$bbo' AND '$bto'
AND lon BETWEEN '$ble' AND '$bri'")
OR die("Error: $abfrage <br>".mysql_error()
);
$header = "lat\tlon\ttitle\tdescription\ticon\ticonSize\ticonOffset\n" ;
echo $header ;
while($row = mysql_fetch_object($ergebnis))
{
$daten = $row->lat."\t".$row->lon."\t".$row->title."\t".$row->description."\t".$row->icon."\t".$row->iconSize."\t".$row->iconOffset."\n";
echo $daten ;
}
?>
Спустя 6 минут, 9 секунд (17.12.2011 - 00:06) Игорь_Vasinsky написал(а):
блин. там же опечатка)) utf8 должно быть ))) чудо
Спустя 8 минут, 55 секунд (17.12.2011 - 00:15) dimmer написал(а):
На самом деле все решилось сменой кодировки в Опере с UTF-8 на Кириллица/Автоопределние

Спустя 1 минута, 29 секунд (17.12.2011 - 00:17) Игорь_Vasinsky написал(а):
жаль.. я уж в чудо поверил...
Спустя 2 часа, 18 минут, 16 секунд (17.12.2011 - 02:35) Placido написал(а):
Цитата (Игорь_Vasinsky @ 16.12.2011 - 22:47) |
в одинарные кавычки)) в апострофа беруться названия таблиц, полей |
"Не следует путать два таких разных знака, как апостроф и обратный апостроф (или знак побочного ударения). Апостроф (') находится рядом с клавишей <Enter>, а обратный апостроф (`) спрятался под клавишей <Esc>"
(С) из учебника по MS Word 2003
ТЫЦ
Спустя 3 минуты, 22 секунды (17.12.2011 - 02:38) Игорь_Vasinsky написал(а):
ааа... для нас это - одинарная кавычка
