Joomla.it Forum

Non solo Joomla... => Sviluppo => : andreasuriani 02 Jan 2018, 10:33:48

: GetDBO per creazione Componente Joomla (Da php a "php joomla :) )
: 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.
: Re:GetDBO per creazione Componente Joomla (Da php a "php joomla :) )
: Ahmed Salvini 02 Jan 2018, 11:38:08
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/
: Re:GetDBO per creazione Componente Joomla (Da php a "php joomla :) )
: Alex21 02 Jan 2018, 13:52:50
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!