Passare solo alcuni parametri a script per CSV

Phelps

Utente Attivo
17 Dic 2018
50
0
6
Buonasera a tutti, dal titolo non riesco a spiegare bene, ci provo qua.
Sto lavorando con le WOOCOMMERCE API ed in localhost mi scarico a chiamata un JSON a cui faccio il decode, su cui poi c'è un cliclo foreach che genera le righe di una tabella in cui io mi stampo solo i campi che mi servono. STampo in totale 100 righe.
Ultimamente mi si sta creando la necessita di prendere solo alcune di queste info e di generare un CSV mappato che poi vado a caricare su un sito che mi carica le distinte di spedizione.

Io ho pensato di racchiudere la tabella in un form con method="post" e action="createcsv.php" che dovrà ricevere le info inviate mediante post.
Ho messo nel primo<td> un checkbox che mi servirà a spuntare la riga della quale io voglio inviare le info. Come faccia ad inviare le info solo di queste righe selezionate?
Codice:
<td><input type="checkbox" name="selected" id=""></td>

Io ho provato a vare cosi, ma vedo che è un sistema fallimentare:
nella tabella ho immesso un solo campo input hidden nella quale stampo in dinamico a mò di stringa separati da virgola solo i valori che voglio del tipo:
Codice:
<input type="hidden" name="buyer" value="<?= $row['shipping']['first_name']; ?>,<?= $row['shipping']['last_name']; ?>,<?= $row['shipping']['address_1']; ?>,<?= $row['shipping']['postcode']; ?>,<?= $row['shipping']['city']; ?>,<?= $row['shipping']['state']; ?>,<?= $row['billing']['email']; ?>,<?= $row['billing']['phone']; ?>">

poi nel file createcsv.php faccio questo:
Codice:
<?php
   function outputCSV($data,$file_name = 'file.csv') {
    # output headers so that the file is downloaded rather than displayed
     header("Content-Type: text/csv");
     header("Content-Disposition: attachment; filename=$file_name");
     # Disable caching - HTTP 1.1
     header("Cache-Control: no-cache, no-store, must-revalidate");
     # Disable caching - HTTP 1.0
     header("Pragma: no-cache");
     # Disable caching - Proxies
     header("Expires: 0");
 
     # Start the ouput
     $output = fopen("php://output", "w");
    
      # Then loop through the rows
     foreach ($data as $row) {
         # Add the rows to the body
         fputcsv($output, $row); // here you can change delimiter/enclosure
     }
     # Close the stream off
     fclose($output);
 }

 if (isset($_POST['submit'])) {
            foreach ($_POST['buyer'] as $key => $value) {
                if ($_POST['selected']) {
                $arr = explode(",", $value);
                outputCSV(array($arr),'download.csv');
                }
         }
     }

nel mio essere limitato ho ciclato sul campo buyer e poi con esplode lo trasformo in array. Il controllo su "selected" che sarebbe il checkbox risulta come ho notato TRUE perche basta spuntarne solo uno affinche la condizione sia soddisfatta. Credo che questo controllo non vada proprio bene.
Il CSV mi viene stampato, e solo che mi stampa sempre dalle righe da 1 a 43 e poi iniza a dare errori sulle righe successive e non ho capito perche.
MA intanto cmq non mi stampa solo le righe che avevo richiesto.
Vi chiedo gentilmente di aiutarmi, grazie a tutti
 
Discussioni simili
Autore Titolo Forum Risposte Data
P Passare solo una variabile di un form a pagina principale Javascript 1
D passare valori da database sql a php PHP 1
P Passare contenuto in value. Ajax 1
P Passare i risultati di un foreach in un modal. Help! PHP 2
F Passare variabile a pulsante in finestra modale PHP 2
P jButton1ActionPerformed passare parametri ad altra classe Java 2
Fendo59 Passare parametri con metodo POST a una pagina in un frame PHP 0
A Problema nel passare la variabile PHP 0
I Passare dei parametri in javascript PHP 0
N PDF fpdi passare variabile PHP 4
F Come passare una variabile al modal di bootstrap PHP 1
G Passare path directory in POST PHP 2
F Passare una variabile php dal DB mysql alla pagina PHP 3
M [PHP] Passare variabile di sessione con metodo GET PHP 10
G [Javascript] Passare un valore via querystring Javascript 1
G [PHP] Passare dati tra record PHP 4
L [PHP] Passare variabile PHP 3
AMONRA75 [PHP] passare una variabile in una finestra MODAL PHP 1
P Come passare var1 a pagina php1 e var1,var2 a pagina php2 PHP 5
M Passare una varibile da PHP a Javascript PHP 2
B [PHP] passare valore ad un form su un'altra pagina PHP 4
K [PHP] Paginazione Wordpress: passare variabile PHP 6
F [Javascript] select list concatenate - passare valore dalla prima alla seconda Javascript 7
T [PHP] passare una variabile in una finestra MODAL di bootstrap PHP 3
M [MS Access] Passare i dati di una query da form a report MS Access 3
V Passare a PHP pagina bootstrap creata in HTML PHP 1
A passare parametri ad un file php prima di utilizzare $.get jQuery 1
A [PHP] Passare variabili tra pagine diverse PHP 2
A [Javascript] Passare variabile tra pagine html diverse Javascript 13
D [ASP] Passare in array stringa dinamica Classic ASP 2
K [PHP] Passare valore select PHP 2
andreacata31 [ASP.Net] Passare da Windows Application a sito Web ASP.NET 1
SimooRu [PHP] Non riesco a far passare i dati con i form PHP 4
Rikk73 Passare come argomento in un metodo un parametro della classe istanziata PHP 0
I Passare record Database access a Java Javascript 0
C Passare dal terzo al secondo livello di un dominio su Aruba Domini 2
A Passare due variabili con Javascript. Javascript 1
Marco_88 Passare un valore prima dell'invio del form Ajax 0
A Passare variabili da javascript a PHP PHP 8
A Passare il titolo al posto dell'id PHP 1
gandalf1959 Passare variabili da listener Paypal a un'altra pagina PHP 0
pup3770 Passare parametro ad un'altra pagina in base alla condizione PHP 3
M Passare una funzione a una proprietà di oggetto Javascript 2
W Passare una variabile da una pagina all'altra PHP 25
M Passare coppie di coordinate in una google map Javascript 0
M Passare dati in un array da statement mysqli PHP 2
G Passare da Mysqli a Mysql PHP 1
M [C#] ListView: passare variabile a un LayoutTemplate caricato da codebehind ASP.NET 0
J Riscrivere URL per i post di un blog senza passare ID PHP 13
marino51 passare array da php a javascript PHP 5

Discussioni simili