Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    FLASH & PHP & XML - Variabili.

    Salve, Informo subito tutti che sono un neofita della programmazione e ringrazio chiunque possa aiutarmi!

    Dunque, Ho un calendario in Flash che legge degli Eventi da un File XML(events.xml) e ho un iframe nel quale è presente un Form(sempre in Flash) per l'inserimento di nuovi Eventi.

    Sapendo che per scrivere nel file XML necessito di PHP, Vorrei configurare il Form in Flash in modo che passi le variabili ad un file PHP e che esso poi restituisca poi un valore a seguito dell'avvenuta creazione o no dell'Evento!

    Dopo qualche prova con PHP Ho ottenuto un FILEPHP.PHP che aperto nel Browser legge i vecchi eventi dal file "events.xml" e li inserisce in un nuovo File "eventsnew.xml" aggiungendo anche un nuovo evento Vuoto.

    Dopo qualche prova con FLASH sono riuscito a fare un Form con un campo di Testo e un Bottone che passa le variabili a PHP e ottiene indietro un risultato chiamato 'verifica'.

    Il problema è che non è proprio come vorrei cioè:
    CODICE PHP:
    codice:
    <?php
    // Per la variabile ho fatto così, non so se sia corretto. Description arriva dal File Flash.
    $description = stripslashes($_POST['description']);
    ___________
    ...
    ___________
    
    //Salvo il Documento Creato in un nuovo Documento.
     $document->save("eventsnew.xml");
     
     //Verifico L'avvenuta creazione del File e restituisco un Risultato.
     if(is_file("eventsnew.xml")){
     $risultato="FILE CREATO";
       }else{
     $risultato="FILE NON CREATO";
      };
      
     //Mando l'Output "Verifica" all'SWF.
     $uscita='&verifica='.$risultato.'&';
     
     //Stampo a Video per ulteriore verifica.
     echo $uscita;
    ?>
    Se apro direttamente il FILEPHP.PHP dal Browser e il "eventsnew.xml" Viene creato, ottengo a video:
    "&verifica=ANDATA&"

    Solo che non capisco se funziona perchè dal Filmato in FLASH quello che viene scritto nella casella di testo(Chiamata: risultato) è:[ '.$risultato.' ], ovvero la cose scritta in [ '&verifica='.$risultato.'&' ] nel FILE PHP!
    Invece io vorrei che mi scrivesse scritto [ ANDATA ]!

    E inoltre non elabora nessun nuovo file come invece fa se apro direttamente dal Browser il FILEPHP.PHP!

    CODICE FLASH:
    codice:
    var loadVars_out:LoadVars = new LoadVars();//Senza questa riga non stampa nulla a video
    var loadVars_in:LoadVars = new LoadVars();
    loadVars_in.description="CENERENTOLA";
    
    loadVars_in.onLoad = function(success) {
            if (success) {
                risultato.text = loadVars_in.verifica;                          
            } else {
                risultato.text = "ERRORE";                
            }
    }
    loadVars_out.sendAndLoad("FILEPHP.PHP", loadVars_in, "POST");
    Cosa mi manca perchè mi restituisca "ANDATA" e perchè Crei il File come se aprissi il FILEPHP.PHP??
    Cosa Devo aggiungere e dove?

    PS:
    È inoltre possibile ordinare il file "eventsnew.xml" alla creazione?


    RINGRAZIO TUTTI PER L'AIUTO!!

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    719
    Mi sa che hai sbagliato nell'action script.
    Dovresti mettere le variabili POST nel loadVars_out.

    Infatti:
    loadVars_out.sendAndLoad("FILEPHP.PHP", loadVars_in, "POST");

    quindi in teoria invia le variabili contenute in loadVars_out, sempre se non mi sbagli

  3. #3
    Ah cacchio, Forse hai ragione.. Mi sono sbagliato!
    Domani appena posso provo e ti faccio sapere!

    Ma come mai comunque il file non viene creato?
    Non dovrebbe essere per quello... o si?

  4. #4

    Nothing..

    No, Niente.. Ti ringrazio cmq, ma Il valore che mi restituisce a video è ancora ".$risultato."
    Non capisco l'errore dove sia!

    Nessuno ha qualche altro suggerimento?

  5. #5

    Re: FLASH & PHP & XML - Variabili.

    Ho notato che mi sono sbagliato a scrivere nel Thread una cosa nel codice, ma non cambia nulla!

    CODICE PHP:
    codice:
     // Per la variabile ho fatto così, non so se sia corretto. Description arriva dal File Flash.
     $description = stripslashes($_POST['descriptionf']);
    
     //Verifico L'avvenuta creazione del File e restituisco un Risultato.
     if(is_file("eventsnew.xml")){
     $risultato="ANDATA";                   <-- Avevo sbagliato a scriverequesta riga.
       }else{
     $risultato="NONANDATA";             <-- Avevo sbagliato a scriverequesta riga.
      };
      
     //Mando l'Output "Verifica" all'SWF.
     $uscita='&verifica='.$risultato.'&';
     
     //Stampo a Video per ulteriore verifica.
     echo $uscita;
    ?>
    Se apro direttamente il FILEPHP.PHP dal Browser e il "eventsnew.xml" Viene creato, ottengo a video:
    "&verifica=ANDATA&"

    [/QUOTE]


    Ho anche Modificato il Codice Flash in questo Modo:
    codice:
    var loadVars:LoadVars = new LoadVars();
    loadVars.descriptionf="CENERENTOLA";
    loadVars.onLoad = function(success) {
            if (loadVars.loaded) {
                risultato.text = loadVars.verifica;                
            } else {
                risultato.text = "ERRORE";             
            }
    }
    loadVars.sendAndLoad("XMLAggiungereCampi-DomXML.php", loadVars, "POST");
    Ma il risultato è lo stesso!
    ".$risultato." e inoltre non scrive nessun file..

    Sono io che sbaglio o è impossibile?
    O è nel codice PHP?
    O devo fare qualche funzione alla fine dello script tipo getURL o qualcosa di simile?

  6. #6

    RISOLTO

    Ok, Funziona Così com'è adesso!
    Mi fregava il fatto che Fossi in Localhost!

    Ringrazio comunque tutti per la Disponibilità!

    A questo punto però vorrei sapere se è possibile ordinare il file Xml che viene fuori dagli Attributi e mantenendo anche le tabulazioni..
    Magari il controllo per l'inserimento degli eventi in ordine cronologico posso farlo anche in fase di inserimento del nodo, però Per la tabulazione non ne ho proprio idea...

    Perchè mi viene scritto tutto su di una riga!

    Qualcuno ha qualche soluzione??

  7. #7
    ma nel file generato col php o nel flash ti scrive tutto su una riga?
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  8. #8
    Trovato, Ce l'ho fatta!
    Comunque si, era Nel File Generato(Nell'XML)!

    codice:
     //Creazione del tipo Documento DOMDocument e apertura file XML.
       $document = new DOMDocument('1.0', 'UTF-8');
       $document->formatOutput = true;                     <-- Con queste due Righe in più,
       $document->preserveWhiteSpace = false;           <-- Il File Viene generato già Indentato!
       $document->load('events.xml');
    Io comunque direi che sono a posto e ringrazio tutti..
    Mi è rimasto solo da capire come Ordinare i Nodi del XML..
    Volevo fare un controllo sulle date dell'evento in modo da sistemarle in ordine cronologico...

    Se avete idee sono ben accette!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.