webForumDet fria alternativet

Hämta hem info.

ASP

35 svar · 481 visningar · startad av Hallgren

Medlem sedan dec. 19991 606 inlägg
Frågan#1

Yo!

Nu när jag äntligen (med hjälp från vissa) fått min databas att uppdatera sig, så behöver jag nu lite hjälp med att hämta hem info.
Har letat runt lite på nätet men hittar ingen bra förklaring hur. :(

Meningen med skriptet är att man ska kunna uppdatera menyer på ett enkelt sätt.

Sidan som skall ha hämta hem info. kommer att se ut så här...typ:

(Efter varje dag så skall man hämta hem info, ur databasen.)

Måndag: (hämtar info. ur kolum mandag)

Tisdag: (hämtar info. ur kolum tisdag)

Onsdag: (hämtar info. ur kolum onsdag)

osv.

Är väldigt tacksam om någon kan hjälpa mig, samt kankse förklar lite hur själva skriptet är uppbyggt.

------------------
Forumledare, webForum

[Redigerat av Hallgren den 04 feb 2001]

Medlem sedan juni 200032 967 inlägg
#2

då får man skriva lite select-frågor för det hela. hur är dina tabeller uppbyggda?

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

Medlem sedan dec. 19991 606 inlägg
#3

Tabellen i databasen?

ID mandag tisdag onsdag torsdag fredag lordag sondag pasta sallad veg veckans

På själva sidan kommer det går uppefrån och ner.

------------------
Forumledare, webForum

Medlem sedan dec. 19991 606 inlägg
#4

Yo!

Tror att mitt lilla prob. kommer att lösa sig, men då kan jag ju lika väl hoppa in med en liten fråga.

<html>

<!-- #include virtual="/databaser/adovbs.inc" -->

<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\inetpub\wwwroot\databaser\meny.mdb"
strSQL = "INSERT INTO meny (mandag, tisdag, onsdag, torsdag, fredag, lordag, sondag, pasta, sallad, veg, veckans) VALUES('"&Request.Form("mondag")&"', '"&Request.Form("tisdag")&"')"
Connect.Execute(strSQL)
Connect.Close
%>
</html>

Min Request sats kommer att bli mil lång, men har för mig att det inte bara går att göra en radbrytning. Hur var vart fixar jag det?

------------------
Forumledare, webForum

Medlem sedan sep. 200061 inlägg
#5

Med underscore: _
Ta din SQL-sträng t ex:

strSQL = "INSERT INTO meny (" & _
"mandag, tisdag, onsdag, torsdag, fredag, lordag, sondag, pasta, sallad, veg, veckans" & _
") VALUES('" & _
Request.Form("mondag")&"', '"&Request.Form("tisdag")&"')"

Om du förstår vad jag menar

Medlem sedan dec. 19991 606 inlägg
#6

Visst! :)

Kan man då typ göra så här:

Request.Form("mandag")&"', '" &_
Request.Form("tisdag")&"', '" &_
Request.Form("onsdag")&"', '" &_
Request.Form("torsdag")&"')"

------------------
Forumledare, webForum

Medlem sedan dec. 19991 606 inlägg
#7

Då tar jag det som ett "Ja!" :)

------------------
Forumledare, webForum

Medlem sedan juni 200032 967 inlägg
#8

vi väntade på att du skulle prova... ;)

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

Medlem sedan dec. 19991 606 inlägg
#9

Hehe, trodde nästan det och jag har provat!

Aarrgghh...säger jag bara.

Error Type:
Microsoft VBScript compilation (0x800A0409)
Unterminated string constant
/update/addmenu.asp, line 8, column 114
strSQL = "INSERT INTO meny (mandag, tisdag, onsdag, torsdag, fredag, lordag, sondag, pasta, sallad, veg, veckans)_

<!-- #include virtual="/databaser/adovbs.inc" -->

<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\inetpub\wwwroot\databaser\meny.mdb"
strSQL = "INSERT INTO meny (mandag, tisdag, onsdag, torsdag, fredag, lordag, sondag, pasta, sallad, veg, veckans)_
VALUES('"&Request.Form("mondag")&"', '"&Request.Form("tisdag")&"', '"&Request.Form("onsdag")&"',_
 '"Request.Form("torsdag")&"', '"&Request.Form("fredag")&"', '"&Request.Form("lordag")&"',_
'"&Request.Form("sondag")&"', '"&Request.Form("pasta")&"', '"&Request.Form("sallad")&"',_
'"&Request.Form("veg")&"', '"&Request.Form("veckans")&"')"
Connect.Execute(strSQL)
Connect.Close
%>

------------------
Forumledare, webForum

Medlem sedan juni 200032 967 inlägg
#10

sådär får du ju inte göra! ;)

du måste fortfarande bryta dina strängar på ett korrekt sätt.

strSQL = "INSERT INTO meny (mandag, tisdag, onsdag, torsdag, fredag, lordag, sondag, pasta, sallad, veg, veckans) " &_
"VALUES('"&Request.Form("mondag")&"', '"&Request.Form("tisdag")&"', '"&Request.Form("onsdag")&"'," &_
"'"Request.Form("torsdag")&"', '"&Request.Form("fredag")&"', '"&Request.Form("lordag")&"'," &_
"'"&Request.Form("sondag")&"', '"&Request.Form("pasta")&"', '"&Request.Form("sallad")&"'," &_
"'"&Request.Form("veg")&"', '"&Request.Form("veckans")&"')"

observera att varje rad måste vara en korrekt sträng.

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

Medlem sedan dec. 19991 606 inlägg
#11

Jag gör alltid sånt man inte får, det är därför ni gillar mig. ;) :e :e

Har fixat men får nu upp:

Expected end of statement

Innan någon nämner det, så ska jag gå igenom de vanligaste Error Types, så det blir lättare för mig att lokalisera felet, dock inte än. :e

------------------
Forumledare, webForum

Medlem sedan juni 200032 967 inlägg
#12

lessen min vän, my bad. missade att du hade missat... ett litet &-tecken på rad 2 i din strängkonkatenering (usch, heter det så? ;) )

strSQL = "INSERT INTO meny (mandag, tisdag, onsdag, torsdag, fredag, lordag, sondag, pasta, sallad, veg, veckans) " &_
"VALUES('"&Request.Form("mondag")&"', '"&Request.Form("tisdag")&"', '"&Request.Form("onsdag")&"'," &_
"'"&Request.Form("torsdag")&"', '"&Request.Form("fredag")&"', '"&Request.Form("lordag")&"'," &_
"'"&Request.Form("sondag")&"', '"&Request.Form("pasta")&"', '"&Request.Form("sallad")&"'," &_
"'"&Request.Form("veg")&"', '"&Request.Form("veckans")&"')"

mvh,

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

Medlem sedan dec. 19991 606 inlägg
#13

Muahaha! Du är en klippa mannen!!!
Det är nästan som om man vill bjuda dig på en Festis! :e

------------------
Forumledare, webForum

Medlem sedan dec. 19991 606 inlägg
#14

Nähe, man kankse skulle ta ett sista inlägg innan kvälls mackan. :)

Expected 'Then'
/update/lunch.asp, line 8, column 88
If Request.QueryString("mandag") = "Mandag" OR Request.QueryString("tisdag") = "Tisdag" OR_

Kan det vara så att jag har gjort ännu ett radbrytsfel?

<!-- #include virtual="/databaser/adovbs.inc" -->

<%	Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\inetpub\wwwroot\databaser\meny.mdb"

	If Request.QueryString("mandag") = "Mandag" OR Request.QueryString("tisdag") = "Tisdag" OR_
	Request.QueryString("onsdag") = "Onsdag" OR Request.QueryString("torsdag") = "Torsdag" OR_
	Request.QueryString("fedag") = "Fredag" OR Request.QueryString("lordag") = "Lordag" OR_
	Request.QueryString("sondag") = "Sondag" OR Request.QueryString("pasta") = "Pasta" OR_
	Request.QueryString("sallad") = "Sallad" OR Request.QueryString("veg") = "Veg" OR Request.QueryString("veckans") = "Veckans" Then

	Set RecSet = Server.CreateObject("ADODB.Recordset")

	If Request.QueryString("mandag") = "Mandag" Then Addera = "SELECT * FROM meny ORDER BY Mandag"

	ElseIf Request.QueryString("tisdag") = "Tisdag" Then Addera = "SELECT * FROM meny ORDER BY Tisdag"

	ElseIf Request.QueryString("onsdag") = "Onsdag" Then Addera = "SELECT * FROM meny ORDER BY Onsdag"

	ElseIf Request.QueryString("torsdag") = "Torsdag" Then Addera = "SELECT * FROM meny ORDER BY Torsdag"

	ElseIf Request.QueryString("fredag") = "Fredag" Then Addera = "SELECT * FROM meny ORDER BY Fredag"

	ElseIf Request.QueryString("lordag") = "Lordag" Then Addera = "SELECT * FROM meny ORDER BY Lordag"

	ElseIf Request.QueryString("sondag") = "Sondag" Then Addera = "SELECT * FROM meny ORDER BY Sondag"

	ElseIf Request.QueryString("pasta") = "Pasta" Then Addera = "SELECT * FROM meny ORDER BY Pasta"

	ElseIf Request.QueryString("sallad") = "Sallad" Then Addera = "SELECT * FROM meny ORDER BY Sallad"

	ElseIf Request.QueryString("veg") = "Veg" Then Addera = "SELECT * FROM meny ORDER BY Veg"

	ElseIf Request.QueryString("veckans") = "Veckans" Then Addera = "SELECT * FROM meny ORDER BY Veckans"

	End If

	RecSet.Open Addera, Connect, adopenStatic, adLockOptimistic %>

------------------
Forumledare, webForum

Medlem sedan juni 200032 967 inlägg
#15

du kan bara använda metoden '&_' då du petar i strängar, alltså inte i slingor o.dyl.

varför har du olika variabler för varje dag? varför inte bara en?

om vi låssas att du använder en variabel kan du korta ner din kod ganska mycket.

If request.querystring("mat")<>"" Then

Set RecSet = Server.CreateObject("ADODB.Recordset")

strSQL = "SELECT * FROM meny ORDER BY " & request.querystring("mat")

RecSet.Open strSQL, Connect, adopenStatic, adLockOptimistic 

End If
%>

se bara till att det i querystringen mat kommer rätt värde, så ska det gå galant.

vad säger du, lite kortare kod, eller? :)

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

[Redigerat av @nders den 05 feb 2001]

Medlem sedan dec. 19991 606 inlägg
#16

Aarrggh...sitter på ICQ med en asp snubbe som säger samma sak, men vad jag inte fattar är hur får jag fram info. från varje dag?

Vad representerar "mat"? En dag eller all info?

[tillägg]
Nu har jag blivit trött på det här. :l
Tror jag måste börja tänka i en annan bana. Enkel uppdatering, enkel redigering...mm...nähe, sov gutt people!
[/tillägg]
------------------
Forumledare, webForum

[Redigerat av Hallgren den 05 feb 2001]

Medlem sedan dec. 19991 606 inlägg
#17

Muahahah, Im back!! :e

Jag får nu upp Object requird: "RecSet" och felet skall finnas någon stans längst ner (på då den långa, långa onödiga koden som ni ser lite högre upp :e )

Förslag?

------------------
Forumledare, webForum

Medlem sedan juli 20003 825 inlägg
#18

Jag vet att du är Forum Ledare men trots detta faktum måste jag säga att du har det sämsta upplägget alla kategorier på din databas.

Du skulle kunna ha 1/20 så mycket kod och fortfarande ha en bättre lösning.

[menu]
x_ID - räknare
x_text - själva menyn, 100 tecken
x_date - veckodag, datum

are you with??

[menu]
x_ID - räknare
x_sallad - själva menyn, 100 tecken
x_pasta - själva menyn, 100 tecken
x_vegetarisk - själva menyn, 100 tecken
x_veckans - själva menyn, 100 tecken
x_date - veckodag, datum

- en utveckling av ovanstående

------------------
Never underestimate your opponents.

Medlem sedan dec. 19991 606 inlägg
#19

Säger du verkligen det Eclipse? :e :e :e

Jag vet att min kodning inte tillhör eliten, men är nybörjare och tills jag lär mig alternativen så kommer att att köra så här. Tycker att det är bättre att man förstår vad man själv gör, istället för att göra vad andra säger och själv så fattar man noll. :l

När det gäller att jag är forumledare, då måste jag säga...uh? Står det någonstans att man kan allt när man är forumledare? ;) :e Plus så är jag forumledare för Spelrelaterat. :)

Du har inte svaret på min fråga någonstans? :)

------------------
Forumledare, webForum

Medlem sedan dec. 200012 464 inlägg
#20

I din långa kod så skapas aldrig ett recordset. Så innan du gör RecSet.Open så behövs detta

Set RecSet = Server.CreateObject("ADODB.Recordset")

------------------
essentitia preter non sans multiplicandum

[Redigerat av LarsG den 12 feb 2001]

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