Integrazione script esterno

10 contenuti / 0 new
Ultimo contenuto
Integrazione script esterno

Rieccomi qua dopo un po di assenza,e sono sempre alle prese con il nostro Drupal,bene..sto cercando di sviluppare un nuovo progetto,su drupal ovviamente...Una parte di tale progetto (la parte piu complessa) la ho già bella che funzionante in uno script esterno autonomo.

Il mio obiettivo,dal momento che nn ho ancora le conoscenze per crearmi un modulo ad hoc,è quello di riuscire ad integrare in drupal una parte di script.

La mia idea,era quella di riscrivere le pagine dello script,sottoforma di nodi e blocchi di drupal,e sfruttare i vari ruoli e moduli di drupal per completare il resto...

<?php
include_once './includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
?>
?>

ma questo codice,si porta dietro anche le session e la connessione al db ?.
altra cosa,se io sposto le tabelle che mi servono dal db script al db drupal,e inserisco il mio php nei nodi drupal,ho cmq bisogno del bootstrap ?...

Scusate le domande forse "stupide",ma devo chiarirmi un po di cose in testa per capire bene come implementare il tutto in base alle mie conoscenze tecniche...

Bisognerebbe capire quante cose fa lo script... Secondo me, fai prima a incorporarlo in un modulo di Drupal, piuttosto che a cercare di costruirgli Drupal intorno.

Eh.. l'idea del modulo è quella che piace di piu anche a me.. ma IMHO sto brancolando un po nel buio...

In sintesi,la funzione che devo ricreare io,nn fa altro che passare delle flashvars a 2 swf diversi ma interattivi tra loro,visualizzati in base al tipo di ruolo,e in base alle azioni compiute sull'swf aggiornare campi nel db.

Cmq,nn avendo conoscenze cosi avanzate di php,sto procedendo un po per gradi...

1) dallo script ho rimosso le pagine (profili,caricamento immagini,email,newsletter ecc ecc) che posso tranquillamente ricreare con drupal.
cosi facendo,sono arrivato ad avere "solamente" 5 pagine di codice.. in totale saranno si e no 6-700 righe di codice,tra cui 1 centinaio di righe di query abbastanza semplici da comprendere anche per me...

2) nello stesso modo ho rimosso dal db le tabelle che credo inutili alla funzione che devo ricreare,in tutto mi sono rimaste 2 tabelle con 4 righe e 4 campi...

3) ho letto alcune guide su come creare un modulo da 0,e apparte agli hook_install - remove e update nn ho capito granchè...

4) cercando di capire alcuni moduli,mi sono accorto che Userpoints potrebbe fare per 3/4 il mio lavoro..
A: E'interfacciabile a sistemi di pagamento
B: Utilizza il sistema di punti,che io posso tranquillamente utilizzare per il mio scopo
C: Permette di tracciare ogni singolo movimento di punti,mi permette di toglierne aggiungerne,mi permette di categorizzare per tassonomie i movimenti,e si interfaccia con rules e views (ottima cosa)

5) Ho ricopiato il modulo userpoints e ho rinominato i vari hook con il nome del mio modulo

6) Ho inserito gli schemi di hook_install relativi alle tabelle che devo aggiungere,e volendo proprio strafare (sono pazzo.. hihih) ne ho aggiunte un'altro paio,relative al alcune funzioni che mi sono balenate in testa... (eventuale upgrade futuro)

Ora viene la parte complessa,ricreare il codice vero e proprio dello script...
Vi tengo aggiornati,anche se credo che sarà piu facile che siate voi ad aggiornare me :P

Ps. si accettano tutti i consigli,trucchi e guide possibili :)

@morxe: temo che stai seguendo l'approccio sbagliato..
io fare funzionare drupal sotto e se poi serve passi dati ai componenti flash che fa le visualizzaizoni che ti aspetti,

Ciao
Marco
--
My blog
Working at @agavee

Anche se non ho ben capito quello che stai cercando di fare, ti suggerisco caldamente di studiare qualcosa di gia' fatto per costruire il tuo applicativo, o modulo.

Sto provando anch'io di creare un modulo per conto mio (Drupal 6.x), quindi sto un po' brancolando nel buio, ma sono partito con tre moduli che sto usando come appoggio. Anche il PHP e' nuovo per me (conosco altri linguaggi di programmazione), quindi cerco le 'dritte' tra codice gia' scritto...

Per il momento sto riuscendo bene utillizando PHPEclipse e Xdebug, con moduli Coder e Devel - entrambi buoni fonti di codice, ed idee. Devo dire che il percorso e' abbastanza faticoso, ma almeno il debug mi aiuta - molto lentamente, per motivi del continuo ricaricamento della pagina...

Dato che sembra che stai lavorando col database, dai un occhiata a Schema.

Se invece vuoi avvolgere Drupal in un applicativo PHP, prova guardare Drush, che fa proprio quest'operazione.

Dopo due giorni, sono riuscito a creare un modulo che non fa niente (ancora). E lo fa niente molto bene, senza bacchi ;-) Ma almeno:

  • Si installa e disinstalla
  • Si rifiuta di installare se le condizioni non sono corretti
  • Si visuallizza messaggi (di solito piangucolando)
  • Si presenta un help semplice
  • Si aggancia ai hook di boot e init
  • Si aggiancia al hook menu
  • Si visuallizza una pagina di risultati tipo "Funziona!"

Per la maggioranza lavoro in "speranzioso ignoranza". Guardo quello che fa modulo x, scelgo uno piu' vicino a quello che voglio io, cut and paste, smanetto un po', debuggo un po', porto fuori il cane quando sono troppo frustrato, le solite cose insomma.

Magari fra un altro giorno o due fara' qualcosa di utile, chi sa. Nel frattempo lo sta gia' faccendo, perche' qualcosa sto imparando.

Metterei volentieri il codice in mostra per ricevere critiche utile, ma non posso fare l'attach. Sto spettando pazientemente. Se c'e' qualche interesse, posso postare il codice qui, ma diventera' un post molto molto lungho.

HTH

John

Più imparo, più dubito.

Quote:
@morxe: temo che stai seguendo l'approccio sbagliato..
io fare funzionare drupal sotto e se poi serve passi dati ai componenti flash che fa le visualizzaizoni che ti aspetti,

Infatti il mio problema è proprio quello,far compiere a Drupal alcuni passaggi (un paio)..che senza modulo particolare non fa..E nn sapendo creare moduli è un po un casino (per ora)...

C'ho perso 5 serate ma a forza di provare e riprovare ora riesco a passare le variabili dell'utente loggato,ad una pagina esterna..la quale manda le variabili all'SWF, e lo ingloba,il tutto tramite LoadVars (As2) e non tramite flashvars che come sappiamo,lascia in chiaro ogni cosa....nello stesso sistema sto creando la funzione di Send Post dall'SWF ad una pagina esterna,la quale legge le variabili e tramite insert le inserisce nel Db.. chi conosce bene php drupal e as3 avrebbe fatto tutto in credo non piu di una serata,io invece devo andare per tentativi, esempi, e molto caffè... (e sigarette !! )

@jhl.verona: se mi permetti un consigio proba NetBeans ;)

Ciao
Marco
--
My blog
Working at @agavee

Primo i miei complimenti per il blog...

mavimo wrote:
@jhl.verona: se mi permetti un consigio proba NetBeans ;)

Certo che puoi. Al JUG di Trento ci facciamo paragoni fra le due (tre se includi JetBrains IntelliJ IDEA) qualche volta. Ma (opinione mio bada bene) non c'e' questo grande differenza fra le due (o tre). Fatto sta che hanno una curva di apprendimento non indifferente, ed e' difficile trovare il tempo di provare in profondita' piu' di uno. I miei prove con Netbeans sono rimaste alla version 3.x, cioe' anni fa. Certi concetti non mi piaceva. Trovavo Eclipse piu' intuitivo. Ma i gusti sono molto personale.

E un po' come 'scegliere' fra Prototype e jQuery. Io scopri' Prototype lungho la strada di imparare Ruby passando per Ruby on Rails. E stato un 'primo amore'.

Avevo menzionato il mio ambiente di sviluppo solo perche' ho impiegato poco tempo (due/tre ore) per renderlo funzionante. Di solito riesco invocare tanti di quiei leggi di Murphy da fare paura. Per il momento non mi sta funzionando il plugin di Subversion (Subclipse), mi pare che ho la versione di svn giusto, ma qualcosa non va. Mah. Chiedero' al prossimo meeting dato e' proprio su quest'argomento. Nel frattempo mi arrangio o col CLI, o con RapidSVN.

Ah, dato che tu hai un debole per gedit, aprezzo il tuo suggerimento verso un 'concorrente' piu' ambientato verso il mondo di Javaisti. In questo momento ho 15 tabs aperto pieno di codice core di Drupal in gedit. Ancora non capisco molto, ma almeno si e' caricato in un lampo!

John

Più imparo, più dubito.

IMHO NetBeans ha fatto salti da gigante dalla 6 alla 6.5 (e più ancora alla 6.7-6.8) in ambito PHP, poi ovviamente dipende da cosa serve, molto più usabile di eclipse e nonostante la curva di apprendimento ti consiglierei di provarlo.

Per quanto riguarda gedit hai dato un occhio ai miei plugin per drupal? ;)

Ciao
Marco
--
My blog
Working at @agavee

PHP, Netbeans, Eclipse et al...

mavimo wrote:
IMHO NetBeans ha fatto salti da gigante dalla 6 alla 6.5 (e più ancora alla 6.7-6.8) in ambito PHP, poi ovviamente dipende da cosa serve, molto più usabile di eclipse e nonostante la curva di apprendimento ti consiglierei di provarlo.

Okay. Quando ho una giornata 'tranquillo' provero' installare l'ultimo versione.

mavimo wrote:
Per quanto riguarda gedit hai dato un occhio ai miei plugin per drupal? ;)

Si, Anche due. Anche qui faro' l'install in tranquilita'.

Per il momento sto faticando ad arrivare a regime con PHP. Passo piu' tempo cercando il nome di una funzione che fa quello che voglio (lunghezza di un array? ma si sara' length(), ah no, si chiama count() - sigh) o cercando di capire il sintasse di un switch, piu' che smanettare la tastiera.

John

Più imparo, più dubito.