Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 20
  1. #1
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    372

    PHP creare un file excel dopo ricerca nel DB

    Dopo aver inserito dei criteri di ricerca, tramite una query interrogo la mia tabella e ottengo una serie di righe con i dati corrispondenti.

    Attualmente utilizzo uno script (vedi sotto) per generare un file excel con tutti i dati contenuti nella mia tabella.

    Avrei bisogno di poter generare un file excel con solo i dati ottenuti dopo una ricerca.

    Come posso fare? Grazie.

    Codice PHP:
     <?php
    include ("../data.inc.php");

    $db mysql_connect($mysqlhost,$mysqluser,$mysqlpassword);
    if (
    $db==FALSE)
    die (
    "ERRORE CONNESSIONE");
    mysql_select_db($mysqldb,$db);  

    function 
    cambia(&$item$key)
    {
     
    $itemstr_replace("<br />"""$item);
     
    $itemstr_replace(PHP_EOL ""$item);
     
    $item=str_replace("\r"     ""$item);
    }

    $filename "suppliers.xls"// File Name
    // Download file
    header("Content-Disposition: attachment; filename=\"$filename\"");
    header("Content-Type: application/vnd.ms-excel");
    $user_query  mysql_query('select ragsoc, citta, provincia, telefono, fax, mail,  tipofornitore, marchi, responsabile, sconto, pagamento, trasporto,  contatto, telcontatto, mailcontatto, mobilecontatto, notecontatto,  contatto1, telcontatto1, mailcontatto1, mobilecontatto1, notecontatto1  from fornitori');
    // Write data to file
    $flag false;
    while (
    $row mysql_fetch_assoc($user_query)) {
        if (!
    $flag) {
            
    // display field/column names as first row
             
    echo "Supplier \t City \t District \t Phone \t Fax \t Mail \t  Supplier info \t Brands \t Purchaser responsible \t Discounts \t Payment  conditions\t Shipping conditions \t Main contact \t Phone \t Mail \t  Mobile \t Notes\t Second contact \t Phone \t Mail \t Mobile \t Note  \r\n";
            
    //echo implode("\t", array_keys($row)) . "\r\n";
            
    $flag true;
        }
        
    array_walk($row,'cambia');
        echo 
    implode("\t"array_values($row)) . "\r\n";
        
    }
    ?>
    Mi chiedo, caro Alberto, se questo antifascismo rabbioso che viene sfogato nelle piazze oggi a fascismo finito, non sia in fondo un’arma di distrazione che la classe dominante usa su studenti e lavoratori per vincolare il dissenso.

  2. #2
    Metti le condizioni "WHERE" nella query e via.

    Comunque sarebbe meglio usare una libreria tipo questa per generare veri file Excel.

    https://phpspreadsheet.readthedocs.io/en/latest/

  3. #3
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    372
    Quote Originariamente inviata da filippo.toso Visualizza il messaggio
    Metti le condizioni "WHERE" nella query e via.

    Comunque sarebbe meglio usare una libreria tipo questa per generare veri file Excel.

    https://phpspreadsheet.readthedocs.io/en/latest/
    Si ma io ho 5 campi di ricerca selezionabili e quindi un sacco di query per ogni combinazione dei campi.

    Pensavo che si potesse creare un file excel partendo dai dati estrapolati con l'ultima sequenza di campi ricercati.
    Mi chiedo, caro Alberto, se questo antifascismo rabbioso che viene sfogato nelle piazze oggi a fascismo finito, non sia in fondo un’arma di distrazione che la classe dominante usa su studenti e lavoratori per vincolare il dissenso.

  4. #4
    Che cosa significa "un sacco di query per ogni combinazione dei campi"?

    Fai un esempio pratico.

  5. #5
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    372
    Se ho ben capito dovrei inserire una clausola WHERE nello script per potere creare l'excel con i dati che corrispondono alla mia ricerca.

    Siccome ho 5 diversi campi di input le combinazioni che passo alla query sono molte ( https://forum.html.it/forum/showthre...1#post25570890 ) non saprei come fare.

    Io pensavo a qualcosa che andasse a prendere i dati ottenuti dall'ultima interrogazione.

    Spero di essermi spiegato.

    Grazie.
    Mi chiedo, caro Alberto, se questo antifascismo rabbioso che viene sfogato nelle piazze oggi a fascismo finito, non sia in fondo un’arma di distrazione che la classe dominante usa su studenti e lavoratori per vincolare il dissenso.

  6. #6
    Max, la tua query te la sei costruita da un'altra parte e, come stringa di istruzioni, sta dentro una variabile: usa tale variabile al posto della query che hai postato nel tuo esempio

  7. #7
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    372
    Quote Originariamente inviata da optime Visualizza il messaggio
    Max, la tua query te la sei costruita da un'altra parte e, come stringa di istruzioni, sta dentro una variabile: usa tale variabile al posto della query che hai postato nel tuo esempio
    Dunque, al posto della mia query devo utilizzare il risultato dell'ultima query fatta......

    Quindi uso questo? $row = mysql_fetch_array($result))
    Mi chiedo, caro Alberto, se questo antifascismo rabbioso che viene sfogato nelle piazze oggi a fascismo finito, non sia in fondo un’arma di distrazione che la classe dominante usa su studenti e lavoratori per vincolare il dissenso.

  8. #8
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    372
    Allora, credo che dovrei passare il risultato ottenuto dalla query da una pagina al mio script che genera il file excel.

    Chi mi da una mano a capire cosa passare e come farlo?

    Grazie.

    Ho provato a passare $row così ...fornitori.php?row=<? echo "$row";?>
    Ultima modifica di Max Della Pena; 28-05-2022 a 18:26
    Mi chiedo, caro Alberto, se questo antifascismo rabbioso che viene sfogato nelle piazze oggi a fascismo finito, non sia in fondo un’arma di distrazione che la classe dominante usa su studenti e lavoratori per vincolare il dissenso.

  9. #9
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    372
    Ho anche il problema che così passo anche il campo ID mentre nel file che genera excel non l'ho considerato.

    Potrei aggiungere un campo per l'ID ma mi rimane il problema di come passare i dati e come utilizzarli.
    Mi chiedo, caro Alberto, se questo antifascismo rabbioso che viene sfogato nelle piazze oggi a fascismo finito, non sia in fondo un’arma di distrazione che la classe dominante usa su studenti e lavoratori per vincolare il dissenso.

  10. #10
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    372
    Quote Originariamente inviata da filippo.toso Visualizza il messaggio
    Che cosa significa "un sacco di query per ogni combinazione dei campi"?

    Fai un esempio pratico.
    Nel senso che devo gestire la ricerca su 5 campi e di conseguenza ci sono molte query per farlo.

    https://forum.html.it/forum/showthre...1#post25570890
    Mi chiedo, caro Alberto, se questo antifascismo rabbioso che viene sfogato nelle piazze oggi a fascismo finito, non sia in fondo un’arma di distrazione che la classe dominante usa su studenti e lavoratori per vincolare il dissenso.

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.