webForumDet fria alternativet

'radannonser.intresse' cannot be a zero-length string.

10 svar · 433 visningar · startad av costodia

costodiaMedlem sedan aug. 2000864 inlägg
#1

Jag får detta felmeddelandet:

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC Microsoft Access Driver] Field 'radannonser.intresse' cannot be a zero-length string.

/brev/enter.asp, line 37

efter att jag försökt lägga in en post till genom att skriva så här i enter.htm

<html>

<head>
<title>Mata in radannonserna</title>
<link REL="STYLESHEET" TYPE="TEXT/CSS" HREF="../godzilla/mailisarmenyn.css">
<script>
<!--
if(top == self) self.location = "index.htm";
//-->
</script>
<script LANGUAGE="JAVASCRIPT">
<!--
        defaultStatus ="Copyright © 2000 Costodia - All Rights Reserved ©."
// -->
</script>
<script language="JavaScript">
<!--
var message="© 2000 Costodia"; 

function click(e) {
if (document.all) {
if (event.button == 2) {
alert(message);
return false;
}
}
if (document.layers) {
if (e.which == 3) {
alert(message);
return false;
}
}
}
if (document.layers) {
document.captureEvents(Event.MOUSEDOWN);
}
document.onmousedown=click;
// --> 
</script>
</head>

<body>

<form ACTION="enter.asp" METHOD="POST">
  <table border="0" cellpadding="3" cellspacing="0">
    <tr>
      <td valign="top"><strong>Tjej. Kille, Man <br>
      eller Kvinna?</strong></td>
      <td valign="top"><b><select NAME="kategori" size="1" class="orange">
          <option>Man </option>
          <option>Kvinna </option>
          <option>Tjej </option>
          <option>Kille </option>
        </select></b></td>
    </tr>
    <tr>
      <td valign="top"><div align="right"><p><strong>Rubrik</strong></td>
          <td valign="top"><b><input TYPE="TEXT" NAME="rubrik" size="20" class="text"></b></td>
        </tr>
        <tr>
          <td valign="top"><div align="right"><p><strong>Mailtext</strong></td>
              <td valign="top"><b><textarea NAME="text" rows="4" cols="26" class="text"></textarea></b></td>
            </tr>
            <tr>
              <td valign="top" align="right"><strong>Ditt Namn</strong></td>
              <td valign="top"><b><input TYPE="TEXT" NAME="namn" size="20" class="text"></b></td>
            </tr>
            <tr>
             
              <td valign="top"><strong>Ålder</strong></td>
                <td valign="top" class="lightblue"><select size="1" name="telefon">
																						<option>0-14</option>
																						<option>15-17</option>
																						<option>18-23</option>
																						<option>24-99</option>
											</select></td>
            </tr>
            <tr>
              <td valign="top" align="right"><strong>E-post</strong></td>
              <td valign="top"><b><input TYPE="TEXT" NAME="epost" size="20" class="text"></b></td>
            </tr>
            <tr>
              <td valign="top"></td>
              <td valign="top"><input TYPE="submit" VALUE="Sätt in annonsen" class="orange"><input
      TYPE="reset" VALUE="Rensa allt" class="orange"></td>
            </tr>
            <tr>
              <td valign="top"></td>
              <td valign="top"></td>
            </tr>
          </table>
        </form>

        <p><a href="../fptest/Default.htm" target="_top">Tillbaka till Costodia.coms Startsida</a></p>

        <table border="0" cellpadding="0" cellspacing="0" background="pricken.gif" width="100%">
          <tr>
            <td><img src="9CCECEprick.gif" width="1" height="1" alt="9CCECEprick.gif (77 bytes)"></td>
          </tr>
        </table>

        <p>Om du har fråger eller kommentarer Skicka dem till<br>
Hanna Nykvist på <a href="mailto:HannaNykvist@costodia.com">HannaNykvist@costodia.com</a>
        </p>
      </body>
    </html>

och i enter.asp(som processar det som man matar in i enter.htm

<!--#include file="functions.asp"-->
<%

set rRubrik = Request("rubrik")		' Hämta annonsrubrien från formuläret
set rText = Request("text")		' Hämta annonstexten...
set rNamn = Request("namn")		' Hämta annonsörnamnet...
set rTelefon = Request("telefon")	' telefonnummer...
set rEpost = Request.Form("epost")	' e-postadress...
set rKategori = Request("kategori")	' kategori...

' Kontrollera värdena från formuläret

if rRubrik = "" or rText = "" then
	Response.Write("<H3>Rubrik eller text saknas</H3>Du måste ha en rubrik och en annonstext till din annons!")
else
	if rNamn = "" then
		rNamn = "Saknas"
	end if
	if rTelefon = "" then
		rTelefon = "Saknas"
	end if
	if rEpost = "" then
		rEpost = "Saknas"
	end if
	
	' Skapa ett databasobjekt
	set DBConnection = Server.CreateObject("ADODB.Connection")
	
	' Anslut till databasen med en fil
	DBConnection.Open "driver={Microsoft Access Driver (*.mdb)};dbq=d:\scripts\mailisar.mdb"

	' Skapa SQL-satsen vi använder för att infoga data
	SQLstring = "INSERT INTO radannonser (kategori, rubrik, annonstext, namn, telefon, epost) VALUES ('"& rKategori &"', '"& rRubrik &"','"& rText &"', '"& rNamn &"', '"& rTelefon &"', '"& rEpost &"')"

	' Utför SQL-satsen
	DBConnection.Execute(SQLstring)

	Response.Write("<H3>Inmatningen lyckades!</H3>Din annons är nu inlagd.")

	'Stäng databaskopplingen
	DBConnection.Close
	set DBConnection = Nothing

end if

%>
<html>

<head>
<title></title>
<link REL="STYLESHEET" TYPE="TEXT/CSS" HREF="../godzilla/costodiamin.css">
</head>

<body>

<p><a HREF="show.asp">Titta på annonserna</a><br>
<a HREF="enter.htm">Lägg in en ny annons</a></p>

</body>
</html>

Är det någon som ser vad jag gör för fel?

tack på förhand,

------------------
Mvh Martin Persson
Costodia.com, martinpersson.com, Merinternet.com , Sveriges.com , Sigill.net , dress.nu , mittinternet.com

[Redigerat av costodia den 31 maj 2001]

VideMedlem sedan dec. 19998 577 inlägg
#2

Har du ett fält i databasen som heter intresse och som inte tillåter null-värde?

Fixa det genom att tillåta nullvärde... :)

------------------
Vide rox = new Vide();
rox.learn("C#");

webeye.nu

EclipseMedlem sedan juli 20003 825 inlägg
#3

Kör du Access? Markera kolummen i fråga och kolla intällningen "Tillåt nolläng" och sätt den till 'Ja'.

------------------
"Never underestimate your opponents." - Name the movie.

costodiaMedlem sedan aug. 2000864 inlägg
#4

ungefär var ställer jag in det?
om jag trycker högerknapp så finns det inget val som säger "Tillåt nolläng" .

fast jag verkar inte få upp det felmeddelandet längre utan nu går den rätt igenom och skriver ut "Saknas" när man fyllt i formuläret på http://www.costodia.com/kompis-2/enter.htm efter att jag lagt till det i enter.asp

	end if
	if rIntresse = "" then
		rIntresse = "Saknas"

det hör till saken att jag gick in i officehjälpen och fisk samma svar som ni gav mig

Gör så att ett Text-, PM- eller Hyperlänk-fält kan ta emot nollängdssträngar
Öppna den tabell som innehåller fältet i designläge.

Klicka i det fält som du vill ange en nollängdssträng i.

Kontrollera att fältets egenskap Tillåt nollängd har värdet Ja.
Obs! Endast Text-, PM- och Hyperlänkfält kan ta emot nollängdssträngar.

men var hittar jag "egenskaper"?

Tack på förhand.

Mvh Martin Persson
Costodia.com, martinpersson.com, Merinternet.com , Sveriges.com , Sigill.net , dress.nu , mittinternet.com

[Redigerat av costodia den 31 maj 2001]

VideMedlem sedan dec. 19998 577 inlägg
#5

När du står med markören i det fältet du vill redigera så kommer det upp en ruta längre ned i samma formulär där du kan ändra alla parametrar för fältet...

------------------
Vide rox = new Vide();
rox.learn("C#");

webeye.nu

@ndersMedlem sedan juni 200032 969 inlägg
#6

http://cartman.nu/images/wf/access.gif

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
nobody expects the spanish inquisition!</A>

costodiaMedlem sedan aug. 2000864 inlägg
#7

okej tack,
nu funkar det, men nu spökar databasen

som skrivet så ser koden ut så här i enter.asp

<!--#include file="functions.asp"-->
<%

set rRubrik = Request("rubrik")		' Hämta annonsrubrien från formuläret
set rText = Request("intresse")		' Hämta intressetexten...
set rText = Request("text")		' Hämta annonstexten...
set rNamn = Request("namn")		' Hämta annonsörnamnet...
set rTelefon = Request("telefon")	' telefonnummer...
set rEpost = Request.Form("epost")	' e-postadress...
set rKategori = Request("kategori")	' kategori...

' Kontrollera värdena från formuläret

if rRubrik = "" or rText = "" then
	Response.Write("<H3>Rubrik eller text saknas</H3>Du måste ha en rubrik och en annonstext till din annons!")
else
	if rNamn = "" then
		rNamn = "Saknas"
	end if
	if rTelefon = "" then
		rTelefon = "Saknas"
	end if
	if rEpost = "" then
		rEpost = "Saknas"
	end if
	
	' Skapa ett databasobjekt
	set DBConnection = Server.CreateObject("ADODB.Connection")
	
	' Anslut till databasen med en fil
	DBConnection.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\wwwroot\fpdb\brev.mdb"

	' Skapa SQL-satsen vi använder för att infoga data
	SQLstring = "INSERT INTO radannonser (kategori, rubrik, intresse, annonstext, namn, telefon, epost) VALUES ('"& rKategori &"', '"& rRubrik &"', '"& rIntresse &"', '"& rText &"', '"& rNamn &"', '"& rTelefon &"', '"& rEpost &"')"

	' Utför SQL-satsen
	DBConnection.Execute(SQLstring)

	Response.Write("<H3>Inmatningen lyckades!</H3>Din annons är nu inlagd.")

	'Stäng databaskopplingen
	DBConnection.Close
	set DBConnection = Nothing

end if

%>
<html>

<head>
<title></title>
<link REL="STYLESHEET" TYPE="TEXT/CSS" HREF="../godzilla/costodiamin.css">
</head>

<body>

<p><a HREF="index.asp">Titta på annonserna</a><br>
<a HREF="enter.htm">Lägg in en ny annons</a></p>

Efter att varit inne på <a href="http://swecas.just.nu/" target="_blank">Swecas</a>
    hemsida och läst om Greyhounds i Spanien !!<br>
    Kommer vi nu ta betalt på företagens reklam på Hundbazar och alla inkomster kommer <font
    color="#0000ff"><b>skänkas till Swecas!!</b></font><br>
    Jag hoppas att många kommer annonsera på Hundbazar för att stödja denna insamling!!<br>
    <b><a href="http://swecas.just.nu/" target="_blank">- Gå till SWECAS!!!!!</a></b><br>
    <br>
    Så om du vill stödja så kan du göra det genom att klicka på annonserna här under och
    då får <font color="#FF0000">Swecas 2 kronor</font> per klick: <br>
<!--#include virtual="../hifull.asp"-->
</body>
</html>

och även om man fyller i ett värde så skriver den ut saknas.

------------------
Mvh Martin Persson
Costodia.com, martinpersson.com, Merinternet.com , Sveriges.com , Sigill.net , dress.nu , mittinternet.com

[Redigerat av costodia den 31 maj 2001]

VideMedlem sedan dec. 19998 577 inlägg
#8

Varför kör du en "Set" framför varje variabeltilldeling ifrån fomruläret?

Du vill ju bara ha värdet, ta bort "set"...

------------------
Vide rox = new Vide();
rox.learn("C#");

webeye.nu

costodiaMedlem sedan aug. 2000864 inlägg
#9

jag gjorde det och det funkar niu också, men tyvärr står det fortfarande "Saknas" när annonsen skrivs ut

------------------
Mvh Martin Persson
Costodia.com, martinpersson.com, Merinternet.com , Sveriges.com , Sigill.net , dress.nu , mittinternet.com

costodiaMedlem sedan aug. 2000864 inlägg
#10

har det liksom inget med zero-length string-en att göra nu längre ?

------------------
Mvh Martin Persson
Costodia.com, martinpersson.com, Merinternet.com , Sveriges.com , Sigill.net , dress.nu , mittinternet.com

VideMedlem sedan dec. 19998 577 inlägg
#11

Skrivs det ut saknas vid alla if-satser?

------------------
Vide rox = new Vide();
rox.learn("C#");

webeye.nu

140 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)