Risultati da 1 a 3 di 3
  1. #1
    Il Puppies L'avatar di Hrothgar
    Data Registrazione
    21-12-01
    Località
    Roma
    Messaggi
    312

    Predefinito [PHP-MySQL]Trasformazione parametro da stringa vuota a NULL

    Ciao a tutti

    per comodità di database vorrei fare in modo che, ogni volta che un campo viene lasciato vuoto in una form in php di inserimento dati, il valore prima di essere scritto nel database venga riconosciuto come stringa vuota, e trasformato automaticamente in valore NULL. Sarebbe molto più comodo poi fare interrogazione per rilevare chi ha lasciato il campo in bianco, restituendo NULL

    sto provando in vari modi ma non riesco...

    ad esempio ho provato così:

    Codice:
        	$nulla = NULL;
        	
        	if ($_REQUEST['fax'] == "")
        	
        		{$_REQUEST['fax'] = $nulla;
        		}
        	
        	$query= "INSERT INTO $tabella VALUES ('". $_REQUEST['email'] ."','" . $_REQUEST['nome']."','" . $_REQUEST['cognome']."','" . $_REQUEST['indirizzo']."','" . $_REQUEST['telefono']."','" . $_REQUEST['fax']."','" . $_REQUEST['cellulare']."','" . $_REQUEST['citta'] . "')";
    il problema è sopratutto sui campi che sono di tipo INT, in quanto non è ovviamente ammesso il valore di stringa vuota "", perchè non rientra nel range del tipo, e genera un errore di tipo "Out of range value adjusted for column 'fax' at row 1"

    se vi viene in mente qualcosa, oppure magari sapete consigliarmi qualche sito dove reperire dei codici prefatti per risolvere questi problemi comuni ve ne sarei grato!

    grazie


  2. #2
    abaper
    ospite

    Predefinito Re: [PHP-MySQL]Trasformazione parametro da stringa vuota a NULL

    in java ci sono le librerie
    comunque puoi risolvere il problema così:
    quando costriusci la insert puoi fare(premetto che non conosco php):
    Quote:

    $query= "INSERT INTO $tabella VALUES ('". $_REQUEST['email'] ."','" . $_REQUEST['nome']."','". $_REQUEST['cognome']."','" . $_REQUEST['indirizzo']."','" . $_REQUEST['telefono']."','" . $_REQUEST['fax']."','" ;
    if ($_REQUEST['cellulare'].value==""){
    $query=$query+"NULL";
    }else{
    $query=$query.$_REQUEST['cellulare']."',' ";
    }

    $query=$query+.. $_REQUEST['citta'] . "')";
    insomma costruisci la query inserendo NULL se il campo ha lunghezza zero.

    Spero di essere stato abbastanza chiaro.

    NOTA: il NULL non deve essere tra apici singoli (se no ti scrive null)


  3. #3
    Il Puppies L'avatar di Hrothgar
    Data Registrazione
    21-12-01
    Località
    Roma
    Messaggi
    312

    Predefinito Re: [PHP-MySQL]Trasformazione parametro da stringa vuota a NULL

    alla fine ci sono riuscito con una concatenazione...

    vi faccio vedere il codice

    if ($_REQUEST['nome'] == "")
    $query .= "null,";
    else $query .= "'". $_REQUEST['nome'] ."',";

    e così via per tutti i vari parametri...
    così ho un controllo sulla stringa vuota di ogni inserimento, e le stringhe vuote vengono automaticamente convertite in null...

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  • Il codice BB è Attivato
  • Le faccine sono Attivato
  • Il codice [IMG] è Attivato
  • Il codice HTML è Disattivato