Avatar billede hans01 Nybegynder
30. marts 2007 - 18:09 Der er 18 kommentarer og
1 løsning

Formmail/CGI

Jeg har leget lidt med en formmail i flash men kan ikke rigtigt få fen til at virker.

on (release) {
    getURL("http://www.hostedscripts.dk/formmail/formmail.php", "lower", "POST");
}
on (release) {
    gotoAndPlay(2);
}

submit ser sådan ud men hvor skal jeg putte Uid og value ind for at få den til at spille
Avatar billede maqhem Nybegynder
30. marts 2007 - 18:17 #1
Du skal ikke benytte getURL men LoadVars:

var lv:LoadVars = new LoadVars();
lv.uid = "noget...";
lv.onLoad = function() {
    // Hvad skal der mon ske, når mailen er sendt...?
}
lv.send("http://www.hostedscripts.dk/formmail/formmail.php", "_self", "POST"); // Eller "GET" i stedet for "POST"
Avatar billede hans01 Nybegynder
30. marts 2007 - 18:30 #2
Hej maghem

Tak for det hurtige svar, jeg har prøvet men får 4 fejl
**Error** Scene=Scene 1, layer=Input, frame=1:Line 2: Wrong number of parameters; getURL requires between 1 and 3.
        getURL("http://www.hostedscripts.dk/formmail/formmail.php", "uid", "6772", "lower", "POST");

Total ActionScript Errors: 1     Reported Errors: 1

**Error** Scene=Scene 1, layer=Input, frame=1:Line 1: Statement must appear within on handler
    var lv:LoadVars = new LoadVars();

**Error** Scene=Scene 1, layer=Input, frame=1:Line 2: Statement must appear within on handler
    lv.uid = "6762";

**Error** Scene=Scene 1, layer=Input, frame=1:Line 3: Statement must appear within on handler
    lv.onLoad = function() {

**Error** Scene=Scene 1, layer=Input, frame=1:Line 6: Statement must appear within on handler
    lv.send("http://www.hostedscripts.dk/formmail/formmail.php", "_self", "POST");

Total ActionScript Errors: 4     Reported Errors: 4

**Error** Scene=Scene 1, layer=Input, frame=1:Line 1: Statement must appear within on handler
    var lv:LoadVars = new LoadVars();

**Error** Scene=Scene 1, layer=Input, frame=1:Line 2: Statement must appear within on handler
    lv.uid = "6762";

**Error** Scene=Scene 1, layer=Input, frame=1:Line 3: Statement must appear within on handler
    lv.onLoad = function() {

**Error** Scene=Scene 1, layer=Input, frame=1:Line 6: Statement must appear within on handler
    lv.send("http://www.hostedscripts.dk/formmail/formmail.php", "_self", "POST");

Total ActionScript Errors: 4     Reported Errors: 4
Avatar billede maqhem Nybegynder
30. marts 2007 - 18:41 #3
Du har åbenbart stadig din getURL. Fjern den. Desuden skal alt anden selvfølgelig stå inden i en on(release) {bla, bla} som dit første script :)
Avatar billede hans01 Nybegynder
30. marts 2007 - 18:45 #4
prøver!
Avatar billede hans01 Nybegynder
30. marts 2007 - 18:48 #5
så ser det sådan ud, jeg tror det virker
on (release) {
var lv:LoadVars = new LoadVars();
lv.uid = "6772";
lv.onLoad = function() {
    // Hvad skal der mon ske, når mailen er sendt...?
}
lv.send("http://www.hostedscripts.dk/formmail/formmail.php", "_self", "POST");
}
on (release) {
    gotoAndPlay(2);
}
Avatar billede maqhem Nybegynder
30. marts 2007 - 19:05 #6
Det er lidt primitivt at proppe samme handling ind under to identiske kald:

on (release) {
    var lv:LoadVars = new LoadVars();
    lv.uid = "6772";
    lv.onLoad = function() {
        // Hvad skal der mon ske, når mailen er sendt...?
    }
    lv.send("http://www.hostedscripts.dk/formmail/formmail.php", "_self", "POST");
    gotoAndPlay(2);
}
Avatar billede maqhem Nybegynder
30. marts 2007 - 19:06 #7
Men jeg tror, jeg ville proppe framespringet ind under onLoaden:

on (release) {
    var lv:LoadVars = new LoadVars();
    lv.uid = "6772";
    lv.onLoad = function() {
        gotoAndPlay(2);
    }
    lv.send("http://www.hostedscripts.dk/formmail/formmail.php", "_self", "POST");
}
Avatar billede hans01 Nybegynder
30. marts 2007 - 19:09 #8
Det er nok en bedre ide, nu venter jeg sådan set bare på at få noget retur.
Avatar billede hans01 Nybegynder
30. marts 2007 - 19:17 #9
Ja det gik vist lidt stærkt, jeg er nu ikke sikker på det spiller. scriptet er lagt på submit knappen, men jeg har også et action lag med

mailuser = "#.com";
targetpage = "http://#.html";
stop();

Kan det lave knuder? jeg er sådan set ikke den store ørn, derfor primitivt!smil
Avatar billede maqhem Nybegynder
30. marts 2007 - 19:40 #10
Burde ikke have noget at sige, men jeg kunne formode, at deres formmail ikke modtager al korrekt data, og eventuelt på en forkert måde. Men det ved jeg ikke noget om.
Avatar billede hans01 Nybegynder
30. marts 2007 - 19:50 #11
Jeg roder lidt med at få variablerne med altså NAVN: Email, og kommentarer jeg skal formodentlig oprette dem som variabler og når jeg submitter kommer disse med. arbejder stadigt på en løsning, ryger en masse, og drikker vin, men skal nok få den op og spille.
Avatar billede hans01 Nybegynder
30. marts 2007 - 20:04 #12
Jeg modtager denne meldning

Feltet "from" blev ikke udfyldt/fundet. Dette felt er er påkrævet, for at denne service fra hostedscripts.dk skal virke! Kontakt venligst webmasterren for denne side for at få løst problemet.
Avatar billede maqhem Nybegynder
30. marts 2007 - 20:07 #13
Nemlig. Du skal indikere from. Måske lv.from = "dig@noget.dk";
Avatar billede hans01 Nybegynder
30. marts 2007 - 20:29 #14
så er der hul igennem, smid lige et svar for de fortjente points, nu skal jeg bare lige løse det med at få informationerne igennem fra formularen, hav en god fredag....
Avatar billede maqhem Nybegynder
30. marts 2007 - 20:37 #15
Jo tak i lige måde da, god weekend :)
Avatar billede hans01 Nybegynder
31. marts 2007 - 17:10 #16
jeg har prøvet hele dagern at få de der variabler fra formularen med uden held, er der nogen med et lille tip?
Avatar billede maqhem Nybegynder
31. marts 2007 - 18:15 #17
Tip? Nærmere råd: Send til din egen server i stedet for. Så bestemmer du helt selv, hvordan dine requests og scripts skal se ud.

Du kan jo copy-paste dette php-script:

<?php
    $til = $_POST['til'];
    $fra = $_POST['fra'];
    $emne = $_POST['emne'];
    $besked = $_POST['besked'];
    echo "output=";
    if(mail($til, $emne, $besked, "From: $fra")) {
        echo "true";
    } else {
        echo "false";
    }
?>

Og til Flash:

var sendMail:LoadVars = new LoadVars();
sendMail.til = "mig@min_mail.dk";
sendMail.fra = "dig@din_mail.dk";
sendMail.emne = "Lige en lille hilsen.";
sendMail.besked = "Hej med dig.\n\nHer er lige en lille hilsen fra en gammel ven.\n\nVi ses.";
sendMail.onLoad = function(success) {
    if(success && sendMail.output == "true) {
        trace("Mailen blev sendt korrekt.");
    } else {
        trace("Der skete en fejl...");
    }
}
sendMail.sendAndLoad("http://www.din_side.dk/dit_php_script.php", sendMail, "POST");

Så skal du bare lægge dit php-script ud på din server.
Har du ikke sådan én, så køb dig én på en af følgende:

www.one.com
www.speednames.com
www.cliche.dk
www.dandomain.dk
www.web10.dk

Eller få dig et gratis subdomain hos én af følgende:

www.webbyen.dk
www.frac.dk
www.frip.dk
www.hotserv.dk
www.1go.dk
Avatar billede maqhem Nybegynder
31. marts 2007 - 18:18 #18
Der mangler lige et anførselstegn efter true i linje 7 :)
Avatar billede hans01 Nybegynder
31. marts 2007 - 18:53 #19
Ja det var sådan set også det jeg mere eller mindre have besluttet mig til altså et php drevet formular, frac er kun et jeg tester på. jeg klemmer lige på
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