Visualizzazione dei risultati da 1 a 8 su 8

Discussione: ciclo con file testo

  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    433

    ciclo con file testo

    ciao a tutti
    ho questo piccolo problemino da sottoporvi:

    Codice PHP:
    $p5="\r\n"

    $filedi="../inviati/$ordine";
    $fp=fopen($filedi,"a+");

    while(
    $tabtop=mysql_fetch_array($veto,MYSQL_ASSOC)){
    //estraggo i dati dalla query
    $nspe=$tabtop['nspe'];
    $ido=$tabtop['ido'];
    ......
    $gen=$nspe.$ido.......
    $fw=fwrite($fp,$gen);
    }
    //while
    fclose($fp); 
    praticamente vorrei creare un file di testo in cui ogni riga sia un record del DB

    ma una volta che ci provo:

    Codice PHP:
    Warningfwrite(): supplied argument is not a valid stream resource in f:\programmi\easyphp1-8\www\ordini\oper\invia.php on line 63

    Warning
    fclose(): supplied argument is not a valid stream resource in f:\programmi\easyphp1-8\www\ordini\oper\invia.php on line 64 
    la cosa strana è che se faccio tutto quanto fuori dal ciclo (apertura,scrittura,chiusura) non c'e' nessun problema, ma ovviamente così scrivo solo uno e non tutti i record estratti...

    HELP
    Donerò loro dei fiori... poiché... sotto le nuvole... tutto è così rozzo e sporco

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    433
    up
    Donerò loro dei fiori... poiché... sotto le nuvole... tutto è così rozzo e sporco

  3. #3

    ..............

    Ciao.
    Puoi fare così:
    $array = array();
    $array[] = "Id"."\t"."Parent_Id"."\t"."cat_name"."\t"."cat_de sc";
    //metti il titolo delle colonne se vuoi "\r\n" è per windows
    //MYSQL_NUM per mia comodità
    while ($row = mysql_fetch_array($result, MYSQL_NUM))
    {
    $array[] = $row[0]."\t".$row[1]."\t".$row[2]."\t".$row[3];
    }
    // 'ab' For portability
    if(($f = fopen("writeMysqlResult.dat", 'ab'))!==false)
    {
    if(fwrite($f,implode("\r\n",$array))!==false)
    {
    echo "Good Try";
    }
    fclose($f);
    }
    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    433
    scusa ma sono piuttosto

    che cosa hai fatto???

    cosa c'e' che non va nel mio codice??
    Donerò loro dei fiori... poiché... sotto le nuvole... tutto è così rozzo e sporco

  5. #5

    ..........

    Ciao.
    Mah l'ho provato e non mi da errore
    l'unica cosa che mi viene in mente
    stampa
    $filedi="../inviati/$ordine";
    per vedere se sta lì l'errore.
    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  6. #6
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    433
    il file lo crea senza problemi nella cartella inviati.... è la scrittura all' interno del ciclo che non va..... :master:
    Donerò loro dei fiori... poiché... sotto le nuvole... tutto è così rozzo e sporco

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    433
    Codice PHP:
    while($tabtop=mysql_fetch_array($veto,MYSQL_ASSOC)){

    $nspe=$tabtop['nspe'];
    $ido=$tabtop['ido'];
    ..........+ 
    altri venti campi
    $fp
    =fopen($filedi,"a+");
    $gen=$nspe.";".$ido; + altri venti campi
    $fw
    =fwrite($fp,$gen);
    fclose($fp);
    echo 
    $gen;
    }
    //--while 
    se metto tutto quanto all' interno del ciclo la cosa funziona....
    pero' mi sembra inutile aprire e chiudere ogni volta il file..... finchè sono 4/5 cicli ok, ma se cominciano a diventare una decina ralllenta tutto.... sbaglio??? (da tenere presente che la stringa da scrivere nel file non è composta solo da 2 campi (come in questo esempio) ma da una ventina....

    come mai non va la soluzione che avevo adottato prima (con la creazione del file prima del ciclo , la scrittura all' interno, e la chiusura dopo il ciclo)

    cosa non andava???
    grazie
    Donerò loro dei fiori... poiché... sotto le nuvole... tutto è così rozzo e sporco

  8. #8

    ...........

    Ad occhio se non fai apri
    e chiudi it doesn't work
    ragione per cui ti consiglierei
    di usare il codice che ti ho
    postato prima scrivi una volta
    sola e controlli di conseguenza
    una volta sola !
    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

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 © 2025 vBulletin Solutions, Inc. All rights reserved.