Avatar billede -l_jogge_l- Nybegynder
06. september 2004 - 09:36 Der er 49 kommentarer og
1 løsning

Hjælp med en WYSIWYG Editor?

Jeg har fundet denne Editor her, den dækker faktisk ALT hvad jeg skal bruge... dog mangler den DB opkoblingen!

Er der en der vil hjælpe mig med at få den koblet op til en Access Database, og HENTE og GEMME data derfra?

Det smarteste ville jo være hvis jeg kunne få en menu i venstre side over alle siderne, og nå jeg så klikker på dem kan jeg rediger dem!!

Jeg kan jo kun give 200 point afgangen, men giver gerne MEGET mere!!
Avatar billede milo Nybegynder
06. september 2004 - 09:38 #1
øhh, har du overvejet at give noget brugbar information der giver mulighed for at hjælpe dig?

Læs her:
http://razor.dk/diverse/spm/
Avatar billede -l_jogge_l- Nybegynder
06. september 2004 - 09:41 #2
Det er denne her Editor jeg gerne vil bruge:
http://www.webwizguide.info/asp/sample_scripts/RTE_application.asp
Avatar billede -l_jogge_l- Nybegynder
06. september 2004 - 10:55 #3
Hvis nu jeg kan finde ud af hvorhenne af det er den hente og sender til det TEXT felt, så vil det hjælpe en del!!
Avatar billede eagleeye Praktikant
06. september 2004 - 13:43 #4
Normalt bruger de WYSIWYG editor et <textare> og det ligger på en form. Så kan du hente data fra flete med Request.Form("navn_på_textare") hvis du har sat method="post" i din form tag.


Vil du ligge data fra databasen ind feltet henter du det ud med en SQL sætning.
set rs = Connection.Execute ("select * from tabelnavn where side=123"
Så kan du gøre såan her
<textare name="navn_på_textarea"><%=rs("navn_på_kolonne")%></textare>


Hvis du skriver en fed tekst <b>FED</b> vil det automatisk være de nødvendig HTML tags i strengen du får fra Request.Form du skal ikke gøre noget ved teksten.
Avatar billede -l_jogge_l- Nybegynder
06. september 2004 - 14:16 #5
Kan du ikke lige hjælpe mig med hele syntaksen til hvordan jeg henter den ind fra en access database?
Avatar billede eagleeye Praktikant
07. september 2004 - 00:46 #6
Du buger en select sql og alt efter om du henter side ud som navn eller id kan du lave det i stil med dette:

<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath("db1.mdb")

id = Request("id")
SQL = "select * from tabelnavn where id =" & id
Set rs=Conn.Execute(SQL)
if not rs.EOF then
  strTxt = rs("kolonne_navn")
end if
rs.Close
%>

og så kan du ligge strTxt ind i textareaet:
<textare name="navn_på_textarea"><%=strTxt%></textare>
Avatar billede -l_jogge_l- Nybegynder
08. september 2004 - 15:40 #7
Det kan jeg sgu ike få en skid til at virke....
Avatar billede eagleeye Praktikant
08. september 2004 - 16:50 #8
den bruger slet heller ikke et textare :)

Det som er "textareaet" er filen, RTE_textbox.asp

Så i filen RTE_textbox.asp kan du tilføje noget som dette der skrive teksten ud hvis der er valgt et id.

Så prøv at rette disser linjer i filen:

<body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" onLoad="setTimeout('enableDesignMode()', 20);">
</body>
</html>


Til disse:

<body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" onLoad="setTimeout('enableDesignMode()', 20);">
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath("db1.mdb")

id = Request("id")
SQL = "select * from tabelnavn where id =" & id
Set rs=Conn.Execute(SQL)
if not rs.EOF then
  Response.write rs("kolonne_navn")
end if
rs.Close
%>
</body>
</html>
Avatar billede eagleeye Praktikant
08. september 2004 - 16:54 #9
Alt efter hvodan du har lavet det kan det være du bliver nød til at overføre ID'et til filen og det gøres så i denne linje i filen RTE_message_form_inc.asp

Response.Write(vbCrLf & "                //Create an iframe and turn on the design mode for it" & _
vbCrLf & "                document.write ('<iframe id=""message"" src=""RTE_textbox.asp?noCache=" & CInt(RND * 2000) & """ width=""100%"" height=""250px"" onMouseOver=""hideColourPallete()""></iframe>')")


Så linjen bliver til:

Response.Write(vbCrLf & "                //Create an iframe and turn on the design mode for it" & _
vbCrLf & "                document.write ('<iframe id=""message"" src=""RTE_textbox.asp?noCache=" & CInt(RND * 2000) & "&id=" & request("id") & """ width=""100%"" height=""250px"" onMouseOver=""hideColourPallete()""></iframe>')")
Avatar billede -l_jogge_l- Nybegynder
10. september 2004 - 09:13 #10
Jeg har dog lidt svært ved at se, hvad det er for en fil jeg skal pege mod i mit link:
<%Dim ADO_Connection
Dim rsMenu
Dim SQL_STRING

set ADO_Connection = server.Createobject("ADODB.Connection")
ADO_Connection.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../cgi-data/db.mdb")
set rsMenu = server.Createobject("ADODB.Recordset")
SQL_String = "Select * from menu order by rank ASC"
rsMenu.open SQL_String, ADO_Connection%>
STRING_Menu = rsMenu("name")
STRING_Link = "<a href='texteditor/.asp?id=" & rsMenu("Id") & "'>" & STRING_Menu & "</a>"
Avatar billede -l_jogge_l- Nybegynder
10. september 2004 - 09:15 #11
Jeg har jo en Access Database, hvor der er der er to tabeller, en der hedder MENU der styrer menuen og en der hedder PAGES... og det er jo den tabel der hedder PAGES, hvor jeg har 3 kolonner i... en ID, NAME og TEXT....

Så får jeg en list op over alle siderne i menuen, og når jeg klikker på linket, skal den åbne siden i den fine editor der....

Så skal jeg kunne udfylde den og gemmer det tilbage igen i databasen....
Avatar billede milo Nybegynder
10. september 2004 - 10:40 #12
Det har jo intet med en WYSIWYG editor at gøre?
Avatar billede -l_jogge_l- Nybegynder
10. september 2004 - 10:43 #13
Det har det da! Man skal kunne oprette sider og rediger dem i den der Text Editor!.... og gemmer det i en Access Database... men jeg kan ikke få den til at koble op!
Avatar billede -l_jogge_l- Nybegynder
10. september 2004 - 10:57 #14
Ok... det der er sket nu er at den åbner siden til redigering... problemet er bare at toolbaren IKKE er der... men man kan slette texte og den henter osse fint fra selve Access Database...

Nogen ideer??
Avatar billede -l_jogge_l- Nybegynder
10. september 2004 - 11:04 #15
I kan se den her:

www.bredan.net
Avatar billede -l_jogge_l- Nybegynder
10. september 2004 - 11:16 #16
Ha.. det var jo bare en dummer fejl!
Avatar billede -l_jogge_l- Nybegynder
10. september 2004 - 11:33 #17
Nu mangler jeg faktisk bare at få ID'en med hele vejen fra den første side til den sidst hvor den gemmer i Databasen....
Avatar billede -l_jogge_l- Nybegynder
10. september 2004 - 13:52 #18
Nogen der vil hjælpe lidt?
Avatar billede eagleeye Praktikant
10. september 2004 - 15:24 #19
Hvor kommer id'et fra i første omgang?
Avatar billede -l_jogge_l- Nybegynder
13. september 2004 - 15:06 #20
Id'en kommer fra menu_edit.asp... hvor jeg trykker på selve siden og så kommer selve Editoren frem:
Se her:
http://www.bredan.net/admin/menu_edit.asp
Avatar billede -l_jogge_l- Nybegynder
13. september 2004 - 15:44 #21
Har prøvet med det her:

<%Dim ADO_Connection
Dim rsEditPage
Dim SQL_STRING
Dim EditPage

EditPage = CLng(Request.QueryString("ID"))
set ADO_Connection = server.Createobject("ADODB.Connection")
ADO_Connection.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../../cgi-data/db.mdb")
Set rsEditPage= Server.CreateObject("ADODB.Recordset")

SQL_STRING= "SELECT page.text FROM page WHERE ID=" & Editpage

rsEditPage.LockType = 3
rsEditPage.Open SQL_STRING, ADO_Connection

rsEditPage.Fields("text") = strMessage

rsEditPage.Update
rsEditPage.Close

Set rsEditPage= Nothing

Set ADO_Connection= Nothing
Response.Redirect "menu_edit.asp"
%>
Avatar billede eagleeye Praktikant
13. september 2004 - 16:53 #22
Har du også rette som beskrevet i filen RTE_message_form_inc.asp  ?

Det skal rette denne linje:
Response.Write(vbCrLf & "                //Create an iframe and turn on the design mode for it" & _
vbCrLf & "                document.write ('<iframe id=""message"" src=""RTE_textbox.asp?noCache=" & CInt(RND * 2000) & """ width=""100%"" height=""250px"" onMouseOver=""hideColourPallete()""></iframe>')")


Så linjen bliver til:

Response.Write(vbCrLf & "                //Create an iframe and turn on the design mode for it" & _
vbCrLf & "                document.write ('<iframe id=""message"" src=""RTE_textbox.asp?noCache=" & CInt(RND * 2000) & "&id=" & request("id") & """ width=""100%"" height=""250px"" onMouseOver=""hideColourPallete()""></iframe>')")



Det kræver så ID bliver overfør til den side hvor du includer editoren. xx.asp?id=33
Avatar billede eagleeye Praktikant
13. september 2004 - 16:54 #23
men det ser da ud til at virke hvis man trykker på dit link, eller?
Avatar billede -l_jogge_l- Nybegynder
14. september 2004 - 00:37 #24
Ja... man kan godt hente data IND i Editoren, men ikke gemme... så kommer der en fejl!
Avatar billede -l_jogge_l- Nybegynder
14. september 2004 - 15:53 #25
Kan du ikke hjælpe mig?
Avatar billede eagleeye Praktikant
14. september 2004 - 17:16 #26
Måske hvad får du af fejl?
Avatar billede -l_jogge_l- Nybegynder
14. september 2004 - 23:06 #27
Avatar billede -l_jogge_l- Nybegynder
14. september 2004 - 23:08 #28
Så trykker du bare på submit form, og så skulle den gemme den i DB'en!
Avatar billede eagleeye Praktikant
14. september 2004 - 23:09 #29
Ok den fejl betyder typisk den ikke kan finde database filen i den angivne folder i connection strengen.
Avatar billede eagleeye Praktikant
14. september 2004 - 23:09 #30
Så prøv at tjekke at den er rigtigt, at der ikke er nogle ../ formeget.
Avatar billede -l_jogge_l- Nybegynder
14. september 2004 - 23:19 #31
Det er der ikke!
Avatar billede -l_jogge_l- Nybegynder
14. september 2004 - 23:22 #32
Jeg har både prøvet at tilføje og slette nogen "../".... uden held!
Avatar billede eagleeye Praktikant
14. september 2004 - 23:25 #33
Den skal passe til det hvor filen ligger. Hvor ligger database filen i forhold roden så kan man skrivern nemlig skrive det sådan: Server.Mappath("/folder1/db.mdb")
Avatar billede -l_jogge_l- Nybegynder
14. september 2004 - 23:27 #34
den ligger i et bibliotek der hedder cgi-data
Avatar billede eagleeye Praktikant
14. september 2004 - 23:29 #35
ok men den teskt du har kommer den ikke fra en database?
Så kan du jo evt prøve at bruge den connection string.
Avatar billede -l_jogge_l- Nybegynder
14. september 2004 - 23:30 #36
rod
  cgi-data
  Databasen
  doc
      admin
      texteditor
      asp-filen
Avatar billede eagleeye Praktikant
14. september 2004 - 23:30 #37
Så kan du prøve at angive stilen som:

Server.Mappath("/cgi-data/databasenavn.mdb")
Avatar billede -l_jogge_l- Nybegynder
14. september 2004 - 23:32 #38
ADO_Connection.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../../cgi-data/db.mdb")
Avatar billede eagleeye Praktikant
14. september 2004 - 23:33 #39
Prøv sådan her:

ADO_Connection.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("/cgi-data/db.mdb")
Avatar billede -l_jogge_l- Nybegynder
14. september 2004 - 23:39 #40
Ok... men den ander virker fint når den skal hente!
Avatar billede eagleeye Praktikant
14. september 2004 - 23:41 #41
Det kan være ASP filerne ikke ligger i samme folder?
Avatar billede -l_jogge_l- Nybegynder
14. september 2004 - 23:48 #42
Kommer med denne her:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key 'Temporary (volatile) Jet DSN for process 0x5f0 Thread 0x260 DBC 0x81afffc Jet'.

/admin/texteditor/display_message.asp, line 70
Avatar billede -l_jogge_l- Nybegynder
14. september 2004 - 23:50 #43
<%Dim ADO_Connection
Dim rsEditPage
Dim SQL_STRING
Dim EditPage

EditPage = CLng(Request.QueryString("ID"))
set ADO_Connection = server.Createobject("ADODB.Connection")
ADO_Connection.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & ("/cgi-data/db.mdb")
Set rsEditPage= Server.CreateObject("ADODB.Recordset")

SQL_STRING= "SELECT page.text FROM page WHERE ID=" & Editpage

rsEditPage.LockType = 3
rsEditPage.Open SQL_STRING, ADO_Connection

rsEditPage.Fields("text") = strMessage

rsEditPage.Update
rsEditPage.Close

Set rsEditPage= Nothing

Set ADO_Connection= Nothing
Response.Redirect "menu_edit.asp"
%>
Avatar billede eagleeye Praktikant
14. september 2004 - 23:52 #44
der manger Server.Mappath i linje så prøv at rete denne:
ADO_Connection.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & ("/cgi-data/db.mdb")

Til dette:

ADO_Connection.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.Mappath("/cgi-data/db.mdb")
Avatar billede -l_jogge_l- Nybegynder
14. september 2004 - 23:55 #45
Det er det samme!
Avatar billede eagleeye Praktikant
15. september 2004 - 00:02 #46
Så brug den connection string som virker eller vis den her.
Avatar billede -l_jogge_l- Nybegynder
15. september 2004 - 00:20 #47
<%Dim ADO_Connection
Dim SQL_STRING
Dim rsEditor
Dim TextStreng

TextStreng = Request.QueryString("ID")
set ADO_Connection = server.Createobject("ADODB.Connection")
ADO_Connection.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../../cgi-data/db.mdb")
Set rsEditor= Server.CreateObject("ADODB.Recordset")
SQL_STRING= "SELECT * FROM PAGE WHERE ID=" & TextStreng
rsEditor.open SQL_String, ADO_Connection%>

<%if not rsEditor.EOF then
  Response.write rsEditor("text")
end if
rsEditor.Close
%>
Avatar billede -l_jogge_l- Nybegynder
15. september 2004 - 08:21 #48
Jeg vil gerne evt maile dig det hele... så kan du se at det er rigtigt nok!
Avatar billede -l_jogge_l- Nybegynder
15. september 2004 - 15:35 #49
Avatar billede eagleeye Praktikant
15. september 2004 - 17:08 #50
Hvad har du gang i???

Jeg har besværet dit sprøgsmål om hvordan du får teksten ind i editoren og prøvet at hjælp med at f det andet til at virke men er altså ikke online 24 timer i døgnet!

Vil du levere point eller anmelder jeg dig.
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