Avatar billede krel Nybegynder
25. februar 2007 - 00:07 Der er 35 kommentarer og
1 løsning

Dele script over to sider?!

Så lige en til natteravnene.

Jeg har et gæstebog-script jeg gerne vil have til at køre over to forskellige sider hvilket vil sige at selve skrive delen skal lægge i en kollonne i en tabel på 'index.asp' mens selve visnings-delen skal gemmens på siden 'tekst.asp' der så lægger som en <iframe> på index.asp

jeg har siddet og rodet en del men får bare en 500 error.. måske noget <! include file/script> eller i den du??

*her er mit script:

<form name="guest" action="guest.asp?mode=new" method="post">
        <table>
            <tr>
                <td colspan=2>Make new entry</td>
            </tr>
            <tr>
                <td>Title</td>
                <td><input type="text" name="title">
            </tr>
            <tr>
                <td colspan=2>Your message<br><textarea cols=27 rows=10 name="besked"></textarea></td>
            </tr>
        </table>
        All fields must be typed.<br>
        <input type="submit" value="send">&nbsp<input type="reset" value="Reset">
    </form>

<%

DBPATH="DBQ=" & server.mappath("../fpdb/kongemedlem.mdb") & ";Driver={Microsoft Access Driver (*.mdb)}"
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open DBPATH
if request("mode")="new" then
    title=request.form("title")
    msg=request.form("besked")
    if title="" or msg="" then
        response.write "<b>You did not type data in all the fields!!</b>"
    else
        sql="insert into messages (msg,title) values('" & msg & "','" & title & "')"
        conn.execute(sql)
    end if
end if
sql="select * from messages order by id DESC"
set rs=conn.execute(sql)
response.write "<hr>"
do while rs.eof=false
%>
<table cellspacing=0 cellpadding=1 border=0 bgcolor="000000" width="300">
    <tr>
        <td>           
            <table bgcolor="ffffff" width="100%">
                <tr bgcolor="a0a0a0">
                    <td colspan=2><center><b><%=rs("title")%></b></td>
                </tr>
                <tr>
                    <td>From name:</td>
                    <td><%=rs("from_name")%></td>
                </tr>
                <tr>
                    <td>Recieved:</td>
                    <td><%=rs("dato")%></td>
                </tr>
                <tr>
                    <td colspan=2><hr></td>
                </tr>
                <tr>
                    <td colspan=2><%=rs("msg")%></td>
                </tr>
            </table>
        </td>
    </tr>
</table>
<br><br>
</body>
</html>
<%
rs.movenext
loop
set conn=nothing
%>

|Krel
Avatar billede kalp Novice
25. februar 2007 - 00:15 #1
går ud fra din form er index siden og resten er tekst siden?

den fejl du får lyder forresten som en server fejl.

men det du kan gøre er som du selv siger at lave en include file der hvor du vil have det.

det du først skal gøre er at lave et tjek på om formen er blevet submittet hvis den er så skal include filen indsættes og hvis ikke så skal den ikke indsættes.

ellers får du en fejl
Avatar billede krel Nybegynder
25. februar 2007 - 00:33 #2
Det hele er i øjeblikket på en helt 3. side nemlig guest.asp

Men dette vil jeg som sagt gerne dele til to sider..

Men jo <form>'en er der hvor man indtaster og det er den jeg gerne vil have på index.asp og så hive data ud fra db'en i tekst.asp...

Jeg har bl.a. prøve at dele ved "sql="select * from [...]" og så taget "DBPATH="DBQ=" & server.mappath [...]" med over på tekst.asp men det giver som sagt bare en 500'er..

Du kan ikke kaste lidt lys over en evt. include file ??

|Krel
Avatar billede kalp Novice
25. februar 2007 - 00:38 #3
jeg kan lige bikse et eksempel sammen.. så ved jeg også om det jeg siger passer:) og så slider du ikke forgæves;)
Avatar billede kalp Novice
25. februar 2007 - 01:04 #4
http://www.kalp.dk/includetrick/includefile.zip

du skal bare pakke det ud.. og start OpretEmne.asp

ps. du skal tilføje 2 gange tekst før du kan se det kommer frem.. gad ikke lige finde ud af hvorfor da det jo ikke er problemet hos dig;) men du kan se det med include osv i min code.
Avatar billede krel Nybegynder
25. februar 2007 - 11:55 #5
okey det var sku hurtigt...
men selve include file skulle jo netop være en anden side end der hvor man skriver men der bruger jeg jo bare liste siden i sig selv.

Jeg kan vel også let oprette en tekstboks til at skrive i så det ikke kun er en overskrift der bliver skrevet ikk?

Jeg roder lidt og hvis det går i hårknude håber jeg at jeg må hører dig igen?

|Krel
Avatar billede kalp Novice
25. februar 2007 - 11:57 #6
ja ja.. hehe jeg har bare lavet et enkelt textfelt fordi jeg skulle teste jo:)
men det er altså også 2 forskellige filer.. OpretEmne.asp indeholder kun en form, men includer den anden fil som viser indholdet af databasen.

include filen kan du placere i en tabel hvis du lyster.
Avatar billede krel Nybegynder
25. februar 2007 - 12:08 #7
jo er jeg klar over.. sidder lige og roder lidt med at få det til at passe til den database jeg har i forvejen.. glemte også at give alle info.. Men gør jo ikke spor at jeg selv kan rode lidt! jo mere af den slags jo bedre sku man jo gerne bli til skidtet. men hvis skriver jeg herinde når det helt skævt. Glemte helt at give point de sku gerne komme her....

|Krel
Avatar billede kalp Novice
25. februar 2007 - 12:09 #8
takker:) de er modtaget;)

helt enig.. det er godt at sidde fast og rode lidt med det så lære man det sgu bedre:)

men du er velkommen til at spørge hvis den det går helt galt og du ikke kan se hvad der fejler, så skal jeg nok svare når jeg modtager en mail fra E.
Avatar billede krel Nybegynder
25. februar 2007 - 13:31 #9
hmm. underligt mit spm blev vist ikke lige sendt... så prøver lige igen:

I org. scriptet var der også et felt til navn og det er der også plads til i tabellen i min db. Men da denne 'gæstebog' kun er for medlemmer der benytter login tænkte jeg om man ikke kunne trække dette navn ud fra den tabel med medlemmer istedet for det input felt ??

Når man logger ind laver den nemlig > session("ID") = rs("ID") < så tænkte på om man kunne bruge dette ID til at bestemme navn med ??????

|Krel
Avatar billede kalp Novice
25. februar 2007 - 13:50 #10
synes da du skal gemme Session("Navn") = rs("navn")
når man logger ind også... for så er det nemmere for dig blot at hive navn ned fra session:)
Avatar billede krel Nybegynder
25. februar 2007 - 13:51 #11
okey kan man lave flere sessions efter hinanden for mener jeg har bygget en del op omkring dette ID...

|Krel
Avatar billede krel Nybegynder
25. februar 2007 - 14:00 #12
Sådan det spiller max med min egen database..
MEN hvis jeg fjerne <!--#include file="liste.asp"--> fra opretEmne.asp så vil den ikke lige oplysningerne i db'en?..

Kan men evt. lave et eller usynligt iframe eller lign.? den så kunne ligge i så man ikke se resultaterne neden under der hvor man skriver?

|Krel
Avatar billede kalp Novice
25. februar 2007 - 14:18 #13
der fordi liste.asp er den som også indsætter data, men synes det var sådan du sagde du ville have det:)
altså fjerne logikken fra den ene side og over til den anden.

Er det fordi du gerne vil have den ikke viser noget før man har indtastet noget i boksen og trykker på knappen?
Avatar billede krel Nybegynder
25. februar 2007 - 14:24 #14
PRÆCIS!

Beklager hvis jeg har udtrykt mig forkert... så prøver lige helt enkelt så vi er eninge:

[opretemne.asp] indeholder kun titel felt og beskeden og så en 'sende-til-db-funktion'

[liste.asp] indeholder kun resultater (hente fra db funktion)

Er vi eninge???

|Krel
Avatar billede kalp Novice
25. februar 2007 - 14:34 #15
ja måske:)
men liste.asp gemmer også det fra opretemne.asp

men når man åbner opretemne.asp første gang vil der ikke blive vist indholdet fra liste.asp før man har indtastet noget og trykket på send.

enig?
Avatar billede krel Nybegynder
25. februar 2007 - 14:38 #16
hmm nu har den jo været åben et par gange og har også været i db'en og slettet op til flere gange.. men jo første gang stod al det du havde indtastet der også...

|Krel
Avatar billede kalp Novice
25. februar 2007 - 14:51 #17
ja det jeg godt:) men også derfor at jeg spørger om det skal fungere på den anden måde;o)

men se her.
http://kalp.dk/includetrick/opretEmne.asp

og du skal bare rette opretEmne.asp til

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
    <title></title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
body,td,th {
    color: #0000FF;
}
body {
    background-color: #FFFFFF;
}
-->
</style></head>

<body bottommargin="0" leftmargin="0" marginheight="0" marginwidth="0" rightmargin="0" topmargin="0" background="background.jpg">

                      <div align="center">
                       
                                <%
strTitle =  trim(replace(request.form("overskrift"),"'",""""))
If strTitle > "" Then

    strConn = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("databaseeksp.mdb")
    Set adoCn = Server.CreateObject("ADODB.Connection")
    adoCn.Open strConn

    adoCn.Execute("INSERT INTO Trade (Overskrift,dato) VALUES ('" & strTitle & "',#"& Date()  & "#)")

End If

  %>
                       
                        <%
  strTitle =  trim(replace(request.form("overskrift"),"'",""""))
If strTitle > "" Then

Set rs = Server.CreateObject("ADODB.RecordSet")
strSQL = "SELECT * FROM Trade Order by dato desc"
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("databaseeksp.mdb")

rs.Open strSQL, strDSN, 1

    %>
               
                      <%
                dim sidsteArstal
                sidsteArstal = CDate("22/1/2000")
Do While Not rs.EOF

                      if year(sidsteArstal)  <> year(rs("dato")) then
                      response.Write(year(rs("dato")))
                      response.Write("<br />")
                      end if
                      response.Write(rs("overskrift"))
                      response.Write("<br />")
                         
                sidsteArstal = rs("dato")
rs.MoveNext
Loop
%>
             
                      <%

rs.Close
Set rs = Nothing
end if


%>
                 

                       
</body>
</html>







jeg har kun tilføjet 2 linjer.
Avatar billede krel Nybegynder
25. februar 2007 - 14:55 #18
rette til? jamen så er der jo ikke nogle input felter jo! snakker vi forbi hinanden igen c",)

|Krel
Avatar billede kalp Novice
25. februar 2007 - 14:57 #19
Det ved jeg ikke.. måske?
Du skal i hvertfald ikke tænke på hvilke kolonner og felter jeg har i mit script andet en funktionaliteten i det.

Skal dit fungere sådan her?

http://kalp.dk/includetrick/opretEmne.asp

altså når du loader den side nu er der kun input feltet og knappen.. indtast noget og tryk så kommer det fra db'en og bliver vist på siden også.
Avatar billede krel Nybegynder
25. februar 2007 - 15:14 #20
Nej.
På [opretemne.asp] skal man kun kunne indtaste oplysningerne når man så trykker send skal de vises på en anden side der includer [liste.asp]

prøv at klikke ind på :
http://www.tourdefoxdecarvalho.dk/version.1.2.6/index.htm

klik "kongeloge medlem" og skriv "qawi" i begge felter! peg herefter på kongeloge medlem igen klik på :: kongebogen...

så kan de se hvad jeg mener...
så skal det laves sådan at når man sender er det kun iframen i midten der ændres...

|Krel
Avatar billede kalp Novice
25. februar 2007 - 15:31 #21
okay det forstår jeg godt, men det er noget med din <form submit> at gøre.. og helt sikkert javascript.
Dvs. man kan sige hvor den skal loade den anden side.

Du bliver nød til at spørge i javascript katagorien, men det gode er at roenving er aktiv lige nu så han kan svare på det:)
Avatar billede krel Nybegynder
25. februar 2007 - 15:38 #22
okey så jeg poster bare spm

>
Nej.
På [opretemne.asp] skal man kun kunne [...]
<

i javascript evt. att. roenving

?????

|Krel
Avatar billede kalp Novice
25. februar 2007 - 15:43 #23
ja ham eller OleBole
Avatar billede krel Nybegynder
25. februar 2007 - 15:56 #24
med hensyn til gæstebogen bruger jeg også dato som du også har taget med men når jeg henter den fra db'en så skrives den i UK/US format altså 2/25/2007..

Har søgt og søgt og søgt men syns ikke rigtig jeg kan finde noget konkret om hvordan man for det lavet om til 25/2/2007 (evt. 25-02-2007)

Er det noget du kender til? evt point kan oprettes i nyt spm hvis det er?
Avatar billede kalp Novice
25. februar 2007 - 16:02 #25
smid det her i toppen af din ASP side

<% session.LCID=1030 %>

så burde det vidst nok løse det
Avatar billede krel Nybegynder
25. februar 2007 - 16:14 #26
okey. jeg takker mange gange... man kan ikke gøre noget for at komme i kontakt med roenving vel? har oprette spm i javascript...

|Krel
Avatar billede krel Nybegynder
25. februar 2007 - 16:19 #27
så har jeg lige et spm mere.. OG SÅ DET SLUT! :D

der er så mange herinde der taler om at skrive stien til en fil ind i db og når man så laver udtræk fra db bliver det stien til filen man hiver ud (oftest med billeder) Men jeg tænkte på skal også lave et nyhed funktion og der har jeg lavet en tabel med dato og så nyheden dato er jo bare dato mens jeg så tænkte at nyheden kunne være en .txt-fil man så bare linkede til i db'en

Men hvis jeg skriver http://www.domaine.dk/mappe/fil.txt sker der ikke rigtig noget hvis jeg hiver det ud fra db'en...

skriver jeg det forkert i db??

|Krel
Avatar billede kalp Novice
25. februar 2007 - 16:34 #28
han skal nok se dit javascript spørgsmål:) og han kan godt svare hvis han forstår hvad du mener:) (man skal altid forklare et spørgsmål på en måde så en som slet ikke ved hvad du taler om kan forstå det:) )

men han ser dit spørgsmål da han er aktiv i javascript.

hvis du har skrevet en sti i databasen til en fil så skal du lave stien om til et link når du hiver der frem på siden..

altså ikke bare response.write(rs("kolonneSomIndeholderSti");

men noget lignende..

<a href="<%Response.write(rs("kolonneSomIndeholderSti")) %>" target="_self">Download fil</a>
Avatar billede krel Nybegynder
25. februar 2007 - 16:56 #29
han er igen nu :)

hmm tror jeg at jeg forstår. men det er jo ikke et link

eks.

24-02-2007 [hentes fra db felt 'dato']
Så er der en opdatering på siden... [en 240207.txt-fil som ligger i mappen /news/]

så skriver jeg i db'en: i feltet 'nyhed'
../news/240207.txt

og så skrier jeg ? i response.wrihte rs("nyhed") ""

kan ikke se hvordan et link kommer ind i denne sammenhæng? - skal jeg måske heller ikke eller?

|Krel
Avatar billede kalp Novice
25. februar 2007 - 17:03 #30
Du SKAL linke til filen:)
hvis du vil have man skal kunne trykke på den.. og åbne den.
Avatar billede krel Nybegynder
25. februar 2007 - 17:11 #31
Jeps forstår jeg men det drejer sig ikke om et link..

Det kunne også været et billede, det skal ikke vises når man klikker på et link med udtrækkes fx i forbindelse med en brugerprofil...

altså det skal ikke fysisk lægge i db'en med på serveren og så skal stien ind i db der så når man åbner profil.asp henter billeder fra serveren ifl. de oplysninger der bliver sendt fra db ?

Snakker vi skævt igen?

|Krel
Avatar billede krel Nybegynder
25. februar 2007 - 17:58 #32
Dette var et lille side spring jeg måske vender tilbage til senere hvis jeg ikke finder en anden løsning på news problemet.

Men hvis du vil hjælpe mig med den der session så ville det være rigtig lækkert! :D

- altså Session("Navn") = rs("navn")

hvordan skal jeg så kalde denne session frem når jeg vil gemme den i db sammen med de andre oplysninger:

adoCn.Execute("INSERT INTO Kongebog (title,msg,from_name,dato) VALUES ('" & strtitle & "','" & strmsg & "','[her skal min session indsættes]',#"& Date()  & "#)")

|Krel
Avatar billede kalp Novice
25. februar 2007 - 22:10 #33
adoCn.Execute("INSERT INTO Kongebog (title,msg,from_name,dato) VALUES ('" & strtitle & "','" & strmsg & "','"& Session("Navn") &"',#"& Date()  & "#)")


blot det:)
Avatar billede krel Nybegynder
26. februar 2007 - 00:04 #34
okey have godt tænkt den tanke dog uden '&' tegnene... derfor det ikk rigtig ville virke..

qawi du skal bare have super tak for hjælpen !
må man hører hva du gør dig mest i (asp, access, jave eller?)

|Krel
Avatar billede kalp Novice
26. februar 2007 - 09:13 #35
Nu er det faktisk mest C# / 2.0 NET
men jeg blev udlært i Java og har arbejdet i længest tid med det. (kun 6måneders ca. c# hvoraf 3 på fuldtid. )

ASP kan jeg sådan nogenlunde, men det er ikke noget har fået uddannelse i, men bare ved at lave lidt småsider selv og hjælpe herinde:)

Angående database så er det næsten det samme. Arbejder primært med Access og MSSQL, men under uddannelse var det Oracle:)
Avatar billede krel Nybegynder
26. februar 2007 - 20:54 #36
ok. mere hvis man nu sku have prob en anden goo gang ;D
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester