Back to top

Autore Topic: ChronoConnectivity created_by e reset dei campi  (Letto 4198 volte)

Offline nun84

  • Esploratore
  • **
  • Post: 61
    • Mostra profilo
ChronoConnectivity created_by e reset dei campi
« il: 07 Dic 2009, 19:59:41 »
Non riesco a associare con chronoconnectivity l'user id di un utente... in pratica nell'articolo http://www.joomla.it/articoli-della-community/3897-chronoforms-e-chronoconnectivity-alcuni-aggiornamenti.html  viene spiegato come effettuare ricerche, ma io vorrei permettere a ogni utente di vedere solo i propri articoli creati

ho provato a mettere il seguente codice in query related settings dentro WHERE SQL ma non funziona:
 
<?php
$user = & JFactory::getUser();
$query = "WHERE cf_user_id = $user->id";
?>

Qualcuno potrebbe aiutarmi?
« Ultima modifica: 10 Dic 2009, 23:38:30 da nun84 »

Offline vales

  • Global Moderator
  • Instancabile
  • *****
  • Post: 8012
  • Sesso: Maschio
    • Mostra profilo
Re:ChronoConnectivity associazione con cf_user_id
« Risposta #1 il: 08 Dic 2009, 00:48:38 »
Prova qualcosa come questo nella sezione WHERE SQL

Codice: [Seleziona]
<?php
    $user 
= & JFactory::getUser();
    
$session =& JFactory::getSession('ricerca');
    
$search_array = array('title','introtext','fulltext');
    
$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)." AND `created_by` = '$user->id'";
            
//$_SESSION['cerca']=$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)." AND `created_by` = '$user->id'";
    }
    else
    {
    echo 
"WHERE `created_by` = '$user->id'";
    }
?>

Le modifiche rispetto all'articolo sono la prima riga che richiama $user e le tre echo che scrivono la WHERE.

Non l'ho testato.
« Ultima modifica: 08 Dic 2009, 07:59:04 da vales »
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 nun84

  • Esploratore
  • **
  • Post: 61
    • Mostra profilo
Re:ChronoConnectivity associazione con cf_user_id
« Risposta #2 il: 08 Dic 2009, 01:47:58 »
Mi sono espresso male, o nella fretta avevo lasciato intendere un altra domanda... io vorrei che ogni utente possa vedere tutti i propri articoli (senza bisogno di fare la ricerca tramite dei campi)

« Ultima modifica: 08 Dic 2009, 08:05:35 da vales »

Offline sapand

  • Nuovo arrivato
  • *
  • Post: 31
    • Mostra profilo
Re:ChronoConnectivity associazione con cf_user_id
« Risposta #3 il: 08 Dic 2009, 02:38:52 »
Interessante davvero!
« Ultima modifica: 08 Dic 2009, 02:43:21 da sapand »

Offline vales

  • Global Moderator
  • Instancabile
  • *****
  • Post: 8012
  • Sesso: Maschio
    • Mostra profilo
Re:ChronoConnectivity associazione con cf_user_id
« Risposta #4 il: 08 Dic 2009, 08:07:56 »
Mi sono espresso male, o nella fretta avevo lasciato intendere un altra domanda... io vorrei che ogni utente possa vedere tutti i propri articoli (senza bisogno di fare la ricerca tramite dei campi)

Mi ero dimendicato la terza echo.

Ora ho corretto il codice nel post precedente e dovrebbe andare sia all'inizio, quando mostrerà tuttii records dell'utente che nella ricerca.

L'utente ovviamente deve essere loggato ed in questo caso farei vedere la voce della ricerca solo in un menu utente che appare dopo il login.
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 nun84

  • Esploratore
  • **
  • Post: 61
    • Mostra profilo
Re:ChronoConnectivity associazione con cf_user_id
« Risposta #5 il: 08 Dic 2009, 11:57:07 »
Si Vales, perfetto con la terza echo funziona. Io ho risolto anche, per vedere automaticamente tutti i miei articoli (senza effettuare ricerca con campi come titolo ecc ecc) ho messo in where sql il seguente codice:

<?php
$user = & JFactory::getUser();
echo " WHERE created_by = $user->id";
?>

Grazie perché col tuo aiuto ho risolto.

N.B.
Restando in tema della tua ricerca, perchè dopo che si avvia una ricerca dopo il click su Trova i campi vengono resettati? A cosa serve? Cosa occorre modificare al tuo codice per non resettare i campi?

 



Web Design Bolzano Kreatif