Min catch errmsg virker ikke

greenspun.com : LUSENET : WebdesignII : One Thread

Jeg kan ikke få min catch til at virke, når jeg opretter et nyt projekt.

Når jeg prøver at oprette et nyt projekt med et navn, som er brugt i forvejen får jeg ikk den ønskede fejlmeddelse men derimod standard meddelelsen: Database operation "dml" failed (exception ORA, "ora8.c:1207:ora_exec: error in `OCIStmtExecute ()': ORA-00001: unique constraint (MK.SYS_C0033869) violated

Her den relevante del af min kode:

# Get a database handle set db [ns_db gethandle]

# The query - QQ makes sure we can handle the ' sign, ie O'Grady ns_db dml $db "insert into projekt (pro_title, text, name, email, password) values ('$QQpro_title', '$QQtext', '$QQname', '$QQemail', '$QQpassword')"

# Return message if user enters an email address og title which is already in use if {[catch { ns_db dml $db $insert_sql } errmsg]} { ns_return 200 text/plain "The projektbørs database did not accept your insert. This is probably because the email or title you entered have been used before for another project. Try again. The error message: $errmsg"

} else {

# Redirect to the projektbørs-forside ns_returnredirect "vis_projekter.tcl" }

-- Mikael Kjærbye (mk@it.edu), April 21, 2001


Moderation questions? read the FAQ