webForumDet fria alternativet

Anledning till icke funkgerande ASP skript

ASP

10 svar · 499 visningar · startad av richardjoha

Medlem sedan okt. 2005787 inlägg
Frågan#1

Anledningen till att detta skript:


<%Response.Buffer = "True"

Function FixaTecken(str)
  FixaTecken    = Replace(Trim(str),"'","''")
End function
%>

<html>
<head>
<title>»» Kontakta oss ««</title>

<script language="JavaScript">
<!-- 
function blured()
{
for (a in document.links) document.links[a].onfocus = document.links[a].blur;
}
if (document.all)
{
document.onmousedown = blured;
}
// -->
</script>

<script language="JavaScript">
<!--
function tecken()
{
if (document.add.namn.value=="")
{
alert("Du måste skriva ditt namn!");
return false;
} else if (document.add.email.value=="")
{
alert("Du glömde din email!");
return false;
} else if (document.add.meddelande.value=="")
{
alert("Du glömde ditt meddelande!");
return false;
}
}
//-->
</script>

<link rel="stylesheet" href="stil.css" type="text/css">

</head>

<body bgcolor="#f0f0f0">

<% If Request.QueryString("do") = "" Then%>

<form name="add" method="post" action="kontakta.asp?do=add" onSubmit="return tecken()">
  <table border="0" align="center">
    <tr>
      <td colspan="2"><b>Kontakta oss:</b></td>
    </tr>
    <tr>
      <td colspan="2"><hr noshade></td>
    </tr>
    <tr>
      <td>Namn:<br><input type="text" name="namn" size="15"></td>
      <td>Email:<br><input type="text" name="email" size="25"></td>
    </tr>
    <tr>
      <td>Icq:<br><input type="text" name="icq" size="15"></td>
      <td>Hemsida:<br><input type="text" name="hemsida" size="25"></td>
    </tr>
    <tr>
      <td colspan="2">Meddelande:<br><textarea name="meddelande" cols="43" rows="6"></textarea></td>
    </tr>
    <tr>
      <td colspan="2"><hr noshade></td>
    </tr>
    <tr>
      <td colspan="2"><input type="submit" value="Skicka"></td>
    </tr>
    <%If Session("mess") <> "" Then%>
    <tr>
      <td colspan="2"><hr></td>
    </tr>
    <tr>
      <td colspan="2" align="center">
       <%Response.Write Session("mess")
         Session("mess") = ""%>
      </td>
    </tr>
    <%End If%>
  </table>
</form>

<%End If%>

<% If Request.QueryString("do") = "add" Then

Set Con = Server.CreateObject("ADODB.Connection")
Con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("kontakta.mdb")

Namn       = Request.Form("namn")
Email      = Request.Form("email")
Hemsida    = Request.Form("hemsida")
If Hemsida <> "" Then
  If Left(Hemsida,7) = "http://" Then
    Hemsida = Hemsida
  Else
    Hemsida = "http://" & Hemsida
  End If
End If
Icq        = Request.Form("icq")
Meddelande = FixaTecken(Server.HTMLEncode(Request.Form("meddelande")))
Datum           = Now

SQL = "Insert Into kontakta(namn,email,hemsida,icq,meddelande,datum) Values('" & Namn & "','" & Email & "','" & Hemsida & "','" & Icq & "','" & Meddelande & "',#" & Datum & "#)"
Conn.Execute(SQL)

Session("mess") = "Tackar "& Request.Form("namn") & "!<br> Meddelandet är nu skickat!"
Response.Redirect "kontakta.asp"

End If%>

</body>
</html>

Inte fungerar som det ska är alltså för att mitt webbhotell (b-one) inte stödjer Access databaser utan jag måste flytta till ett annat webbhotell!?

Koden fungerar korrekt när jag kör den med IIS men alltså inte på webservern.
har jag hittat felet?

Medlem sedan juni 20019 519 inlägg
#2

Ja.... det är en bra fråga... om inte b-one klarar av Access så är det nog där felet är men får du inget korrekt felmeddelande?

Medlem sedan okt. 2005787 inlägg
#3

Jo, detta är felmeddelandet jag får.

Technical Information (for support personnel)
Error Type:
ADODB.Connection.1 (0x800A0BB9)
The application is using arguments that are of the
wrong type, are out of acceptable range, or are
in conflict with one another. /kontakt2/kontakta.asp, line 97

Browser Type:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)

Page:
POST 98 bytes to /kontakt2/kontakta.asp

POST Data:
namn=Richard&email=richard@trnca.ffo&icq=036-
52488&hemsida=www. oldoakdesign.se&meddelande=adasdasd

Time:
Sunday, October 16, 2005, 7:32:15 PM

More information:
Sun ONE Active Server Pages Support

och detta är rad 97!

this is line 97.

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("kontakta.mdb")
Medlem sedan juni 20019 519 inlägg
#4

Då är svaret ja. den säger ifrån för att den inte ha access databasens OLE hos servern.

Medlem sedan okt. 2005787 inlägg
#5

KANON! :D eller kanon och kanon, nu får jag ju köpa in mig på ett nytt webbhotel samt peka om domänen men hur som helst så har man ju hört att b-one inte är något att räkan med ändå.. :) tack fär hjälpen!

Medlem sedan juni 20014 421 inlägg
#6

Eller saa konverterar du data asentill MySQL, det staar ju faktiskt klart och tydligt paa deras hemsidaatt det aar MySQL som gaeller

Medlem sedan okt. 2005787 inlägg
#7

ja fast om man läser om folks erfarenheter ang. b-one.net så är de inte att räkna med.

Medlem sedan juni 20019 519 inlägg
#8

richardjoha skrev:

KANON! :D eller kanon och kanon, nu får jag ju köpa in mig på ett nytt webbhotel samt peka om domänen men hur som helst så har man ju hört att b-one inte är något att räkan med ändå.. :) tack fär hjälpen!

b-one är inte så dåligt. Bara för att access inte finns :e har en polare som kör på b-one och har inga som helst problem med b-one.

Medlem sedan apr. 20003 174 inlägg
#9

richardjoha skrev:

ADODB.Connection.1 (0x800A0BB9)
The application is using arguments that are of the
wrong type, are out of acceptable range, or are
in conflict with one another.

Hmm, men just detta felmeddelandet talar inte om att servern inte stödjer Access.
Snarare är det nått tjall med själva connect-proceduren.. :OO

Lite Googlande gav följande:

Sun ONE ASP Documentation skrev:

DSN-less connection strings and file DSNs are not supported for Microsoft Access databases.
You must use system DSNs.

Då behöver du kolla med B-One om det är möjligt att använda DSN för att connecta till databasen.
I dagsläget använder du just en DSN-less connection, vilket Sun ONE ASP inte har stöd för gentemot MS Access. :)

Tillägg:
Kollade in B-One´s hemsida nu, och där kunde man läsa att dom inte erbjuder MS Access..
Förmodligen kan dom då tyvärr heller inte erbjuda DSN. :bla

Medlem sedan okt. 2005787 inlägg
#10

tack för alla svar..

jag kommer köra med ASP i fortsättningen också, har funkat hittils :D

men byter webbhotell nu i alla fall.. ;)

Medlem sedan okt. 20041 556 inlägg
#11

B-One har använder dessutom Suns ASP vilket har vissa skillnader mot MS.

270 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
139 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)