Joomla.it Forum
Non solo Joomla... => Sviluppo => : andreasuriani 02 Jan 2018, 10:33:48
-
Buongiorno e buon anno a tutti!!
Udite udite, sto iniziando a creare il mio primo componente in Joomla!
Ce la farò??
Chissa..
nel frattempo ho sempre mixato il codice php a joomla (e fin'ora ha funzionato...) ma ora è giunto il momento di fare qualcosa in più.
Ora: ho la necessità di "aggiornare" questo codice:
<?php
mysql_connect("LOCALHOST","USERNAME","PSW");
mysql_select_db("DATABASE");
$term=$_GET["term"];
$query=mysql_query("SELECT * FROM '#__com_anagen_' where nominativo like '%".$term."%' order by cognome ");
$json=array();
while($nominativo=mysql_fetch_array($query)){
$json[]=array(
'value'=> $nominativo["codice_fiscale"],
'label'=>$nominativo["nominativo"]." (Codice Fiscale:".$nominativo["codice_fiscale"].")"
);
}
echo json_encode($json);
?>
Ho provato a modificarlo con questo, ma senza risultati!
<?php
$db = JFactory::getDbo();
$result = $db->setQuery("SELECT * FROM '#__com_anagen_' where nominativo like '%".$term."%' order by cognome ")->loadAssocList();
$term=$_GET["term"];
$json=array();
while($nominativo=array($query)){
$json[]=array(
'value'=> $nominativo["codice_fiscale"],
'label'=>$nominativo["nominativo"]." (Codice Fiscale:".$nominativo["codice_fiscale"].")"
);
}
echo json_encode($json);
?>
Qualche suggerimento??
A.
-
Non puoi mischiare nulla.
Probabilmente ti sfugge il concetto di classi, di incapsulazione, polimorfismo ed ereditarietà.
Devi partire dalla programmazione a oggetti, quando ti è chiara quella puoi affrontare il fw di joomla aiutandoti con un IDE di sviluppo.
http://www.html.it/guide/guida-programmazione-ad-oggetti-con-php-5/
-
Beh, senza approfondire, mi sembra che stai provando ad avere il risultato grezzo della query nella variabile $result.
Poi, però cerchi di avere il dettaglio leggendo una variabile $query (ciclo while). $query è vuota mi sa.
Il sistema più semplice per aggiornare il codice è quello di trasformare il vecchio mysql in mysqli; le query diventano tutte mysqli.
PDO è più versatile perché funziona anche con database non mysql e joomla ha degli ottimi metodi di uso. Un po' complicati da scrivere, però. La documentazione di joomla è discreta e si può sempre esaminare il codice del CMS per degli esempi di uso.
Guarda che joomla è puro php. Nulla da mischiare quindi.
E' meglio se non recuperi direttamente $term ma lo fai passare per un filtro. Anche qui joomla ha sistemi eccellenti, ma vanno bene anche quelli diretti del php se uno non è un joomla - purista.
Ciao!
BUON 2018 a trutti!