Back to top

Autore Topic: Nuovo plugin, ma le query sql dove le metto?  (Letto 3496 volte)

Offline keyascii

  • Appassionato
  • ***
  • Post: 495
  • Sesso: Maschio
    • Mostra profilo
Nuovo plugin, ma le query sql dove le metto?
« il: 23 Feb 2011, 14:14:38 »
Salve,
ho quasi ultimato la scrittura di un nuovo plugin che, una volta testato, metterò a disposizione di chi voglia utilizzarlo.
Il plugin, necessita di cb installato e aggiunge in quanto, si appoggia alla tabella jos_comprofiler.
Ha bisogno di due nuovi campi in questa tabella e vorrei che li creasse in automatico in fase di installazione.
Come posso fare?
Grazie in anticipo
Se io e te abbiamo una cosa e ce la scambiamo, io e te abbiamo ancora una cosa, ma se io e te abbiamo un'idea e ce la scambiamo, tu hai 2 idee e io ho due idee!

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:Nuovo plugin, ma le query sql dove le metto?
« Risposta #1 il: 23 Feb 2011, 14:55:53 »
ciao,
 sinceramente non mi pare proprio che tu possa utilizzare install/sql ed inserire l'alter table. puoi provare, ma tieni presente che non è documentato e potrebbe dare problemi in altre release...

ciao,
marco
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline keyascii

  • Appassionato
  • ***
  • Post: 495
  • Sesso: Maschio
    • Mostra profilo
Re:Nuovo plugin, ma le query sql dove le metto?
« Risposta #2 il: 23 Feb 2011, 15:49:27 »
Non penso che il motivo siano le release in quanto, se ho dei campi da me aggiunti nella tabella comprofiler di cb, non vanno certo persi con le nuove release.
Se il problema invece è l'impossibilità di usare il comando alter table è un altro discorso. Se non si polo non si pole!!!  :o :o :o :o
In tal caso, come faccio ad informare l'utente che vuole installare il mio plugin, di creare dei campi, denominati obbligatoriamente in una certa maniera?
Se io e te abbiamo una cosa e ce la scambiamo, io e te abbiamo ancora una cosa, ma se io e te abbiamo un'idea e ce la scambiamo, tu hai 2 idee e io ho due idee!

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:Nuovo plugin, ma le query sql dove le metto?
« Risposta #3 il: 23 Feb 2011, 15:58:55 »
io parlavo di releases di joomla ovviamente, parlando invece di cb consiglio di non usare nomi comuni per i campi ;)

la possibilità di inserire sql non è documentata per l'installer di joomla quando si tratta di plugin.

io farei un componente 'dummy' che installa il plugin. trattandosi di componente puoi inserire, oltre al sql, anche un file install.php che compia le operazioni necessarie. il che ti consentirebbe anche di verificare le dipendenze...

ciao,
marco

mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

mau_develop

  • Visitatore
Re:Nuovo plugin, ma le query sql dove le metto?
« Risposta #4 il: 23 Feb 2011, 16:07:35 »
In tal caso, come faccio ad informare l'utente che vuole installare il mio plugin, di creare dei campi, denominati obbligatoriamente in una certa maniera?
-------------------------------------------------------------
devi fare una tabella in relazione con quella dell'altra extension, toccare le cose degli altri non è mai una buona idea e può portare problemi.

M.

Offline keyascii

  • Appassionato
  • ***
  • Post: 495
  • Sesso: Maschio
    • Mostra profilo
Re:Nuovo plugin, ma le query sql dove le metto?
« Risposta #5 il: 23 Feb 2011, 16:42:23 »
Scusate ma, pur comprendendo i consigli, non avete risposto alla mia domanda.
devi fare una tabella in relazione con quella dell'altra extension, toccare le cose degli altri non è mai una buona idea e può portare problemi.
Secondo me non ha senso mau, anche se mi rendo conto del gap di conoscenza della materia che c'è tra me e te, ma permettimi di dirti, che senso ha avere installato cb e non inserire nuovi campi nel profilo? Invece di inserirli da pannello di controllo di CB, lo faccio direttamente con 2 semplicissime query. Non vado a modificare il codice di CB ma quello per cui CB è nato.
Se devo creare una tabella ad hoc per gestire 2 capi per ogni utente, non basta più il plugin ma ho bisogno di un componente per la gestione dei dati.
Tra le tante cose che CB permette, una di queste è proprio la personalizzazione dei campi del profilo e il tutto, restando sempre indipendente dalle release future.
O mi sbaglio?
« Ultima modifica: 23 Feb 2011, 16:44:03 da keyascii »
Se io e te abbiamo una cosa e ce la scambiamo, io e te abbiamo ancora una cosa, ma se io e te abbiamo un'idea e ce la scambiamo, tu hai 2 idee e io ho due idee!

mau_develop

  • Visitatore
Re:Nuovo plugin, ma le query sql dove le metto?
« Risposta #6 il: 23 Feb 2011, 17:00:24 »
non è che ti sbagli o hai ragione .... ribadisco quello che dico sempre, col codice puoi fare di tutto o quasi e se non guardi al futuro di ciò che scrivi e non esegui test sul codice puoi fare a meno di considerare diversi componenti, moduli e plugin... sono tutti la stessa cosa e sono composti sostanzialmente da un solo file.

A volte è + importante l'obbiettivo di come lo si raggiunge per cui è veramente difficile dare giudizi su giusto o sbagliato.

M.

Offline keyascii

  • Appassionato
  • ***
  • Post: 495
  • Sesso: Maschio
    • Mostra profilo
Re:Nuovo plugin, ma le query sql dove le metto?
« Risposta #7 il: 23 Feb 2011, 21:21:56 »
Scusa mau se insisto ma la tua risposta non c'entra nulla con la mia domanda che riformulo in modo diverso:
ho costruito un plugin che si appoggia su due campi opportunamente creati nella tabella comprofiler di CB.
Visto che il componente in questione (cb-comprofiler) è perfetto per l'aggiunta di campi nel profilo degli utenti, esiste il modo di creare automaticamente questi due campi in fase di installazione del plugin?
Se io e te abbiamo una cosa e ce la scambiamo, io e te abbiamo ancora una cosa, ma se io e te abbiamo un'idea e ce la scambiamo, tu hai 2 idee e io ho due idee!

mau_develop

  • Visitatore
Re:Nuovo plugin, ma le query sql dove le metto?
« Risposta #8 il: 23 Feb 2011, 21:35:14 »
la possibilità di inserire sql non è documentata per l'installer di joomla quando si tratta di plugin.

io farei un componente 'dummy' che installa il plugin. trattandosi di componente puoi inserire, oltre al sql, anche un file install.php che compia le operazioni necessarie. il che ti consentirebbe anche di verificare le dipendenze...
..oppure fai un file sql e scrivi che devono caricarlo.

altre vie non ne vedo

M.

Offline keyascii

  • Appassionato
  • ***
  • Post: 495
  • Sesso: Maschio
    • Mostra profilo
Re:Nuovo plugin, ma le query sql dove le metto?
« Risposta #9 il: 23 Feb 2011, 21:41:57 »
Ok grazie... alla fine mi sa che scrivo un bel file txt IMPORTANT con dentro le indicazioni necessarie e casomai con dentro le due query da eseguire.
Potrebbe essere una soluzione valida secondo voi?
Se io e te abbiamo una cosa e ce la scambiamo, io e te abbiamo ancora una cosa, ma se io e te abbiamo un'idea e ce la scambiamo, tu hai 2 idee e io ho due idee!

Offline dazo

  • Esploratore
  • **
  • Post: 169
    • Mostra profilo
Re:Nuovo plugin, ma le query sql dove le metto?
« Risposta #10 il: 27 Feb 2011, 16:38:40 »
Sui plugin non si può fare:


1
Codice: [Seleziona]
<install>
<sql>
<file driver="mysql" charset="utf8">sql/install.mysql.utf8.sql</file>
</sql>
</install>
e poi crei il tuo file .sql in cui inserisci la query

2
   
Codice: [Seleziona]
<installfile>install.php</installfile>e sull'install.php ti scrivi la query per aggiungere i campi così essendo in un php hai il vantaggio di poter verificare prima se esiste la tabella e se già esistono i campi.

?
      
Se non si può fare metti nel plugin un controllo  del tipo: 'se non esistono i campi creali'
« Ultima modifica: 27 Feb 2011, 16:47:32 da dazo »
Web Agency Roma
Web designer Seo

 



Web Design Bolzano Kreatif