Filtraggio dati input post in unica soluzione

Marco_88

Utente Attivo
4 Dic 2014
150
0
0
Roma
batwebit.blogspot.it
Ciao a tutti (di nuovo) secondo voi come posso "compattare" questo controllo?

PHP:
 //controllo sui dati inviati

	if ($_POST['registrazione'] == "Submit")  {


		$namesurname = trim(filter_var($_POST['nomecognome'], FILTER_SANITIZE_STRING));
		$email= trim(filter_var($_POST['email'], FILTER_SANITIZE_EMAIL));
		$username = trim(filter_var($_POST['username'], FILTER_SANITIZE_STRING));


		//verifico che i campi non siano vuoti se non lo sono procedo

		if ( (!isset($_POST['email'])) || ($_POST['email'] =='')  && (!isset($_POST['nomecognome'])) || ($_POST['nomecognome']) =='')  && (!isset($_POST['username'])) || ($_POST['username'] =='') {


			echo 'I campi sono tutti obbligatori';
				
		}


L'idea è di creare un'oggetto unico da inserire nel controllo if/else evitando così tutta quella complessità di codice, che peraltro neanche funziona.
All'inizio pensavo ad un array ma poi mi è sorto un dubbio: la variabile $_POST non è già un' array? al suo interno contiene già una chiave e un valore oppure lo si da nel momento che invii l'input post?
 

marino51

Utente Attivo
28 Feb 2013
3.205
207
63
Lombardia
forse pensi a qualcosa di simile ?
PHP:
if ( empty($_POST['email'])
or   empty($_POST['nomecognome'])
or   empty($_POST['username']) ) { 
  echo 'I campi sono tutti obbligatori';
}
 

Marco_88

Utente Attivo
4 Dic 2014
150
0
0
Roma
batwebit.blogspot.it
Ho un' altra domanda, leggendo sul W3C la vulnerabilità più diffusa sul web è l' SQL injection. Tra le righe si legge anche che è sconsigliabile vietare l'inserimento di alcune parole o caratteri come DROP o ''. Facendo un test banale usando gli esempi del sito ho notato che un comando tipo
Codice:
 SELECT * FROM Users WHERE UserId = 105; DROP TABLE Suppliers
viene registrato sul database ma poiché il campo che ho impostato può contenere solo 25 caratteri, tale comando viene "memorizzato" parzialmente.
Può essere sufficiente un'impostazione del genere per impedire di iniettare del codice malevolo?
 

marino51

Utente Attivo
28 Feb 2013
3.205
207
63
Lombardia
scusa il ritardo ma febbre da virus influenzale e molto conFuso,

no perché il codice è inserito in formato esadecimale (per non essere riconosciuto) ed in questo caso non filtri proprio nulla
nel manuale del db che usi, verifica le istruzioni "bindparam", "bindvalue" et similia che sono il modo per evitare che codice non voluto venga esequito nella query
ciao
Marino
 
Discussioni simili
Autore Titolo Forum Risposte Data
M Filtraggio dati jquery jQuery 0
C Creazione di una funzione per il filtraggio dei campi di un db Presentati al Forum 0
F Aiuto! Problemi filtraggio portfolio wordpress Presentati al Forum 0
asevenx modifica in script jquary portfolio con filtraggio cliccando su immagini Javascript 1
P Help filtraggio input...Evitare caratteri Javascript 0
max75 query su due tabelle e dati doppioni MS Access 2
K Form che manda dati doppi PHP 1
T problemi con dati menu a tendina HTML e CSS 2
D protezione cartelle: blocco visualizzazione/scaricamento contenuto, ma abilitazione utilizzo dati da parte di file .php presenti sul sito Web Server 1
D Risultati diversi elaborazione dati fra localhost e Altervista PHP 0
C Creare Tabella Dati Meteo prelevandoli da dei Tags in un altro foglio PHP 27
M Invio dati database via email php PHP 0
K [php]form invio dati PHP 0
peppe0703 Come Estrarre dati da db wordpress e richiamarli in html esterno HTML e CSS 0
V dati scomparsi dal sito HTML e CSS 3
M Memorizzare i dati nei campi prima dell'invio al db PHP 4
A Stampare dati da form PHP 15
E Estrarre dati da doppia tabella, banale ma non sempre PHP 1
Couting95 inserire dati da un file di testo in una tabella in php PHP 1
F Scrivere dei dati in word con php PHP 0
otto9due $_FILE non passa i dati dal form PHP 1
N dati tabella non presi PHP 1
M Riportare in tabella HTML dati estratti con query SQL MySQL 0
I Assegnare dati fetch request ad una variabile globale Javascript 0
L PHPSpreadsheet inserire dati da file .xlsx/.xls su database PHP 2
L Ricezione dei dati su file php da modulo html PHP 6
L inserimento form dati multipli ? PHP 0
S Leggere dati da API e visualizzarli PHP 0
S problema con recupero dati tabella mysql PHP 2
E Progressbar estrazione dati da tabella mySQL Ajax 9
A invio massivo dati a file php Javascript 4
M Inviare dati nel db dopo risposta alert PHP 0
A recuperare i dati passati nel post PHP 1
L Estrazione dati php Database 6
L Estrazione dati casuali non doppioni MySQL 1
F Leggere e aggiornare dati di campi <input text> su file di test PHP 0
J Form inserimento dati in database Ajax 1
D Recupero dati da HDD esterno Hardware 0
L non duplicare dati in stato "aggiornamento" PHP 6
L inserire dati multi livello PHP 8
L input (rilevare cambio dati) PHP 3
L input dati con inser into select ? PHP 4
W Invio Dati ad un altra pagina Classic ASP 1
A Mostrare dati database per pagine PHP 2
Samuele Ronzani Sposta dati in una tabella eliminandolo MySQL 6
S Gestire scelta dropdown con dati da Mysql PHP 2
C Estrarre dati stringa Sql Database 1
elpirata Query per leggere dati da una tabella mysql e mostrarli a video in base a parametri passati tramite GET PHP 5
W Evitare ridondanza dei dati Classic ASP 3
MarcoGrazia Dati nulli su join tra più tabelle MySQL 1

Discussioni simili