Ripeto, da nessuna parte in quel codice verifichi che i valori esistano.
Ripeto, da nessuna parte in quel codice verifichi che i valori esistano.
Lo so! L'array lo creo prima, non posso verificare che i valori esistano.
A me serve
1) Creare l'Array completo
2) Fare un ciclo for dove prendo solo i valori Esistenti
Originariamente inviato da qazar
Se finisci di leggere il thread mi sono corretto,è solo i kernel scritto in html.Originariamente inviato da rnlflame
Comunque non dovevano crollare
Devi verificare l'esistenza dei valori in $_POST, non nel tuo array.
Il problema è nato proprio per non controllare i valori in $_POST
Quella soluzione non va bene perchè se ho un form con 100 campi devo fare 100 controlli di $_POST
per quello mi han consigliato di mettere tutti i dati in un array
Originariamente inviato da qazar
Se finisci di leggere il thread mi sono corretto,è solo i kernel scritto in html.Originariamente inviato da rnlflame
Comunque non dovevano crollare
Li devi controllare i valori in POST, non e' mica un passo opzionale.Originariamente inviato da Aires
Il problema è nato proprio per non controllare i valori in $_POST
Quella soluzione non va bene perchè se ho un form con 100 campi devo fare 100 controlli di $_POST
Creando l'array devi comunque scrivere i 100 campi, no? Quindi mi sfugge il punto.
Puoi creare un array che contenga i nomi dei campi, e poi ciclare su di esso per verificare l'esistenza dei valori in POST invece di scrivere 100 isset(), ma il concetto e' lo stesso.
Mi sa sto facendo confusione.Originariamente inviato da k.b
Li devi controllare i valori in POST, non e' mica un passo opzionale.
Creando l'array devi comunque scrivere i 100 campi, no? Quindi mi sfugge il punto.
Puoi creare un array che contenga i nomi dei campi, e poi ciclare su di esso per verificare l'esistenza dei valori in POST invece di scrivere 100 isset(), ma il concetto e' lo stesso.
Io creo l'array come sopra, ed ho già i dati dentro, nel caso il $_POST sia vuoto mi trovo con "nome" => ,"cognome"=> rossi
quindi mi lascia un buco, tu dici di controllare se è vuoto? Ma se è vuoto dopo che inserisco?
Originariamente inviato da qazar
Se finisci di leggere il thread mi sono corretto,è solo i kernel scritto in html.Originariamente inviato da rnlflame
Comunque non dovevano crollare
Il fatto che tu riempia un array invece di una singola variabile non fa nessuna differenza, l'operazione e' sempre un assegnamento e se il valore originale in POST non e' definito, allora hai uno warning. Ora, chiaramente (sbagliando) puoi ignorare/disabilitare gli warning, pero' in questo caso non sussisteva il problema dall'inizio, no?
Oppure non ho capito il problema.
Mmm non avevo capito sta parte.Originariamente inviato da k.b
Il fatto che tu riempia un array invece di una singola variabile non fa nessuna differenza, l'operazione e' sempre un assegnamento e se il valore originale in POST non e' definito, allora hai uno warning. Ora, chiaramente (sbagliando) puoi ignorare/disabilitare gli warning, pero' in questo caso non sussisteva il problema dall'inizio, no?
Oppure non ho capito il problema.
Provo a spiegarmi, forse c'è un modo piu semplice.
Ho un form con tanti campi, se io non valorizzo qualche campo (ora ho notato lo fa solo con le select), quando vado a costruire la query di update mi trovo con dei problemi
Come vedi se la select non è definita e viene inviata <option></option> il $_POST['stato'] sarà vuoto. Per ovviare a questo problema io facevo cosiCodice PHP:
//esempio: stato non sarà valorizzato
Update tabella set nome = 'mario', cognome = 'rossi', stato = , citta='milano'
Mi chiedevo come fare per evitare sto problema.Codice PHP:
<?php
if(!isset($_POST['stato'])||($_POST['stato']=='')){ $stato = ""; }else{ $stato=$_POST['stato']; }
?>
Ora però ho notato che cosi facendo potrebbe funzionare
codice:<option value="0"></option> ... lista option...
Originariamente inviato da qazar
Se finisci di leggere il thread mi sono corretto,è solo i kernel scritto in html.Originariamente inviato da rnlflame
Comunque non dovevano crollare