Visualizzazione dei risultati da 1 a 9 su 9

Visualizzazione discussione

  1. #7
    Utente di HTML.it
    Registrato dal
    Nov 2017
    Messaggi
    48
    Quote Originariamente inviata da boots Visualizza il messaggio
    in un foreach con input dovresti usare come name un "array" altrimenti ti verrà postato solo l'ultimo input in quanto avranno tutti lo stesso nome.
    Inoltre dovresti correlare il checkbox con il campo hidden in quanto i campi hidden verranno tutti iniviati mentre i checkbox solo quelli selezionati.
    Quindi

    Codice PHP:

    $i 
    0;
    foreach(
    $data as $row): 
      ...
      <
    input type="checkbox" name="selected[]" value="<php echo $i >" >
       <
    input type="hidden" name="esempio[<php echo $i >]"  value="$row['name'], $row['surname'] , $row['address], ecc ,ecc" >
      ...
      
    $i++;
     endforeach; 
    Nel createcsv.php
    Codice PHP:
    //per ogni checkbox
    foreach($_POST['selected'] as $i){
        
    $arr explode(','$_POST[esempio][$i]);

    Ora, io non ti consiglierei cmq di procedere in questo modo per i seguenti motivi:
    1. Ogni volta fai il post di ogni riga (esempio[]) indipendentemente se il checkbox è checked o meno.
    ricorda che ci sono limiti sul numero di input inviabili da una form (max_input_vars) e la dimensione massima del post (post_max_size)
    che di default sono alti (3000 e 2mb) ma possono essere cambiati dal hosting
    2. i valori che metti nel value (indirizzo, nome, cognome ) potrebbero avere caratteri che ti vanno a "rompere" il codice html. per esempio
    se address contiene " (doppi apici) o il carattere che usi per separare i valori (la virgola in questo caso), etc

    Per questo ti avevo consigliato di metter nel form solo l'indice di riga del json ed usarlo a mo di database

    PS non mi prende i tag di php, quindi ho messo solo "<php"
    Grandissimo grazie, funziona.
    ero arrivato al fatto che ci voleva nel name il formato array, ma mi ingrippavo sul checkbok il quale aveva di bisogno un value per differenziarlo dagli altri file.

    Allora il programmino gira in localhost, crea lo stesso problemi file massimi inviabili? Nel caso dovrei cambiare il file.ini in xampp

    si alcuni campi portano i doppi apici, potrei pulire la stringa prima che diventi array solo dalle virgolette?.

    Il tuo secondo approccio invece sarebbe stato quello invece di mettere tutto il JSON in un input hidden.
    In questo caso nel createcsv.php dopo aver ricevuto il post e fatto il JSON decode, come si sarebbe dovuto fare poi?

    Grazie tanto, saluti
    Ultima modifica di phelps; 06-06-2021 a 09:25

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