Back to top

Autore Topic: [RISOLTO]chronoconnecttivity 5  (Letto 2393 volte)

Offline pierofj

  • Nuovo arrivato
  • *
  • Post: 45
  • Sesso: Maschio
    • Mostra profilo
[RISOLTO]chronoconnecttivity 5
« il: 31 Gen 2015, 20:38:15 »
Buonasera,
sono qui con un altro problema. Ho una form multipage che a pagina 2 contiene una text area di nome DOMNR avvalorata
dalla pagina 1 e la vedo avvalorata in modo corretto. La pagina apre una connessione di nome risp che necessita di una clausola where per filtrare i records da visualizzare.  Io così scrivo la clausola su models condition;
<?php
$var = $form->data[DOMNR];
return array(":aaa.idar = " . $var); ?>
e mi esce il seguente errore:
1064 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 '' at line 1 SQL=SELECT COUNT(*) AS `aaa.count` FROM `report_r` AS `aaa` WHERE aaa.idar =                 

mi sembra ovvio che la clausola  where non è completa.

Può essere che la connessione non possa accedere ai campi della form da cui è stata aperta??
Scusate per il disturbo, ma le ho provate tutte.
Grazie per un eventuale Chiarimento/aiuto.
Ciao a tutti
Piero
 
« Ultima modifica: 05 Feb 2015, 17:38:51 da pierofj »

Offline vales

  • Global Moderator
  • Instancabile
  • *****
  • Post: 8012
  • Sesso: Maschio
    • Mostra profilo
Re:chronoconnecttivity 5
« Risposta #1 il: 31 Gen 2015, 22:16:09 »
Questo andrebbe così

Codice: [Seleziona]
$var = $form->data['DOMNR'];
ma una where con controlla il contenuto di una text area mi convince poco.
Download e demo di Albo Pretorio On Line per Joomla 1.5 e Joomla 2.5 e 3
Moduli scuola On Line v1 per Joomla 3
http://valesweb.altervista.org

Offline pierofj

  • Nuovo arrivato
  • *
  • Post: 45
  • Sesso: Maschio
    • Mostra profilo
Re:chronoconnecttivity 5
« Risposta #2 il: 01 Feb 2015, 11:31:19 »
Si hai ragione tu. Ho anche provato a portare DOMNR sulla testata della connection in questo modo

<TR>
<TD>Campo: <input type="text" name="DOMNR" style="height: 30px",value =" <? echo $form->data[DOMNR] ?>"   />
</TD>
</TR>

pensando che la connection non potesse accedere ai dati della form, ma niente. però sono convinto che è possibile in qualche modo essendo questa una operazione normale nel senso che se io ho una connection che mi mostra degli articoli di magazzino per esempio dovrebbe essere normale che scegliendo un articolo apro ul altra connection che mi mostra i movimenti e quindi devo in qualche modo passare il codice articolo. Ho provato anche con il gcb ma non funzia. Ora cerco su internet
Comunque grazie per la disponibilità.

Offline vales

  • Global Moderator
  • Instancabile
  • *****
  • Post: 8012
  • Sesso: Maschio
    • Mostra profilo
Re:chronoconnecttivity 5
« Risposta #3 il: 01 Feb 2015, 12:31:14 »
Certo che deve funzionare. Nella seconda connection in conditions del model  recuperi il valore dell'articolo che hai inserito nell'url del link di chiamata e crea la query con il filtro sull'articolo.

Ma se continui a scrivere
Codice: [Seleziona]
$form->data[DOMNR] senza gli apostrofi non funziona.

I link all'altra connection lo inserisci in PHP functions con il metodo che ti ho detto nell'altro post.

http://forum.joomla.it/index.php/topic,248581.msg1156051.html#msg1156051
Download e demo di Albo Pretorio On Line per Joomla 1.5 e Joomla 2.5 e 3
Moduli scuola On Line v1 per Joomla 3
http://valesweb.altervista.org

Offline pierofj

  • Nuovo arrivato
  • *
  • Post: 45
  • Sesso: Maschio
    • Mostra profilo
Re:chronoconnecttivity 5
« Risposta #4 il: 01 Feb 2015, 13:18:04 »
Vales sto impazzendo.

Ora ho scritto così
<?php
$var = $form->data[DOMNR];
return array("aaa.idar = " . '$var'); ?>
e la clausola viene viene così;
1064 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 '`aaa`.`var`' at line 1 SQL=SELECT COUNT(*) AS `aaa.count` FROM `report_r` AS `aaa` WHERE `aaa`.`idar` = $`aaa`.`var`                  
addiritura aggiunge aaa alla mia variabile che è il modello della connection  e mi mostra il nome della variabile.
Vales scusa se ti disturbo,ma sento che sono vicino alla soluzione. Mi manca solo l'ultima dritta.
Grazie


Offline vales

  • Global Moderator
  • Instancabile
  • *****
  • Post: 8012
  • Sesso: Maschio
    • Mostra profilo
Re:chronoconnecttivity 5
« Risposta #5 il: 01 Feb 2015, 18:02:46 »
Prova così

Codice: [Seleziona]
<?php return array('aaa.idar' => $var); ?>


ammesso che in $var ci sia qualcosa di giusto
Download e demo di Albo Pretorio On Line per Joomla 1.5 e Joomla 2.5 e 3
Moduli scuola On Line v1 per Joomla 3
http://valesweb.altervista.org

Offline pierofj

  • Nuovo arrivato
  • *
  • Post: 45
  • Sesso: Maschio
    • Mostra profilo
Re:chronoconnecttivity 5
« Risposta #6 il: 01 Feb 2015, 18:26:22 »
vales ecco i risultati
<?php
$var = "21";
return array('aaa.idar' => $var);
?>
funziona
<?php
$var = $form->data[DOMNR];
return array('aaa.idar' => $var);
?>
non funziona o meglio non riceve il dato  WHERE `aaa`.`idar` = '' ORDER BY `aaa`.`idar` LIMIT 10

Quindi la form che ha la textarea DOMNR ed è avvalorata ed apre la connessione e passa questo dato alla testata della connessione
perchè ho fatto questo codice, però la clausola where non la vede
<TABLE>
<TR>
<TD>_PAGINATOR_NAV_</TD>
</TR
<TR>
<TD>Dato: <input type="text" name="DOMNR" style="height: 30px",value =" <? echo $form->data[DOMNR] ?>"   />
</TD>
</TR>

A questo punto credo che la soluzione vada oltre le mie capacità oppure sto affrontando il problema in modo non corretto
Comunque grazie sei sempre gentile e io non demordo.
Se un giorno riesco a fare quello che mi prefissando te lo dico, ma soprattutto ti spiego il motivo per cui mi sono incastrato a tal punto.
Grazie ancora

Offline vales

  • Global Moderator
  • Instancabile
  • *****
  • Post: 8012
  • Sesso: Maschio
    • Mostra profilo
Re:chronoconnecttivity 5
« Risposta #7 il: 01 Feb 2015, 20:49:42 »
io l'unico problema che vedo è con continui a scrivere $form->data[DOMNR] senza gli apostrofi anzichè $form->data['DOMNR'] a meno che quel DOMNR sia una costante.



Download e demo di Albo Pretorio On Line per Joomla 1.5 e Joomla 2.5 e 3
Moduli scuola On Line v1 per Joomla 3
http://valesweb.altervista.org

Offline pierofj

  • Nuovo arrivato
  • *
  • Post: 45
  • Sesso: Maschio
    • Mostra profilo
Re:[RISOLTO]chronoconnecttivity 5
« Risposta #8 il: 05 Feb 2015, 17:42:46 »
Ho fatto così
la clausola where è la seguente:
<?php
$session =& JFactory::getSession();
$clausola=  $session->get('dato1');
return array("aaa.idar" => $clausola);
?>

la variabile $clausola è una variabile di sessione impostata così:
<?php
$session =& JFactory::getSession();
$clausola=  $session->get('dato1');
return array("aaa.idar" => $clausola);
?>
con una funzione custom sulla form che apre la connessione.
Grazie vales
piero

 



Web Design Bolzano Kreatif