Salve a tutti, ho modificato la query che si inserisce in chronoconnectivity per fare in modo che gli utenti registrati possano vedere/modificare solo i loro form. Da così:
<?php
$session =& JFactory::getSession('ricerca');
$search_array = array('categoria','nome','cognome','provincia','comune','cap','cellulare','mail','sito','fisso');
$cerca = array();
foreach ( $search_array as $search ) {
$value = JRequest::getVar($search, '' , 'post');
if ( $value ) {
$cerca[] = " `$search` LIKE '%$value%' ";
}
}
if (empty($cerca) and (JRequest::getVar('submit','no','POST')=="Trova")) {
$session->set('cerca','0','ricerca');
JRequest::setVar('limitstart',0,'Get');
}
if ( !empty($cerca) ){
echo " WHERE ".implode(' AND ', $cerca);
$session->set('cerca',$cerca,'ricerca');
}
elseif ((JRequest::getVar('submit','no','POST')<>"Trova") and ($session->get('cerca',0,'ricerca')<>0))
{
$cerca=$session->get('cerca',0,'ricerca');
echo " WHERE ".implode(' AND ', $cerca);
}
else
{
echo "";
}
?>
l'ho modificata così:
<?php
$session =& JFactory::getSession('ricerca');
$search_array = array('nome','cognome','indirizzo');
$cerca = array();
foreach ( $search_array as $search ) {
$value = JRequest::getVar($search, '' , 'post');
if ( $value ) {
$cerca[] = " `$search` LIKE '%$value%' ";
}
}
if (empty($cerca) and (JRequest::getVar('submit','no','POST')=="Trova")) {
$session->set('cerca','0','ricerca');
JRequest::setVar('limitstart',0,'Get');
}
$user=&JFactory::getUser();
if ( !empty($cerca) ){
echo " WHERE =cf_user_id".implode(' AND ', $cerca)." AND cf_user_id=".$user->get('id');
$session->set('cerca',$cerca,'ricerca');
}
elseif ((JRequest::getVar('submit','no','POST')<>"Trova") and ($session->get('cerca',0,'ricerca')<>0))
{
$cerca=$session->get('cerca',0,'ricerca');
echo " WHERE =cf_user_id".implode(' AND ', $cerca)." AND cf_user_id=".$user->get('id');
}
else
{
echo "";
}
?>
Ma non funziona. Dove sta l'errore?