Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [PHP][array e $_POST] Tanti dati in arrivo dai form

    Ho una curiosità, vorrei sapere se è corretto, o quale potrebbe essere la migliore soluzione, per gestire un elevato numero di voci in arrivo da un form considerando che molte voci si ripetono. Inizialmente avevo assegnato a ogni chiave del array $_POST una variabile ma così ero pieno di variabili.. allora ho pensato di suddividere i dati per categoria e inserirli in un array. Per esempio avendo un form che crea una busta ho il colore del testo del mittente (mit_colore), del destinatario (des_colore), dell'indirizzo (ind_colore).

    Codice PHP:
    $mittente = array(
      
    'font'=>$_POST['mit_font']
    'colore'=>$_POST['mit_colore']
    );

    $destinatario = array(
      
    'font'=>$_POST['des_font']
    'colore'=>$_POST['des_colore']
    );

    $indirizzo = array(
      
    'font'=>$_POST['ind_font']
    'colore'=>$_POST['int_colore']
    ); 
    è corretta questa operazione? Come si assegna a una chiave un valore che è una variabile? L'ho provata e funziona.. o e meglio:

    Codice PHP:
    // aggiunti "{ }"
    $mittente = array(
      
    'font'=>"{$_POST['mit_font']}"
    'colore'=>"{$_POST['mit_colore']}"
    );

    $destinatario = array(
      
    'font'=>"{$_POST['des_font']}"
    'colore'=>"{$_POST['des_colore']}"
    );

    $indirizzo = array(
      
    'font'=>"{$_POST['ind_font']}"
    'colore'=>"{$_POST['int_colore']}"
    ); 
    Ci sono molte altre soluzioni come questa che crea automaticamente una variabile per ogni chiave dell'array $_POST.

    Cosa mi consigliate?

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    ti sconsiglio di creare una variabile per ogni elemento di $_POST, per una questione di sicurezza
    Ti faccio un esempio banale
    Mettiamo che ad un certo punto del tuo script hai questo codice
    Codice PHP:
    if(isset($logged))
      
    // parte riservata 
    Se tu usi quella funzione che per ogni elemento dell'array crea una variabile globale, mi basterà creare in locale una pagina del genere
    Codice PHP:
    <form action="www.tuosito.com/tuapagina.php" method="post">
    <
    input type=text name="logged" value="1">
    <
    input type="submit" value="Invia">
    </
    form
    E sarò automaticamente "loggato"

    Questo è ovviamente un esempio banalizzato, ma non è un caso che gli amministratori più prudenti disabilitino il register_globals

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