Avatar billede Kim Johansen Nybegynder
19. juli 2003 - 18:21 Der er 20 kommentarer og
1 løsning

gæstebog i Flash.

jeg sidder med en kunde som gerne vil have en gæstebog. kunden vil gerne have lavet den i flash. hvordan gør jeg??

jeg havde tænkt på at gæstebogen skulle laves med flash, asp og access database.

gæstebogen skal indeholde:

navn
Mail
WWW
Besked

gæstebogen må også gerne kunne skrive ÆØÅæøå og div. tegn

jeg giver 110 point til en som enten kan lave et udførligt tutorial som alle kan finde ud af eller laver den for mig

skriv til mig på msn ( kjwebdesign@hotmail.dk )
hvis du vil have mere at vide omkring hvad gæstebogen skal kunne.

MVH Kim Johansen
Avatar billede hashkagen Nybegynder
19. juli 2003 - 18:27 #1
faktisk er der en side der hedder flash 4 free eller flash 4 u eller sådan noget mener at de havde nogle faqs om det,
måske skulle du prøve at søge efter dem ik? :-)
Avatar billede Kim Johansen Nybegynder
19. juli 2003 - 18:48 #2
1.) flash4u har ikke nogen faq omkring gæstebøger
2.) flash4free eksistere ikke eller ikke endnu i hvert fald.
Avatar billede alexander_j Nybegynder
20. juli 2003 - 15:17 #3
Jeg vil foreslå dig bare at bruge en almindelig textfil('guestbook.txt') til at gemme gæstebogen i - medmindre I forstiller jer at gæstebogen bliver fyldt med mange mange tusinde tegn!

ASP-delen:
Til at læse i gæstebogen laver du en aspfil der hedder 'readguestbook.asp' med følgende kode:
<%
Dim fso, f, filespec
Set fso = Server.CreateObject("Scripting.FileSystemObject")
filespec = Server.Mappath("../dindatamappe/guestbook.txt")
Set f = fso.OpenTextFile(filespec,1)
Response.write f.ReadLine
f.Close
%>

Til at skrive i gæstebogen laver du en aspfil der hedder 'writeguestbook.asp' med følgende kode:
<%
Dim fso, f, filespec
Set fso = Server.CreateObject("Scripting.FileSystemObject")
filespec = Server.Mappath("../dindatamappe/guestbook.txt")
Set f = fso.OpenTextFile(filespec,2)
f.WriteLine "tekst=" & request("tekst")
f.Close
Response.Write "success=true"
%>

Flash-delen:
For at hente teksten ind i flash laves et textfield med instancename 'dittextfield' og i samme frame ligges actionscriptkoden:
loadtext = new LoadVars();
loadtext.sendAndLoad("readguestbook.asp", loadtext, "POST");
loadtext.onLoad=function(success){
    if(success) {
        dittextfield.text=loadtext.tekst;
    }
}
For at gemme ny tekst via flash laves der 4 inputfields med instancename 'navn','mail', 'www' og 'besked':
Der Laves desuden en knap med koden:
savetext = new LoadVars();
savetext.tekst=loadtext.tekst+"\n"+navn.text+"\n"+mail.text+"\n"+besked.text;
savetext.sendAndLoad("writeguestbook.asp", savetext, "POST");
savetext.onLoad=function(success){
    if(success) {
        gotoAndStop(?);
    }
}

Det er ikke efterprøvet, så måske er der fejl, men det grundlæggende skulle være iorden ;)

/Alexander

Ps. spørgsmålet har været oppe et par gange før, men de fleste tutorials(i hvert fald dem på dansk) er forsvundet fra nettet!
Hvis du ikke kan få ovenstående til at virke, så prøv følgende link: http://www.flashkit.com/search.php?term=guestbook&per=10&cat=tutorials&page=1
Avatar billede Kim Johansen Nybegynder
20. juli 2003 - 16:51 #4
jeg takker vil lige afprøve den og så vende tilbage....men hvor kommer alt det med tegn og ÆØÅæøå hvor bliver det afviklet??
og hvis nu at der er mange der skriver i gæstebogen bliver de forskællige indlæg så delt op?? og hvis der er mange hvordan laver man så en scroler? eller kommer den af sig selv?
Avatar billede alexander_j Nybegynder
20. juli 2003 - 17:14 #5
En gæstebog er vel bare en tagwall! Det den kode jeg her har skitseret gør er at skrive eller læse en variabel til/fra en textfil, hvor alle data til gæstebogen ligger i!
Textfilen starter derfor med at hedde noget i retning af:
'tekst=navn\nnavn@mail.dk\nhttp://www.minhjemmeside.dk\nbesked'
I princippet er der ingen grund til at lade en asp-fil læse textfilen, det kan flash faktisk selv via loadvariable - jeg ved ikke helt hvorfor jeg har tillagt mig den vane!
Layoutmæssigt er der ikke tænkt på andet end linieskift i koden - Du kan eventuelt lade dit textfield understøtte HTML og lave lidt htmltags og du bliver nok nød til at lave en scrollbar!

For at vise/skrive æøå korrekt skal man i starten af sin flashfilm skrive koden:
System.useCodepage = true;

Når du efterprøver 'min' kode, så prøv at gøre det simpelt - Hvis du er begynder i flash, så start med at lære at sende og modtage data mellem flash og asp(og hvis din kunde er utålmodig, så kontakt en pro/semipro under opgaver her på eksperten) - og hvis du er godt på vej i flash og asp, så skulle det ikke være det helt store problem bagefter at indstille din gæstebog efter kundens ønsker!
Avatar billede jakwag Nybegynder
21. juli 2003 - 11:26 #6
alexander_j > undskyld jeg blander mig, men dette er præcis hvad jeg lige stod og manglede. Når man tester dit script, skal man så køre det fra en server eller kan man få det til at virke lokalt på en almindelig windows 2000 PC?

: ) Jakob
Avatar billede Kim Johansen Nybegynder
21. juli 2003 - 12:01 #7
jeg har testet scriptet nu og det virker ikke. jeg har gjort præcis som der står og jeg kan ikke få det til at virke. jeg har testet det på en server.

:( Kim Johansen
Avatar billede alexander_j Nybegynder
21. juli 2003 - 13:35 #8
Så bliver jeg vel nød til selv at efterprøve mit script (og rette eventuelle fejl)! Engang i aften skulle jeg ha' tid - så tjek igen ved 10-11-tiden!
Jakwag skal det være på server der understøtter asp(kan gøres via w2k's IIS)!
Avatar billede alexander_j Nybegynder
21. juli 2003 - 20:20 #9
Se den virke her: http://www.vestermarie-skole.dk/guestbook.html

1. asp-fil 1 med navnet 'readguestbook.asp'
<%
Dim fso, f, filespec
Set fso = Server.CreateObject("Scripting.FileSystemObject")
filespec = Server.Mappath("../dindatabasemappe/guestbook.txt")
Set f = fso.OpenTextFile(filespec,1)
Response.write f.ReadLine
f.Close
%>

2. asp-fil 2 med navnet 'writeguestbook.asp'
<%
Dim fso, f, filespec
Set fso = Server.CreateObject("Scripting.FileSystemObject")
filespec = Server.Mappath("../dindatabasemappe/guestbook.txt")
Set f = fso.OpenTextFile(filespec,2)
f.WriteLine "tekst=" & request("tekst")
f.Close
Response.Write "success=true"
%>

3. tom textfil med navnet 'guestbook.txt' placeres i dindatabasemappe

4. i flash oprettes to frame:
  a. i frame 1 laves et dynamisk textfield med instancename 'tf' og en knap med koden:
on (release) {
    gotoAndStop(2);
}
  b. i frame 1 ligges desuden koden:
loadtext = new LoadVars();
loadtext.load("readguestbook.asp?random="+random(1000000), loadtext, "POST");
loadtext.onLoad=function(success){
    if(success) {
        _root.tekst=loadtext.tekst;
        tf.htmlText=_root.tekst;
    }
}
stop();
  c. i frame 2 oprettes 4 input textfields med instancename(-ene) 'name' 'email' 'www' og 'message'
  d. i frame to laves desuden en knap med koden:
on (release) {
    loadtext = new LoadVars();
    loadtext.tekst = "<b>"+name.text+"<br>"+email.text+"<br>"+www.text+"</b><br>"+message.text+"<br>- - - - - - - - - -<br>"+_root.tekst;
    loadtext.sendAndLoad("writeguestbook.asp", loadtext, "POST");
    loadtext.onLoad=function(success){
        if(success) {
            gotoAndStop(1);
        }
    }
}

Så sku' den være hjemme - ikke specielt langt fra det jeg skitserede tidligere!

/Alexander
Avatar billede alexander_j Nybegynder
21. juli 2003 - 20:22 #10
tilføjelse til punkt 4.a. - husk at markere 'render as HTML'-knappen!
Avatar billede onkelmor Nybegynder
22. juli 2003 - 11:29 #11
Kan man redigere i den? Fjerne indlæg og så'n.. Kan man lave en smart GetUrl på text feltet www?
Avatar billede alexander_j Nybegynder
22. juli 2003 - 13:24 #12
ja til geturl og redigering kan eventuelt ske direkte i tekstfilen
Avatar billede onkelmor Nybegynder
22. juli 2003 - 13:58 #13
Cool.. Ja men jeg tænkte på om man ikke kunne lægge en usynlig knap hen over www tekstfeltet og give den et script
on (release) {
getURL(www, "_blank");

noget lignende? Kan det ikk lade sig gøre?

Onkelmor.dk :)
Avatar billede alexander_j Nybegynder
22. juli 2003 - 16:50 #14
Feltet er et dynamic textfield med renderer html1 - så  det kan gøres direkte i teksten! Der hvor der står '+www.text+' skal der i stedet stå noget alá:
'+"<a href='http://"+www.text+"'>"+www.text+"</a>"+', så virker det hvis folk holder sig til formen 'www.minhjemmeside.dk'
Og man kan da gøre noget tilsvarende for mail!

kim -> kan du få det til at virke?
Avatar billede Kim Johansen Nybegynder
22. juli 2003 - 17:02 #15
jeg har ikke afprøvet det endnu...har dsv. ikke haft tid. men afprøver den i dag.....men når jeg nu får den lavet, kan man så hurtigt lave det om så det bliver gemt i en Access db fil? for det har jeg hørt skulle være bedre.

MVH Kim Johansen
Avatar billede Kim Johansen Nybegynder
22. juli 2003 - 17:40 #16
har lige nogle flere spørgsmål efter jeg nu har kigget på
http://www.vestermarie-skole.dk/guestbook.html

Kan man i stedet for (----------) lave en billedfil (altså noget grafisk) som vises imellem hver besked.?

og hvordan laver man en scroler i flash? har aldrig skulle bruge en så jeg har ikke lært det endnu.

MVH Kim Johansen
Avatar billede alexander_j Nybegynder
22. juli 2003 - 18:06 #17
kim --> ang. access eller ej, så har jeg hørt det modsatte - access skulle være væsenligt langsommere - jeg bruger meget sjældent access - faktisk kun når der er krav om søgning i data!
Det kan vel nemt lade sig gøre du skal bare lade din 'readguestbook.asp'-fil hente alle poster fra din accessdatabase og lade din 'writeguestbook.asp'-fil skrive en ny post i din accessdatabase!

Nej desværre er det ikke umiddelbart muligt at udskifte '----------' med noget grafisk, da flash's html ikke understøtter billeder, men det er muligt at udskifte det med andre tegn - fx '\/\/\/\/\/\/\/\/' eller '__________'!

Den scroller der er på siden er blot taget fra flash mx's components - man hiver bare scrollbaren ud fra components og giver slip over det dynamiske textfield!
Avatar billede onkelmor Nybegynder
22. juli 2003 - 21:05 #18
Cool.. Taaark :D
Avatar billede Kim Johansen Nybegynder
22. juli 2003 - 23:06 #19
nu har jeg prøvet den og den virker som den skal.
det er bare lidt surt at man ikke kan bruge grafiske elementer til at dele teksten op. hvis nu der er nogen som ikke mener det samme så skriv endelig for det kunne være fedt hvis det kan lade sig gøre.

i kan se den her
http://www.kims-webdesign.dk/Gbog/Gbog.html

jeg kan ikke finde ud af det med <a href . hvis der er nogen som kan guide mig igennem så det kommer til at virke ville det være lækkert.

takker alexander
Avatar billede alexander_j Nybegynder
23. juli 2003 - 00:34 #20
I forhold til det grafiske kunne du eventuelt bruge en htmltag til at skifte farve på skiftestregen:
'<font color='#0000FF'>\_/\_/\_/\_/\_/\_/</font>' (blå)
Alternativt kunne du måske få glæde af andre symbols som ligger i din font i forvejen - eller du kunne designe din egen font som så havde de rette grafiske elementer! (i min chat på www.vestermarie-skole.dk har jeg netop designet min egen font for at få smileys med)

Angående det med linket så gælder det om at få outputtet til at være noget alá det her: <a href='http://www.eksperten.dk'>Eksperten</a> Prøv at se din egen gæstebog der har jeg tastet hele ovenstående tag ind i webadresse!

For at få det til at ske automatisk, så skal vi eftersom folk selv taster 'www.eksperten.dk' ind, så blot sætte det sammen som en html tag - dvs.:
"<a href='http://" + variabel + "'>" + variabel + "</a>"

variabel skal udskiftes med www.text i vores kode!

Tak for point!
Avatar billede larsholmgaard_dk Nybegynder
14. august 2003 - 14:24 #21
I kan se endnu et eksempel på en gæstebog i flash/php på mit site www.larsholmgaard.dk
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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