Just nu i M3-nätverket
Jump to content

"Fältet får inte vara tomt"


Inkan

Recommended Posts

Snälla någon. Vad betyder detta meddelande?

 

Microsoft OLE DB Provider for ODBC Drivers fel '80004005'

 

[Microsoft][Drivrutin för ODBC Microsoft Access] Fältet 'tabell.text' får inte vara tomt.

 

/aspkoder/admininmat.asp, rad 16

 

 

Här är koden för formuläret....

 

<html>

 

<head>

<title>Admin</title>

</head>

 

<body bgcolor="99ccff" link="#999999" vlink="#003366" alink="#999999" marginwidth="100" marginheight="50" leftmargin="100" topmargin="50"><FORM METHOD=POST ACTION="admininmat.asp" NAME="formular" ENCTYPE="text/plain">

 

<table border="0">

<td>&nbsp;</td><td align="left"></td><td>&nbsp;</td>

<tr></tr>

 

<td valign="top"></td>

<td><TEXTAREA rows=8 cols=40 NAME="text"></TEXTAREA></td>

<td></td><tr></tr>

<td></td>

<td><INPUT TYPE NAME="uppdat"><INPUT TYPE="SUBMIT" VALUE="Uppdatera">

<INPUT TYPE="reset" VALUE="Börja om"></td>

<td>&nbsp;</td><tr></tr>

<td>&nbsp;</td>

<td><a href="javascript:window.close()">Stäng fönstret</a></td>

<td>&nbsp;</td>

 

</table>

</body>

 

</html>

 

...och här är asp. koden som formuläret skickar till.

 

<%@ Language=VBScript %>

<% Option Explicit %>

 

<%

Dim strText, strUppdat, db, sql

 

strText=Request.Form("text")

strUppdat=Request.Form("uppdat")

 

 

Set db= Server.CreateObject ("ADODB.connection")

db.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("db\databas.mdb")

 

sql = "INSERT INTO tabell VALUES('" & strText & "', '" & strUppdat & "')"

(här är rad 16)

db.Execute sql

 

Response.Write "Text text text" & "<br>"

 

db.Close

Set db = Nothing

 

%>

 

<html>

<body background="graf/bakemb1.gif" marginwidth="100" marginheight="50" leftmargin="100" topmargin="50"><br><br><br><a href="adminvisa.asp"><font color="#003366" size="4">Se alla inlägg</font></a>

</body>

</html>

 

 

I Accessdatabasen "databas" finns tabellen "tabell" med två fält "text" och "uppdat". Jag har kollat noga att strängarna stämmer överens. Problemet har plötsligt dykt upp. Koden har funkat förut. Oerhört taxam om jag får hjälp med detta!

 

 

Link to comment
Share on other sites

[Microsoft][Drivrutin för ODBC Microsoft Access] Fältet 'tabell.text' får inte vara tomt.

 

Ja, det låter ju onekligen som att någon har lämnat textarean tom.

 

Felet kommer vid rad 16 eftersom det är där som du kör SQL-satsen till databasen.

 

<td><INPUT TYPE NAME="uppdat"><INPUT TYPE="SUBMIT" VALUE="Uppdatera">
<INPUT TYPE="reset" VALUE="Börja om"></td>

 

Bör skrivas:

<td><INPUT TYPE[b]="text"[/b] NAME="uppdat"><INPUT TYPE="SUBMIT" VALUE="Uppdatera">
<INPUT TYPE="reset" VALUE="Börja om"></td>

 

 

 

.dune.

---------------

Tempus fugit

 

Link to comment
Share on other sites

Tack för ditt snabba svar. Det var ju klantigt av mig att missa INPUT TYPE="text". Dessvärre kvarstår problemet. Jag har dock lagt till citationstecken kring POST (FORM ACTION="POST") samt kring storleken på textarean (<TEXTAREA rows="8"cols="40" NAME="text">). Men det tycks inte göra någon skillnad. Kan felet ligga i ODBC-kopplingen?

 

Link to comment
Share on other sites

Magnus Ahlkvist

Felet ligger i din Access-databas.

Default-inställningen för ett text-fält i Access är "Allow Null, Don't allow empty string".

Ändra det i tabell-definitionen så funkar det.

 

 

--

Snäll ibland. Rättvis nästan jämt. Elak för det mesta.

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...