Back to top

Autore Topic: [RISOLTO] Scrivere dati di una form su foglio xml  (Letto 10857 volte)

Offline salsaweb

  • Esploratore
  • **
  • Post: 107
    • Mostra profilo
Re:Scrivere dati di una form su foglio xml
« Risposta #20 il: 03 Giu 2014, 15:27:56 »
Dunque, ho trovato questo codice, che dovrebbe scrivermi i dati su un file csv, non mi da errore solo che il file non lo crea. Help!  :'(

<?php
       $db
= mysql_connect ('host_db', 'db_user', 'password_db') or
          die (
'Unable to connect');
       
mysql_select_db('database', $db) or die(mysql_error($db));
           
$user=& JFactory::getUser();
       
//Creates the variables
       
$tablename = jos_chronoforms_form_madre;
       
$filename = '/' . $tablename . date("Y-m-d-H-i-s") . '.txt'; //Used / at beginning of the file to tell the application to write it in the root
       //Query for saving the table
       
$query = "SELECT * FROM $tablename WHERE cf_user_id=('".$user->id."') INTO OUTFILE '$filename'";
       
$result = mysql_query($query);
   
?>

I campi che devo avere sul file sono solamente nome,cognome,email
ps: questo codice l'ho inserito sull'evento onsubmit con un custom code

Offline salsaweb

  • Esploratore
  • **
  • Post: 107
    • Mostra profilo
Re:Scrivere dati di una form su foglio xml
« Risposta #21 il: 03 Giu 2014, 15:49:47 »
mentre questo è un esempio del file xml (lista.xml) che dovrebbe autogenerarsi ad ogni inserimento:


<?xml version="1.0" encoding="UTF-8"?>
<FMPXMLRESULT xmlns="http://www.filemaker.com/fmpxmlresult">
    <ERRORCODE>0</ERRORCODE>
    <PRODUCT BUILD="5/23/2002" NAME="FileMaker Pro"
    VERSIONE="7.0"/>
    <DATABASE DATEFORMAT="MM/dd/yy" LAYOUT="summary"
    NAME="Dipendenti.fmp12" RECORDS="23" TIMEFORMAT="hh:mm:ss"/>
    <METADATA>
        <FIELD EMPTYOK="NO" MAXREPEAT="1" NAME="nome" TYPE="TEXT"/>
        <FIELD EMPTYOK="NO" MAXREPEAT="1" NAME="cognome" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="email" TYPE="TEXT"/>
    </METADATA>
    <RESULTSET FOUND="2">
        <ROW MODID="47" RECORDID="34">
            <COL>
                <DATA>Mario</DATA>
            </COL>
            <COL>
                <DATA>Rossi</DATA>
            </COL>
            <COL>
                <DATA>mario@rossi.it</DATA>
            </COL>
        </ROW>
        <ROW MODID="89" RECORDID="78">
            <COL>
                <DATA>Giuseppe</DATA>
            </COL>
            <COL>
                <DATA>Verdi</DATA>
            </COL>
            <COL>
                <DATA>giuseppe@verdi.it</DATA>
            </COL>
        </ROW>
    </RESULTSET>
</FMPXMLRESULT>



Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:Scrivere dati di una form su foglio xml
« Risposta #22 il: 04 Giu 2014, 10:02:01 »


non dà errore perché non sei in modalità debug, ma quel codice è pieno di errori, oltre ad essere abbastanza vecchio...


1) spero che tu abbia almeno sostituito 'host_db', 'db_user', 'password_db' con le necessarie credenziali di accesso al db
2) &=? gli oggetti sono sempre passati per reference in php 5.3+
3) $tablename = jos_chronoforms_form_madre;
che è jos_chronoforms_form_madre? un letterale? mancano le virgolette. una costante? manca la definizione
4) su un server 'normale' non puoi scrivere in root!
5) quel codice scrive (o meglio dovrebbe scrivere) solo i dati dell'utente che in quel momento è collegato ed autenticato in joomla, non quelli di altre persone...


a questo aggiungi che ti crea ogni volta un nome file diverso... poi come lo recuperi?


comunque chronoform 5 ha il salvataggio di un csv tra le azioni native...


ciao

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

Offline salsaweb

  • Esploratore
  • **
  • Post: 107
    • Mostra profilo
Re:Scrivere dati di una form su foglio xml
« Risposta #23 il: 04 Giu 2014, 11:12:44 »
Ciao e grazie per la risposta. Si ovviamente ho sostituito valori (user pass nome db etc) con i miei, ma senza esito. Fondamentalmente filemaker da quello che ho capito puù comunicare con mysql in 2 modi: usando odbc (ma sul server non è possibile in quanto non permettono connessioni da software esterni) oppure tramite xml con richiesta http (????). Per quanto riguarda il csv di chronoforms invece, succede che non appena compilo tutti i dati del form mi manda il download del file csv, e non va bene poichè ad ogni registrazione ogni utente dovrebbe scaricare quel file.
Mi sa che lascerò perdere  :-\

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:Scrivere dati di una form su foglio xml
« Risposta #24 il: 04 Giu 2014, 11:25:19 »
Per quanto riguarda il csv di chronoforms invece, succede che non appena compilo tutti i dati del form mi manda il download del file csv
ma l'export in csv non devi metterlo nella stessa form di registrazione dei dati. crei una form cui possono accedere solo gli admin (o chi vuoi) e nell'onload metti l'export del csv, stessa cosa per le altre modalità di export di CF; avevo suggerito onsubmit quando si parlava di aggiungere nodi ad un xml.


su filemaker non so che dirti, lo sempre considerato molto poco...
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline salsaweb

  • Esploratore
  • **
  • Post: 107
    • Mostra profilo
Re:Scrivere dati di una form su foglio xml
« Risposta #25 il: 04 Giu 2014, 16:01:41 »
Perfetto!!!Grazie mille! Ho risolto con il tuo metodo!
Sorge un altro piccolo problema.
Come posso verificare al momento dell'iscrizione se una email è già in uso? Dal modulo di chronoforms5 ovviamente.
Ho cercato sul web ma non trovo nulla

Offline salsaweb

  • Esploratore
  • **
  • Post: 107
    • Mostra profilo
[RISOLTO] Scrivere dati di una form su foglio xml
« Risposta #26 il: 04 Giu 2014, 16:04:33 »
Evidentemente non avevo cercato bene...
http://forum.joomla.it/index.php?topic=197636.0
 :D :D :D
Grazie a tutti!

 



Web Design Bolzano Kreatif