spip-it  

Re: [Spip-it] Problema motore di ricerca con tabella personalizzate

Renato Formato
Thu, 22 Oct 2009 07:26:03 -0700

Ciao Roberto,

ho notato che i nomi delle variabili non corrispondono alle dichiarazioni.
le dichiarazioni sono:
$tab_vie
$tab_vie_key

mentre in $table_principales leggo
$tabvie
$tabvie_key

Anche la tebella del ciclo sembrerebbe non corrispondere
Infatti la tabella è dichiarata come tab_vie
$tables_principales['tab_vie']
mentre nel BOUCLE leggo tabvie.

Forse è questo il problema...

Ciao
Renato

Il 22 ottobre 2009 15.38, Roberto Curioni
<r.curi...@comune.cusano-milanino.mi.it> ha scritto:
> Ciao Renato,
>     abbiamo provato ad implementare l'indicizzazione su una tabella
> personalizzata che si chiama tab_vie utilizzando le indicazioni che ci hai
> scritto, quindi nel file mes_options.php che abbiamo creato sotto config
> abbiamo aggiunto le seguenti righe di codice:
>
> <?php
> //  Questo codice serve ad aggiungere la definizione di
> // tabelle personalizzate all'interno di SPI
>
> //  L'array $tables_principales è definito nel file standard SPIP
> // ecrire/base/serial.php
>
> global $tables_principales;
>
> $tab_vie = array(
>   "DESCRIZIONE" => "varchar(50) NOT NULL",
>   "VALORE"  => "varchar(250) DEFAULT NULL");
>
> $tab_vie_key = array(
>   "PRIMARY KEY" => "DESCRIZIONE");
>
> $tables_principales['tab_vie'] =
>  array('field' => &$tabvie, 'key' => &$tabvie_key);
>
> ?>
>
> Poi abbiamo provato a creare un ciclo che estraesse i dati dalla tabella
> suddetta il cui codice è il seguente:
>
>   <BOUCLE_vieXX(tabvie) {}>
>        Descrizione: #DESCRIZIONE<br />
>        Valore: #VALORE<br />
>        <hr />
>   </BOUCLE_vieXX>
>
> A questo punto nasce il probema, in queste condizioni il mio articolo col
> ciclo mostra solo le etichette...
> Descrizione:
> Valore:
> per un numero di volte quanti sono i record nella tabella, ma i dati non
> vengono visualizzati.
> Se invece togliamo tab_vie dalla definizione di $tables_principales['no
> tab'] il mio ciclo mostra correttamente i dati da cosa dipende?
> Come risolviamo il problema?
>
> Grazie
> Roberto
>
> ----- Original Message -----
> From: "Renato Formato" <rform...@gmail.com>
> To: "Massimiliano" <m.di...@tiscali.it>
> Cc: <spip-it@rezo.net>
> Sent: Tuesday, October 20, 2009 5:02 PM
> Subject: Re: [Spip-it] Ripeto quesito sul motore di ricerca con tabella
> esterne
>
>
> Ok, capito.
> L'unica cosa da fare è dichiare in SPIP l'esistenza della tabella.
> La dichiarazione deve essere fatta nel file mes_options.php, da creare
> all'interno di config o di ecrire, se non esiste già.
>
> Per vedere come è fatta una dichiarazione, puoi dare un'occhiata al
> file ecrire/base/serial.php
>
> Lì troverai le definizioni di tutte le tabelle di SPIP.
> Prendi una tabella come modello e scrivi la dichiarazione della tua
> tabella in mes_options.php
>
> Ricapitolando:
> in mes_options.php
>
> globals $tables_principales;
>
> $mia_tabella = array(
>  'campo' => 'tipo campo' (la dichiarazione è uguale a quella di mySQL,
> es. bigint(21) NOT NULL )
> etc etc
> );
>
> $mia_tabella_key = array(
>  'nome indice' => 'campi associati',
> etc
> etc
> )
>
> $tables_principales["mia_tabella"] = array('field' => &$mia_tabella,
> 'key' => &$mia_tabella_key);
>
>
> Finito!
>
> A questo punto, non solo potrai usare il plugin, ma anche fare dei
> cicli nei modelli, senza ricorrere al php, come per le tabelle
> standard di SPIP.
>
> Renato
_______________________________________________
spip-it@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-it