messaggi d'errore

  • Creatore Discussione Creatore Discussione fofo13
  • Data di inizio Data di inizio

fofo13

Nuovo Utente
20 Nov 2013
28
0
0
milano
ciao ragazzi ho un un quesito da porvi:
dopo varie istruzioni io devo inserire un oggetto in una tabella.Fatto sta che se è già presente un' oggetto con lo stesso id,non posso inserirlo,e quindi devo visualizzare un messaggio d'errore.Voi come fareste?io vorrei sfruttare i warning di pgsql.
 
Ciao, puoi aggiungere una chiave primaria sul campo "id" della tabella, se proverai ad inserire un id già presente la query restituirà il seguente errore
Codice:
Duplicate entry '1' for key 'PRIMARY'
 
in realtà questo mi stampa i messaggi d'errore del database:
$query = "INSERT INTO componenteattiva (serialnumber,stato,casaproduttrice,macaddress,rete,tipologia,tipoporta,numerodiporte) VALUES
('$_POST[serialnumber]', '$_POST[stato]','$_POST[casaproduttrice]','$_POST[macaddress]','$_POST[rete]','$_POST[tipologia]','$_POST[tipoporta]','$_POST[numerodiporte]')";
@$result = pg_query($query);
if (!$result) {
$qc="SELECT maccaddres FROM componenteattiva";
//echo "An error occured.\n";
$error=pg_last_error($dbconn);
echo $error;

}
il mio problema ora è un altro:come faccio a seconda dell'errore stampare una cosa diversa?cioè se violo unique su serialnumber mi dice che il serialnumber è gia esistente(avevo fatto un controllo mediante un trigger sollevando un eccezione)altrimenti mi mette "errore ...dettagli etc etc " ed io invece se ad esempio non metto nulla in macddress,voglio che mi stampi "valore macaddress non valido"...
 

Discussioni simili