Hello,
mellan title taggarna på den nya sidan - titel.asp - sätter du in detta:
<% =Request.Form("skickaTitle")%>
så får sidan samma titel som användaren skrev in i formulärfältet - skickaTitle
mvh
PatrikB
[Redigerat av PatrikB den 11 apr 2000]
10 svar · 216 visningar · startad av SPiN
Är det någon som har en bra idé om hur man löser detta problem på bästa sätt?:
Jag har gjort en sida där man ska kunna skicka upp åsikter via en sida, send.asp.
Den sidan innehåller ett formlär med tre fält.
skickaNamn, skickaTitle & skickaAsikt.
Jag vill att när man sen trycker på Submit, att skickaTitle ska bli titel på en ny sida, typ titel.asp kan den heta. skickaAsikt ska vara sjelva innehållet på sidan och skickaNamn ska stå längst ner som författare.
Hur gör man om man vill skapa en helt ny sida är alltså min undran?
Jag vill inte använda mig av databaser helst... det enda som ska finnas i databaser är titeln, för den ska vara som en länk till åsikten på en annan sida...
Hoppas ni förstår och hoppas detta går att göra!
Jag gissar på att det går att göra i cgi, för det är väl så http://www.webforum.nu har byggt upp sin sida? varje nytt inlägg är väl en sida?
------------------
SPiN, bjowik99@it-gymnasiet.nu
Hello,
mellan title taggarna på den nya sidan - titel.asp - sätter du in detta:
<% =Request.Form("skickaTitle")%>
så får sidan samma titel som användaren skrev in i formulärfältet - skickaTitle
mvh
PatrikB
[Redigerat av PatrikB den 11 apr 2000]
Japp, tack tack... men det verkliga problemet är att skapa en ny sida.... :l
------------------
SPiN, bjowik99@it-gymnasiet.nu
[Redigerat av SPiN den 11 apr 2000]
Fick denna kod snutt en gång. Har aldrig testat den direkt men den borde fungera
<%
'NyaFilen = Request.Form("idnummer")
NyaFilen = "blabla"
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile("c:\Inetpub\wwwroot\" + NyaFilen + ".asp", True)
a.WriteLine("<!-- #include file = 'Citat.asp' -->")
a.Close
%>
Testa
Andreas
Det borde resultera i att includen parsas (hmm...svenska..) innan den hamnar i writeline-satsen, och då blir det knasigt.
Okey, jag har gjort som följer:
<%
theFile = Request.Form("leTitle")
theSubject = Request.Form("leSubject")
theSummary = Request.Form("leSummary")
theArticle = Request.Form("leArticle")
theWriter = Request.Form("leAuthor")
theDate = Request.Form("leDate")
theURL = "" + theSubject + "\" + theFile + ".asp" %>
<%
If theFile = "" then %>
Du skrev inte i någon titel på artikeln, gå tillbaka och gör det.
<% ElseIf theSummary = "" then %>
Du skrev inte någon sammanfattning till artikeln, gå tillbaka och gör det.
<% ElseIf theArticle = "" then %>
Du skrev inte någon artikel, gå tillbaka och gör det.
<% ElseIf theWriter = "" then %>
Du skrev inte i ditt namn, gå tillbaka och gör det.
<% Else %>
<%
Set object = CreateObject("Scripting.FileSystemObject")
Set makeFile = object.CreateTextFile("c:\Inetpub\wwwroot\freeyourheart\" + theSubject + "\" + theFile + ".asp", True)
makeFile.WriteLine("<html><head><title>")
makeFile.WriteLine theFile
makeFile.WriteLine("</title>")
makeFile.WriteLine("<link rel=stylsheet href='fyh.css' type='text/css'>")
makeFile.WriteLine("</head><body>")
makeFile.WriteLine("<table border='0' cellspacing='0' cellpadding='0' width='550' align='left' valign='top'>")
makeFile.WriteLine("<tr>")
makeFile.WriteLine("<td width='550' align='left'>")
makeFile.WriteLine("<font class='header'>")
makeFile.WriteLine theFile
makeFile.WriteLine("</font></td></tr>")
makeFile.WriteLine("<tr>")
makeFile.WriteLine("<td width='550' align='left'>")
makeFile.WriteLine("<font><b>Författare: </b><i>")
makeFile.WriteLine theWriter
makeFile.WriteLine("</i></font></td></tr>")
makeFile.WriteLine("<tr>")
makeFile.WriteLine("<td width='550' align='left' valign='top'>")
makeFile.WriteLine("<font class='explaining'>")
makeFile.WriteLine theArticle
makeFile.WriteLine("</font></td></tr>")
makeFile.WriteLine("<tr>")
makeFile.WriteLine("<td width='550' align='right'>")
makeFile.WriteLine("<font style='color:rgb(100,100,100);'><b>Datum: </b>")
makeFile.WriteLine theDate
makeFile.WriteLine("</font></td></tr></table>")
makeFile.WriteLine("</body></html>")
makeFile.Close
Set conn = CreateObject("ADODB.Connection")
Path="DBQ=" & Server.MapPath("articles.mdb")
conn.Open "driver={microsoft access driver (*.mdb)}; " & Path,"name","name"
SQLStmt = "INSERT INTO '" & theSubject & "' "
SQLStmt = SQLStmt & "(urlen, title, summary) "
SQLStmt = SQLStmt & "VALUES('" & theURL & "', '" & theTitle & "', '" & theSummary & "');"
Set doit = conn.execute(SQLStmt)
conn.Close %>
<% End If %>
Fungerar nästan perfekt... men jag får ett felmeddelande på set doit = conn.execute(SQLStmt)
Varför??
------------------
SPiN, bjowik99@it-gymnasiet.nu
Går det inte lika bra att skriva "conn.execute(SQLStmt)"?
Näää fortfarande samma meddelande...
det står:
Microsoft OLE DB Provider for ODBC Drivers fel '80004005'
[Microsoft][Drivrutin för ODBC Microsoft Access] Syntaxfel i fråga. Frågeinstruktionerna är inte kompletta.
Hajjar ej... :l
------------------
SPiN, bjowik99@it-gymnasiet.nu
Okey, det var raden SQLStmt = "INSERT INTO '" & theSubject & "' "
som det var fel på, kunde visst inte skriva så... Blir jag tvungen att göra en elseif sats efter vilket ämne som är valt, eller går det att lösa på liknande sätt??
Jag har också stött på mer problem nu... jag kan inte läsa det jag har lagt in i databasen nu
<%
dim conn, rec
set conn = Server.CreateObject("ADODB.connection")
Path="DBQ=" & server.mapPath("articles.mdb")
conn.Open "driver={microsoft access driver (*.mdb)}; " & Path,"name","name"
Set rec = conn.Execute("SELECT * FROM sport Order by Id desc")
%>
<html>
<head>
<title>FreeYourHeart</title>
<link rel=stylesheet href="fyh.css" type="text/css">
</head>
<body>
<!-- #include file="functions.inc" -->
<table border="0" width="100%" height="100%">
<tr>
<td width="150" align="left" valign="top" style="border-right:1px solid black;"><font class="date"><% =dagensdatum %><br><% =tidpunkt %></font><br> <br>
<a href="default.asp">Hem</a><br>
<a href="read.asp">Läs Artiklar</a><br>
<a href="political.asp">Politiska</a><br>
<a href="sport.asp">Sport</a><br>
<a href="environment.asp">Miljö</a><br>
<a href="ovrigt.asp">Övriga</a><br>
<a href="members.asp">Medlemmar</a><br>
<a href="signup.asp">Sign Up</a><br>
<a href="info.asp">Viktig Information</a><br>
<a href="contact.asp">Ta Kontakt</a><br></td>
<td width="*" align="left" valign="top"><img src="pics/fyh.gif" border="0"><br> <br>
<font class="temporary"><« S I D A N Ä R U N D E R K O N S T R U K T I O N »></font><br> <br> <br>
<font class="header">:: SportArtiklar ::</font><br> <br>
<table border="0" cellspacing="0" cellpadding="0" width="450" align="left" valign="top">
<% Do Until rec.EOF %>
<tr>
<td width="100" align="left" valign="top"><a href="<% =FixaTecken(rec(urlen)) %>"><% =FixaTecken(rec(title)) %></a></td>
<td width="350" align="left" valign="top"><font><% =ConvertLinks(FixaTecken(rec(summary))) %></font></td>
</tr>
<%
rec.MoveNext
Loop
rec.Close
conn.Close
%>
Det är hela koden på min sida där man ska kunna välja vilket inlägg man ska läsa.
Ser ni något fel??
------------------
SPiN, bjowik99@it-gymnasiet.nu
Okey, det var raden SQLStmt = "INSERT INTO '" & theSubject & "' "
som det var fel på
Nä, varför har du lagt apostrofer kring tabellnamnet? Det kan man inte ha.
Värden i recordset hämtar man med index eller nyckel, t.ex. rec(0) eller rec("urlen"), så rec(urlen) funkar inte. Såvida du inte deklarerat urlen som en variabel, förstås.
japp hade redan upptäckt det :)
men tack ivf...
nu funkar allt perfekt...
------------------
SPiN, bjowik99@it-gymnasiet.nu