Joomla.it Forum
Non solo Joomla... => Sviluppo => : angelo91 16 Apr 2013, 19:41:50
-
Salve.
utilizzo una versione Joomla! 2.5.7 Stable, ho una pagina php wrapper (jumi) in cui ho scritto del codice per interagire col database.Ho seguito la guida, ma non funziona e l'output è :
Your name is Super User, your email is xxx@libero.it (xxx.scaf@libero.it), and your username is admin
Your usertype is deprecated which has a group id of .
2200
Il codice è
$user =& JFactory::getUser();
echo "<p>Your name is {$user->name}, your email is {$user->email}, and your username is {$user->username}</p>";
echo "<p>Your usertype is {$user->usertype} which has a group id of {$user->gid}.</p>";
// Get a database object
$db = JFactory::getDbo();
echo "22";
// Select all records
$query = $db->getQuery(true);
$query->select('email');
$query->from('pa14u_users');
// Reset the query using our newly populated query object.
$db->setQuery((string)$query);
// Load the results as a list of stdClass objects.
$results = $db->loadObjectList();
foreach ($results as $item) {
$email=$item->email;
echo "il risultato della query"+$email;
}
[
-
Non so se è un errore scrivere il nome tabella per intero visto che nella guida leggo #_xxx ...ma anche attenendomi a questo non cambia nulla
-
usertype non è più gestito nella 2.5 come per la 1.5 e quindi visualizzi deprecated perché nel campo c'è scritto proprio deprecated
-
usertype non è più gestito nella 2.5 come per la 1.5 e quindi visualizzi deprecated perché nel campo c'è scritto proprio deprecated
Il problema non è questo. Il problema è che dove vi è scritto [size=78%]2200 dovrei visualizzare il risultato della query[/size]
-
ci credo che non vedi un bel niente, il + a che ti serve, mica fai una somma, semmai un . per fare la concatenazione di stringhe e poi usa sempre #__ per riferiti ad una tabella
-
Ho cambiato quel codice inserendo questo.Ma neanche va.Ho provato a togliere il + e usare #_ per la tabella ma non funge.
Ora il codice è questo e non mi da nessun output
$db =& JFactory::getDBO();
$query = $db->getQuery(true);
$query->select('*');
$query->from($db->nameQuote(TABLE_PREFIX.'users'));
// $query->order($db->nameQuote('id').' desc');
$db->setQuery($query);
echo $db->loadResult ;
// $results = $db->loadObjectList();
foreach( $db->loadObjectList() as $r){
$valore = $r->email;
echo $valore;
}
-
gli _ sono 2 non 1 io ho provato e funziona e TABLE_PREFIX ma che roba è, stai facendo un casino della madonna buttando cose a caso, ma non lo vedi che ti genera errori?
echo $db->loadResult ; è una funzione quindi ha le tonde. 2 load result ti carica un solo risultato
$query->from($db->nameQuote('#__users')); questa e la query giusta
-
Anche se non sei stato il massimo della gentilezza ti ringrazio.
A volte capita anche a me di dare risposte del genere sui forum, su argomenti che per me sono scontati.
Ma ti assicuro che le ho provate tutte per far funzionare questo Jdatabase e a parte l'errore della parentesi, captato perché ho scritto un echo in fase di disperazione, ho cercato di copiare le guide in giro.
Il mio errore più grande è che avevo il rapporto errori disabilitato e quindi non capivo cosa c'era di sbagliato.
Grazie. ;)
-
ti ho anche scritto il codice senza tanti giri di parole, piu gentile di cosi