I campi non devono essere vuoti

antonioamabile

Utente Attivo
21 Gen 2010
150
0
16
Ho un piccolo problema durante la realizzazione del mio db, uso easyphp 3.0 volevo sapere se esiste una funzione per far in modo che un campo non possa esser vuoto. Tipo come autoincrement che aumenta.....Ho provato con Null ma non sono riuscito in effetti non mi da errore quando non digito nulla in un determinato campo.
Vi ringrazio ciao e buone feste
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
alex ha ragione, però se il un campo e NOT NUL sarebbe opportuno fare una verifica del valore da inserire o uppare prima della query e se il valore e vuoto dare un avviso e non eseguire la query
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
26
Roma
alessandro1997.netsons.org
Penso che voglia dire che gestisce il database tramite phpMyAdmin, fornito con EasyPHP (pessimo pacchetto). In questo caso dovrebbe bastare non spuntare nessuna casella. Mi sembra strano che non ti dia errore se lasci il campo vuoto.

Comunque, come ha suggerito borgo, dovresti effettuare il controllo prima di inserire le informazioni nel database. Immagino che per interagire con MySQL tu stia usando uno script PHP. Potresti postarne il sorgente?
 

antonioamabile

Utente Attivo
21 Gen 2010
150
0
16
infatti

Io avevo provato ma non risucivo....cmq ancora non ho capito come devo fare per avere sicuramente un campo pieno senza verificare attraverso codice php!!! Il db non lo ancora creato è solo un motivo di studio!!!
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
@alex: penso che tu abbia ragione
ho creato la tabella
Codice:
CREATE TABLE `prova_n` (
`id` INT( 3 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`nullo` VARCHAR( 25 ) NULL ,
`no_nullo` VARCHAR( 25 ) NOT NULL ) ENGINE = MYISAM ;
e provato ad inserire un record con no_null ==""
e l'ha inserito:confused: sensa dare alcun errore.
comunque ribadisco a questo punto meglio verificare prima

dimenticavo: ho fatto tutte le combinazioni possibili e inserisce tutto
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
26
Roma
alessandro1997.netsons.org
Mistero svelato. Nella documentazione di MySQL ho trovato questo passaggio:
A common error when working with NULL is to assume that it is not possible to insert a zero or an empty string into a column defined as NOT NULL, but this is not the case. These are in fact values, whereas NULL means "not having a value."
Traduzione per borgo:
Un errore comune mentre si lavora con NULL è pensare che non sia possibile inserire 0 o una stringa vuota in una colonna definita come NOT NULL, ma non è così. Essi sono valori validi, perché NULL significa "senza valore".
Quindi se ho una tabella con i campi campo1 e campo2, e quest'ultimo è NOT NULL posso fare:
Codice:
INSERT INTO tabella (campo1,campo2) VALUES ('valore1','')
Ma non posso fare:
Codice:
INSERT INTO tabella (campo1) VALUES ('valore1')
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
l'unica è verificare tramite php
se il valore che devi inserire è vuoto non inserisci, altrimenti si, il NOT NULL da errore solo nel caso che ti sia dimenticato di scivere i dati (vedi post di alex)

@alex
ok perfetto, ma se metto
INSERT INTO tabella (campo1,campo2) VALUES ('valore1',NULL)
? o ancora meglio
$valore2=NULL;
INSERT INTO tabella (campo1,campo2) VALUES ('valore1','$valore2')

?
 
Discussioni simili
Autore Titolo Forum Risposte Data
M [PHP] Query UPDATE che non mi aggiorna campi seconda tabella PHP 3
elpirata [Javascript] Controllo campi required non effettuato Javascript 2
Cosina [PHP] Preservare i campi del form solo se l'invio non ha successo PHP 5
S [PHP] Selezionare i campi non in comune con le altre colonne della tabella PHP 4
M [PHP] Escludere campi non valorizzati PHP 22
X [PHP] campi obbligatori multiupload non funziona PHP 6
E [PHP] mail inviata anche con campi obbligatori non compilati PHP 9
Monital Colori alternati per campi uguali e non PHP 20
D script controllo campi form non va su FF Javascript 2
S Come impostare campi non obbligatori php PHP 5
Z non comprendo il significato dei campi delle tabelle in mysql MySQL 2
G Disposizione campi HTML e CSS 6
L Ripetere Campi disabilitando input in riferimento ad un valore della select jQuery 0
G Campi multivalore Database 0
M Memorizzare i dati nei campi prima dell'invio al db PHP 4
D Stampa a video solo campi compilati MySQL 1
M Form: come tornare ai campi già compilati dopo invio PHP 1
M Array associativi php su 2 campi mysql PHP 10
D popolare campi tra th alla select PHP 36
G VBA OpenForm con WhereCondition + LIKE su campi differenti MS Access 5
B Stringa sql per ricerca su più campi Database 1
F Leggere e aggiornare dati di campi <input text> su file di test PHP 0
M Compilazione automatica campi in input stessa pagina PHP 0
MarcoGrazia Gestire lista campi vuoti in fase di autenticazione jQuery 1
M Aggiornare simultaneamente i campi di due tabelle collegate con id PHP 4
L aggiornare 2 campi di una tabella insieme PHP 6
L Estrazione valori max su più campi MySQL 4
L Campi obbligatori form php PHP 0
T Campi static del Controller generico si azzerano ad ogni richiesta PHP 3
elpirata Popolare campi tabella con totali estratti da database PHP 24
A [Javascript] Scrittura su più campi contemporaneamente Javascript 18
D Salvare in diversi campi mysql con diversi ID PHP 0
R [WordPress] Inserire campi aggiuntivi ad un Submit Form già dato dal template (front-end) WordPress 0
Domenico_Falco1 [Javascript] [HTML] Campi form con sfondo imposto dal browser Javascript 5
L [Javascript] Select option in campi input Javascript 4
D [ASP] Autocomplete cerca su 2 campi del db Classic ASP 1
L [PHP] Form da select compilare campi automaticamente PHP 1
E Validazione campi form passati da link Programmazione 0
A [MS Access] Somma Campi se in altro campo presente un determinato testo MS Access 1
M [PHP] Compilare campi in automatico con dati presi dal DB PHP 25
C [MySQL] Copiare campi di un record in un nuovo record MySQL 0
N [Java] Piccolo jform per calcolo totale da 2 campi i double Java 0
elpirata [MySQL] Sostituire valori campi con dati casuali MySQL 4
M [PHP] Sommare due campi calcolati PHP 3
R [Javascript] Togliere Campi obbligatori Javascript 7
P [PHP] Intercettare ed aggiornare campi di un database PHP 5
V [Javascript] [HTML] Attivazione nuovi campi di input Javascript 2
L [MS Access] come popolare automaticamente i campi di una sottomaschera MS Access 8
Q Problema su come far aggiornare i campi su un database Mysql PHP 17
C Creazione di una funzione per il filtraggio dei campi di un db Presentati al Forum 0

Discussioni simili