Forum Flash, Actionscript, PHP e MySQL
Logica condizionale su ritorno PHP

 
Nuovo Topic   Rispondi    Forum Flash, Actionscript, PHP e MySQL » ActionScript & Server Side
Precedente  Successivo 
Autore Messaggio
ab69aho
nuovo utente
nuovo utente



Registrato: 22/02/10 11:19
Messaggi: 4

MessaggioOggetto: Logica condizionale su ritorno PHP
Inviato: 22.02.10 | 11:35
Rispondi citando

Un saluto a tutti e anticipate scuse se il mio primo post su questo forum sia stato già trattato o risultasse banale.
Ho personalizzato una fotogallery Flash+XML affinche il file XML anzichè esistere oggettivamente venga di volta in volta generato da un file PHP dopo aver ricevuto una variabile inserita dall'utente nel filmato Flash che ne verifica la presenza nei metadata presenti in tutti i files/immagini JPG presenti in una determinata cartella.
In pratica stiamo parlando di un piccolo motore di ricerca fotografico senza l'ausilio di un DB...
Tutto funziona alla perfezione, tuttavia mi ritrovo in stallo sulla seguente necessità:
considerato come il PHP mi restituisca:
1. il file XML correttamente strutturato in caso di riscontro fra parola chiave e immagini (con annesso popolamento della gallery);
2. un echo "&report=KO&" qualora nessuna immagine/files JPG abbia soddisfatto il termine cercato;
devo far valutare al mio Flash questa differente risposta e nel secondo caso avvisare l'utente (con un messaggio/pop-up) che la sua ricerca non ha prodotto risultati.
Attualmente il mio pulsante di "search" esegue questo codice:
=====================================================
invia_form.onRelease = function() {
//oggetto LoadVars a cui assegno il valore del campo di testo di input inserito dall'utente
var lv_search:LoadVars = new LoadVars();
lv_search = dato.text
//verifico che il campo di testo di input non sia vuoto e in tal caso visualizzo una pop-up di alert
if (dato.text == null || dato.text ==""){
errore_invio.onFadeDone = function() {
this.onFadeDone = undefined;
var intv = setInterval(function () {
errore_invio.fadeAlpha(0);
clearInterval(intv);
}, 1000);
};
errore_invio.fadeAlpha(100);
} else {
//genero un'oggetto XML a cui assegno il valore restituito dal file PHP + la variabile inserita dall'utente
imageList_xml = new XML ();
imageList_xml.ignoreWhite = true;
imageList_xml.load ("_manimages.php?str="+lv_search);
//popolo la gallery
imageList_xml.onLoad = function (success) {
if (success){imageListLoaded(whichalbum)
}
}
}
===================================================
Come detto tutto ciò funziona, ma... dove e come inserire un'ulteriore logica condizionale per valutare la risposta del PHP?
Grazie anticipate e buon lavoro!
Torna in cima
Profilo Messaggio privato  
Sponsor
Coach
amministratore
amministratore


Età: -1981
Registrato: 31/01/03 13:50
Messaggi: 4546
Località: Verona

MessaggioOggetto:
Inviato: 24.02.10 | 16:17
Rispondi citando

Ciao ab69aho,
mi sembra che nel codice che hai postato vi siano degli errori (a prima vista), non vedo l'utilizzo del LoadVars.

Potresti controllare e postare un codice corretto? :)

Se la condizione è: "risultati nessuno" o "XML" solamente... ti basterà controllare se è presente anche 1 sola variabile di quelle che ritorni in caso di errore.
Quindi se è presente questa variabile sai che non c'è nessun risultato, altrimenti carichi l'XML.
Ma... perchè non lo fai direttamente dallo stesso PHP?
Sinceramente non vedo una logica corretta nel codice...


P.S: ricordati di racchiudere tra tag CODE il codice che posti, per renderlo più leggibile...

____________________________________________________________


Il Forum è uno strumento di condivisione, oltre a fare DOMANDE, si possono anche dare RISPOSTE!
Torna in cima
Profilo Messaggio privato [ Nascosto ] HomePage Yahoo Messenger MSN Messenger Skype
ab69aho
nuovo utente
nuovo utente



Registrato: 22/02/10 11:19
Messaggi: 4

MessaggioOggetto: Re: Oggetto: Logica condizionale su ritorno PHP
Inviato: 26.02.10 | 12:11
Rispondi citando

Ciao Coach e scusa il ritardo del mio riscontro oltre all'assenza di una parentesi a chiusura del mio codice.
 
Codice:
invia_form.onRelease = function() { 
//oggetto LoadVars a cui assegno il valore del campo di testo di input inserito dall'utente 
var lv_search:LoadVars = new LoadVars(); 
lv_search = dato.text 
//verifico che il campo di testo di input non sia vuoto e in tal caso visualizzo una pop-up di alert 
if (dato.text == null || dato.text ==""){ 
errore_invio.onFadeDone = function() { 
this.onFadeDone = undefined; 
var intv = setInterval(function () { 
errore_invio.fadeAlpha(0); 
clearInterval(intv); 
}, 1000); 
}; 
errore_invio.fadeAlpha(100); 
} else { 
//genero un'oggetto XML a cui assegno il valore restituito dal file PHP + la variabile inserita dall'utente 
imageList_xml = new XML (); 
imageList_xml.ignoreWhite = true; 
imageList_xml.load ("_manimages.php?str="+lv_search); 
//popolo la gallery 
imageList_xml.onLoad = function (success) { 
if (success){imageListLoaded(whichalbum) 

}
}
}

Ora il "sintax error dovrebbe sparire.... e in effetti manca il LoadVars, perchè non riesco a scriverlo/inserirlo al posto giusto.
In ogni caso il mio problema è legato proprio al valutare la risposta ottenuta dal PHP (che preferirei non modificare).
Di fatto ottengo:
- un'oggetto XML (in caso di ricerca soddisfatta)
- una variabile (fissa e univoca) "&report=KO&"
In effetti potrei definire una variabile all'interno del mio filmato a cui "far raccogliere" il risultato del file PHP.
Se questa variabile è == a "&report=KO&" fermo l'esecuzione delle "funzioni gallery" e visualizzo un alert.
Negli altri casi vorrà dire che in risposta avrò un XML da passare alla gallery per popolarla.
In termini di principio la cosa mi sembra plausibile, ma "codice alla mano" sono fermo anche perchè trovo difficoltà a "valutare la differenza" tra una variabile/stringa e un'oggetto XML articolato...
Tutoriale e post sulla valutazione di una variabile ottenuta dal PHP non mancano, ma (sicuramente per mia inesperienza...) non riesco ad adattarle alla mia situazione.
Un'aiuto, una bozza di codice da completare sarà dunque graditissima.... ;-)
Grazie e buon w.e. a tutti.
Torna in cima
Profilo Messaggio privato  
Coach
amministratore
amministratore


Età: -1981
Registrato: 31/01/03 13:50
Messaggi: 4546
Località: Verona

MessaggioOggetto:
Inviato: 26.02.10 | 12:20
Rispondi citando

Allora... iniziamo con il dire che è proprio sbagliato l'approccio nell'utilizzo della classe LoadVars, soprattutto qui:
 
Codice:
var lv_search:LoadVars = new LoadVars(); 
lv_search = dato.text

Tu utilizzi lv_search, come una stringa da passare in query allo script PHP, e non come un oggetto LoadVars.

Se devo condigliarti su come procedere... ti consiglierei di utilizzare solamente XML, "sputato" da PHP, ma solamente XML.
Non so com'è strutturato il tuo XML, ma ti basterebbe in caso di "nessun risultato", restituire un XML con un nodo del tipo:
 
Codice:
<error label="Nessun risultato" />

Così facendo, ti basterebbe verificare se è presente il node "error", se fosse presente potresti visualizzare il messaggio di errore che vuoi, vosualizzare un messaggio d'errore usando un attrobuto (come nell'esempio sopra), o fare le operazioni che preferisci fagiano
In caso contrario, gallery.

che dici?

____________________________________________________________


Il Forum è uno strumento di condivisione, oltre a fare DOMANDE, si possono anche dare RISPOSTE!
Torna in cima
Profilo Messaggio privato [ Nascosto ] HomePage Yahoo Messenger MSN Messenger Skype
ab69aho
nuovo utente
nuovo utente



Registrato: 22/02/10 11:19
Messaggi: 4

MessaggioOggetto:
Inviato: 26.02.10 | 13:24
Rispondi citando

Ciao.
Condivido l'osservazione sul modo con cui concateno al PHP la variabile inserita dall'utente affinchè venga usata nella ricerca di metatag che la soddisfano... ma attualmente funziona e non mi crea troppi problemi.
L'idea di entrare nel merito e analisi del valore di un determinato nodo dell XML l'ho in effetti avuta, ma non sono riuscito a portarla a termine, perchè mentre mi risulta semplice "leggere" nodi di un xml oggettivamente presente su disco (come file), ho avuto problemi a "vedere" i nodi di un file che in realtà non esiste se non generato "on the fly" dal PHP.
In pratica il trace dello stesso nodo fatto sul medesimo file XML esistente restituiva il valore corretto, fatto sul PHP (che genera l'XML) finiva "undefined".
Sicuramente sbagliavo qualcosa, ma viste le difficoltà m'è sembrato d'intuire che per Flash ci sia differenza tra file XML reale e generato.
L'idea del valutare una variabile m'era quindi sembrata più "robusta"....
OT: purtroppo non sono io a scrivere il PHP, quindi a problema s'aggiunge altro problema...
Lavorerò ancora con qualche IF...
A presto e grazie ancora.
Torna in cima
Profilo Messaggio privato  
Coach
amministratore
amministratore


Età: -1981
Registrato: 31/01/03 13:50
Messaggi: 4546
Località: Verona

MessaggioOggetto:
Inviato: 26.02.10 | 14:24
Rispondi citando

 
ab69aho ha scritto:
In pratica il trace dello stesso nodo fatto sul medesimo file XML esistente restituiva il valore corretto, fatto sul PHP (che genera l'XML) finiva "undefined".

Per verificare che lo script PHP ti restituisca correttamente un file XML, ti basta aprirlo da browser :)
Hai inserito gli headers x farlo vedere come un file XML?
 
ab69aho ha scritto:
L'idea del valutare una variabile m'era quindi sembrata più "robusta"....

Quindi c'è già questa gestione?
Perchè secondo me, con le difficoltà tecniche che hai... troverai più difficoltà.

Dovresti essere più chiaro in futuro, perchè dici di caricare un file XML creato fisicamente da PHP, ma io nel tuo codice vedo che carichi come XML un file PHP Whistle

____________________________________________________________


Il Forum è uno strumento di condivisione, oltre a fare DOMANDE, si possono anche dare RISPOSTE!
Torna in cima
Profilo Messaggio privato [ Nascosto ] HomePage Yahoo Messenger MSN Messenger Skype
ab69aho
nuovo utente
nuovo utente



Registrato: 22/02/10 11:19
Messaggi: 4

MessaggioOggetto:
Inviato: 26.02.10 | 17:43
Rispondi citando

Ciao.
Grazie per il consiglio anche se ero già riuscito a leggere l'XML via browser.
Proprio per questo ritengo di trovarmi in una situazione atipica ovvero quella di trattare un file/oggetto XML come da prassi ma che in realtà non esiste perchè echo PHP:
 
Codice:
imageList_xml.load ("_manimages.php?str="+lv_search); e non imageList_xml.load ("pippo.xml");

Tuttavia questo è fattibile, ampiamente documentato e infatti funziona alla perfezione, finquando ottengo risposta come da struttura/oggetto XML compiuto e regolarmente compilato.
L'idea infatti di fare un motore di ricerca per immagini senza utilizzare un DB e sfruttando proprio la capacità di Flash nell'interpretare echo PHP come oggetto XML m'è piaciuta e l'ho trovata molto utile: bastano le foto (con i loro metatag), PHP (per leggerli) e Flash per visualizzarle.
Inoltre e a prescindere il fatto che non scrivo un byte, soddisfo così l'eventualità di due o più utenti contemporanei che chiedono cose diverse: ottengo n. echo PHP tutti diversi fra loro e n. gallery popolate diversamente contemporaneamente.
Incomincio però a credere che da qualche parte tutta questa comodità si debba pagare...
Grazie comunque del supporto e alla prossima.
Torna in cima
Profilo Messaggio privato  
Mostra prima i messaggi di:   
Nuovo Topic   Rispondi    Forum Flash, Actionscript, PHP e MySQL » ActionScript & Server Side Tutti i fusi orari sono GMT + 2 ore
Pagina 1 di 1

Discussioni Simili
Topic Autore Forum Risposte Ultimo Messaggio
Nessun nuovo messaggio Ritorno... Bruce Qualsiasi altra cosa 5 14.10.05 | 04:32 Leggi gli ultimi messaggi
Bruce
Nessun nuovo messaggio Logica MySQL cli PHP 14 03.05.05 | 19:30 Leggi gli ultimi messaggi
Pazzooo
Nessun nuovo messaggio ritorno bottone alexaloisi Flash Generale 0 07.06.10 | 21:12 Leggi gli ultimi messaggi
alexaloisi
Nessun nuovo messaggio Logica MySql II cli PHP 7 05.05.05 | 09:10 Leggi gli ultimi messaggi
cli



 
Vai a:  
Non puoi inserire nuovi Topic in questo forum
Non puoi rispondere ai Topic in questo forum
Non puoi modificare i tuoi messaggi in questo forum
Non puoi cancellare i tuoi messaggi in questo forum
Non puoi votare nei sondaggi in questo forum
Non puoi allegare files in questo forum
Puoi downloadare gli allegati in questo forum



Powered by phpBB © 2001, 2002 phpBB Group - phpBB SEO Designed by coachdesign - © 2003-2005