Autore Topic: Reupera dati da form edit  (Letto 2216 volte)

Offline mpigio

  • Appassionato
  • ***
  • Post: 235
  • Sesso: Maschio
    • Mostra profilo
Reupera dati da form edit
« il: 23 Nov 2012, 18:03:31 »
Ciao a tutti, ho creato una form di edit e nel controller sto cercando di recuperare i valori ma ma con il solito sistema non ottengo i valori.

Ho recuperato tutti i dati del form e li ho stampati così:
Codice: [Seleziona]
        $data = JRequest::get('post');
        foreach ($data as $key => $value)
            echo "<br>key: $key - value: $value";

ed ottengo questo:

key: option - value: com_mycom
key: task - value: myitem
key: id - value: 12
key: 1b343222a8918c0755fed49e97516e7b - value: 1
key: jform - value: Array

Per mostrare anche l'array:
Codice: [Seleziona]
        $data = JRequest::get('post');
        foreach ($data as $key => $value) {
            echo "<br>key: $key - value: $value";
            if ($key=='jform')
                foreach ($value as $k => $v)
                    echo "<br>key: $k - value: $v";
        }

Ottengo questo:
key: option - value: com_mycom
key: task - value: myitem
key: id - value: 12
key: 1b343222a8918c0755fed49e97516e7b - value: 1
key: jform - value: Array
key: id - value: 12
key: address - value: ciao
key: receivers - value: all
key: created_by - value: 42
key: created - value: 2012-11-23 15:51:28
key: modified - value: 0000-00-00 00:00:00
key: modified_by - value: 0
key: published - value: 1

Come posso recuperare direttamente un field senza questo doppio ciclo?

$address = JRequest::getString('address', '');

Non mi ritorna nulla!!!

Grazie in anticipo

mau_develop

  • Visitatore
Re:Reupera dati da form edit
« Risposta #1 il: 23 Nov 2012, 18:12:03 »
scusa ma qual'è il "solito sistema"? ... quello che hai postato? non mi sembra sia un solito sistema

M.

Offline mpigio

  • Appassionato
  • ***
  • Post: 235
  • Sesso: Maschio
    • Mostra profilo
Re:Reupera dati da form edit
« Risposta #2 il: 23 Nov 2012, 18:13:10 »
questo per me è il solito sistema:

$address = JRequest::getString('address', '');


mau_develop

  • Visitatore
Re:Reupera dati da form edit
« Risposta #3 il: 23 Nov 2012, 18:17:56 »
cos'è address e cosa sono le virgolette vuote?

perchè se è il solito sistema sopra fai in altro modo?
JRequest::get('post');

M.

Offline mpigio

  • Appassionato
  • ***
  • Post: 235
  • Sesso: Maschio
    • Mostra profilo
Re:Reupera dati da form edit
« Risposta #4 il: 23 Nov 2012, 18:23:49 »
Cerco di spiegarmi meglio...

Vorrei recuperare uno dei campi del form che si chiama address

Codice: [Seleziona]
<input type="text" size="40" class="inputbox required" value="ciao" id="jform_address" name="jform[address]" aria-required="true" required="required">

e lo recupero con
$address = JRequest::getString('address ', '');

ma ritorna stringa vuota.
Il secondo parametro indica il valore di default se il campo dovesse essere vuoto, ma non è vuoto, infatti inserendo anche il ciclo che ho indicato prima vedo che i valori nei campi ci sono.

mau_develop

  • Visitatore
Re:Reupera dati da form edit
« Risposta #5 il: 23 Nov 2012, 18:28:08 »
...scusa ma come fa jform[address] ad essere una stringa? ... e non è nemmeno un namespace ma una key di un array.... e joomla centra poco ...

M.

Offline mpigio

  • Appassionato
  • ***
  • Post: 235
  • Sesso: Maschio
    • Mostra profilo
Re:Reupera dati da form edit
« Risposta #6 il: 23 Nov 2012, 18:34:27 »
Sono tutti così!

Anche i componenti nativi di Joomla!

Vai in edit dal backend di un articolo di joomla e guarda il codice del titolo, troverai questo:

Codice: [Seleziona]
<input type="text" size="30" class="inputbox required" value="" id="jform_title" name="jform[title]" aria-required="true" required="required">

Tutti i componenti sono fatti così...
Se nel controller dell'articolo di joomla volessi aggiungere un task, come recupereresti il titolo?
Viene indicato come jform[title] e lo recuperi con  JRequest::getString('title');

mau_develop

  • Visitatore
Re:Reupera dati da form edit
« Risposta #7 il: 23 Nov 2012, 18:37:28 »
Sono tutti così!
Anche i componenti nativi di Joomla!
---------------------------------------------------------------
mi fai un esempio di un controller che fa come dici per recuperare un form?

M.

Offline mpigio

  • Appassionato
  • ***
  • Post: 235
  • Sesso: Maschio
    • Mostra profilo
Re:Reupera dati da form edit
« Risposta #8 il: 23 Nov 2012, 18:43:18 »
Ho detto che i campi input sono tutti così.

Per inciso ho usato anche questo sistema visto che sono su J2.5

$jinput = JFactory::getApplication()->input;
$address = $jinput->get('address', '', '');

Ma torna cmq vuoto.

Io sto cercando una soluzione, se fossi stato in grado non avrei scritto qui, tu ce l'hai una soluzione per recuperare, ad esempio, in un task del controller il campo titolo di un articolo?

Grazie per l'interessamento

mau_develop

  • Visitatore
Re:Reupera dati da form edit
« Risposta #9 il: 23 Nov 2012, 18:49:26 »
peccato tu non capisca e nemmeno voglia seguire ragionamenti che ti portano a capire...
certo che la so la soluzione ma questo non è un ticket di assistenza e non mi piace fare le cose in questo modo, mi spiace

M.

Offline mpigio

  • Appassionato
  • ***
  • Post: 235
  • Sesso: Maschio
    • Mostra profilo
Re:Reupera dati da form edit
« Risposta #10 il: 23 Nov 2012, 18:57:04 »
Ti ringrazio se mi vuoi portare a ragionare per trovare una soluzione, ma allora non mi è chiaro su cosa dovrei ragionare.

Sul fatto che sia un array e non una stringa?

Dovrei usare $array = $jinput->getArray...?

Se non preferisci darmi la risposta, puoi guidarmi verso la soluzione?

Offline simone83

  • Appassionato
  • ***
  • Post: 362
  • Sesso: Maschio
    • Mostra profilo
Re:Reupera dati da form edit
« Risposta #11 il: 23 Nov 2012, 19:28:20 »
$requestData = JRequest::getVar('jform', array(), 'post', 'array');

dentro $requestData torvi le variabili sottoforma di array.

Quello che crcava di farti capire è che ad esempio title non è un nome di una input ma una posizione dell'array jform
BRAINCODE
Da Psd a Joomla - Sviluppo componenti joomla - SEO con Joomla
x-brain

Offline mpigio

  • Appassionato
  • ***
  • Post: 235
  • Sesso: Maschio
    • Mostra profilo
Re:Reupera dati da form edit
« Risposta #12 il: 23 Nov 2012, 19:40:05 »
Grazie Simone83 per avermi dato la soluzione a anche grazie e mau_develop che ha provato ad aiutarmi.


Ma evidentemente il divario di conoscenze era troppo ampio.

 

Host

Torna su