La comunità italiana su CakePHP

You are not logged in. Please login or register.


Pages: 1

Atom RSS

Posts [ 4 ]

ToX

Topic: Agire sui dati inviati da form prima di salvarli su database

ho un campo, costruito automaticamente, che mi fornisce dati tipo questo:

$data['Coord']['latlon'] = (44.33201416209164, 7.488727569580078)(44.391598306810266, 7.524261474609375)(44.42299211572251, 7.5991058349609375);

io dovrei suddividerli in modo da avere latitudine e longitudine separati, e sono riuscito ad ottenere una cosa tipo (faccio un print_r($this->data)wink

    [Coord] => Array
        (
            [0] => Array
                (
                    [node_id] => 9
                    [lat] => 44.33201416209164
                    [lon] => 7.488727569580078
                )

            [1] => Array
                (
                    [node_id] => 9
                    [lat] => 44.391598306810266
                    [lon] => 7.524261474609375
                )
            eccetera...

ora... provando a salvarli con $this->Coord->save($this->data); mi da errore... cosa mi sfugge? :p

Last edited by ToX (06-02-2008 15:52:42)

zuck

Re: Agire sui dati inviati da form prima di salvarli su database

Dovresti, credo, essere più chiaro scrivendo lo schema del modello "Coord" e le regole di validazione, nonchè l'errore che ti restituisce wink

ToX

Re: Agire sui dati inviati da form prima di salvarli su database

chiedo scusa ero di fretta :p

comunque guardando nel debug mi dava un errore tipo insert into coords values * array o una cosa simile, ho risolto con un foreach:

            $stringa = $this->data['Coord']['latlonbox'];
            $stringa =trim($stringa, ")(");
            $pieces = explode(")(", $stringa);
            $this->Coord->deleteAll(array("node_id" => $node_id));
            foreach ($pieces as $piece)
            {
                list($lon, $lat) = split(", ", $piece);
                $values = array("id" => null, "node_id" => $node_id, "lat" => $lat, "lon" => $lon);
                $this->data['Coord'] = $values;
                $this->Coord->save($this->data);
            }

ora sembra funzionare tutto benone. come al solito ho sbattuto la testa per un'ora per capire dove stava il problema, e poi ho trovato la soluzione subito dopo aver chiesto aiuto big_smile

boh spero possa tornare utile a qualcuno, almeno tongue

Namaless

Re: Agire sui dati inviati da form prima di salvarli su database

Usa prima di tutto i tags CODE per inserire codice.

Per il resto grazie della soluzione ToX smile

Posts [ 4 ]

Guest posting is disabled. You must login or register to post a reply.

Pages: 1

Topic info

1 guests and 0 users are reading this topic now


Forum quick jump menu

Currently used extensions: pun_topic_online_users, pun_karma, pun_admin_hook_navigator, pun_bbcode. Copyright © 2008 PunBB

[ Generated in 0.031 seconds, 10 queries executed ]