2011-01-04 2 views
0

У меня есть база данных с полем для пространственных данных и интерфейсом cakephp для него. В MySQL я могу сохранить данные, выполнив:Обработка пространственных данных в CakePHP

INSERT INTO узлов (Location) VALUES (GeomFromText ('POINT (42,450071 -76.487664)'))

Как я могу сделать торт принять широты и долготы по веб-форму и вставить ее таким образом? Я сделал модель, которая читает пространственные данные, но я не могу понять, как заставить ее писать в пространственном формате.

Спасибо за понимание.

-Эндрю

ответ

0

Это немного сложно найти в руководстве, если вы не знаете, что искать, но это должно помочь вам: http://book.cakephp.org/view/1027/query

например что-то вроде:

$gLat = 42.450071; 
$gLong = -76.487664; 
$this->Node->query("INSERT INTO nodes (Location) VALUES (GeomFromText('POINT({$gLat} {$gLong})'))"); 
+0

Aha - хорошо выглядит. Поэтому я должен создать поле в представлении, которое загружает переменные в $ gLat и $ gLong. Просто делать echo $ form-> input ('gLat'); этого не сделает. Я заглянул в книгу, но есть ли способ сделать ввод формы доступным к переменной, читаемой контроллером, а не автоматически введенной в db? –

+0

$ this-> данные будут содержать все данные формы. Попробуйте debug ($ this-> data); в вашем контроллере. – Leo