PDA

Volledige versie bekijken : Mailform probleem


Fatty Owl
%Europe/Berlin %546 %2005, 13:06
Ik ben bezig met een mailform te maken, maar er werkt iets niet...(ik heb dit bereikt dmv de zoekfunctie en de flash help, en een tutorial)
Mijn actionscript: var lv:LoadVars = new LoadVars();
lv.Name = Name;
lv.Email = Email;
lv.Message = Message;
lv.sendAndLoad("Mailform.php", int(Math.random()*100000), "POST");
lv.onLoad = function(succes) {
if (succes) {
output.text = "Your message has been sended";
} else {
output.text = "An error has been occured.";
}
};
En mijn php:<?php
$to = "Kobevrancken@hotmail.com";
$subject = "FattyOwl.be";
$bericht = $_POST['Message'] ;
$header = "From: " . $_POST['Name'] . " <" . $_POST['Email'] . ">\n";
$header .= "Reply-To: " . $_POST['Name'] . " <" . $_POST['Email'] . ">\n";
$header .= "X-Priority: 1";
mail ($to, $subject, $bericht, $header);
?>
//edit ik weet niet of het probleem in de php of in de as zit, dus post ik het in het AS forum :)

Roenes
%Europe/Berlin %549 %2005, 13:11
deze regel is zoiezo fout:lv.sendAndLoad("Mailform.php", int(Math.random()*100000), "POST");Dit moet worden:lv.sendAndLoad("Mailform.php?" + int(Math.random()*100000), lv, "POST");Voor de rest zie ik zo snel geen fouten. Test dit eerst maar eens, mocht het niet werken dan zoeken we daarna verder :)

Fatty Owl
%Europe/Berlin %556 %2005, 13:21
thx; Nu komt er in output your message has been sended, dus dat werkt al veronderstel ik? Alleen krijg ik nog geen mailtje in mijn inbox.Of duurt dit altijd lang :)
ik heb die int(random) enzo+ het vraagteken weggelaten omdat hij dan Mailform.php?eennummer probeerde te openen...en die bestaat niet :).

Doc
%Europe/Berlin %560 %2005, 13:27
volgens mij moet je ff wat in je PHP code veranderen:
$header .=

moet
$header.= zijn. Aan elkaar dus.

Bowlingmar
%Europe/Berlin %562 %2005, 13:29
Ik kan je niet helpen ivm php of AS, maar wel met Engels. Volgens mij moet het zijn : " "Your message has been sent".

Roenes
%Europe/Berlin %565 %2005, 13:33
Spatie tussen de var en de operator maakt niets uit. Dat de mail niet aankomt kan aan 3 dingen liggen:
1) je form werkt niet
2) je server ondersteund geen email
3) je mail duurt ff voor ie aankomt

Kijk ook even bij ongewenste post of ie daar niet aankomt en check ff of je server wel een mailserver heeft :)

Fatty Owl
%Europe/Berlin %565 %2005, 13:34
volgens mij moet je ff wat in je PHP code veranderen:
$header .=

moet
$header.= zijn. Aan elkaar dus.
thx, maar dan werkt het nog niet :(

@bowlingmar thx voor de verbetering :)

Fatty Owl
%Europe/Berlin %566 %2005, 13:36
Spatie tussen de var en de operator maakt niets uit. Dat de mail niet aankomt kan aan 3 dingen liggen:
1) je form werkt niet
2) je server ondersteund geen email
3) je mail duurt ff voor ie aankomt

Kijk ook even bij ongewenste post of ie daar niet aankomt en check ff of je server wel een mailserver heeft :)
Kan ik dit niet offline testen? want ik test dit in flash?. (oh ja het komt niet in ongewenst)

Fatty Owl
%Europe/Berlin %572 %2005, 13:44
owk mijn host ondersteund geen php :(

toch bedankt!

Thierry
%Europe/Berlin %790 %2005, 18:58
Ik kan je niet helpen ivm php of AS, maar wel met Engels. Volgens mij moet het zijn : " "Your message has been sent".

Als we dan toch gaan mierenneuken... Het moet ook zijn "An error has occured." en niet "An error has been occured.". ;)

Bowlingmar
%Europe/Berlin %795 %2005, 19:05
Oow dat had ik niet eens gelezen :) Maar je hebt gelijk!:)
Trouwes...Mierenneuken is dat niet hé...is eerder iemand helpen om iets professioneler over te komen.

Fatty Owl
%Europe/Berlin %811 %2005, 19:27
Als we dan toch gaan mierenneuken... Het moet ook zijn "An error has occured." en niet "An error has been occured.". ;)
thx :) mijn engels is niet zoo geweldig :)

Cowerd
%Europe/Berlin %818 %2005, 19:38
ik heb tijdelijk geen beschikbare server, maar misschien kan je iemadn heel ief aankijken of diegene je php-tje wilt oploaden:D en dan in je AS gewoon de url invoegen:)

pulletje
%Europe/Berlin %576 %2005, 13:50
@fattyowl, als je wilt kan dat phptje bij mij d'r op.. ik heb nog ruimte ZAT.. Laat maar horen

Fatty Owl
%Europe/Berlin %581 %2005, 13:57
thhxxx :) hij zit in de bijlage:) geef je dan de url :)


Je moet je reputatiepunten verdelen over andere gebruikers voordat je pulletje opnieuw punten kan geven. :(:p

Cowerd
%Europe/Berlin %591 %2005, 14:11
hehe;)

Fatty Owl
%Europe/Berlin %702 %2005, 16:52
ik heb het nu gedaan, maar nu krijg ik nog altijd: An error has occured... (de swf staat op www.fattyowl.be) Ik heb nu: output.text = "";
var Name:String = input.text;
var Email:String = input2.text;
var Message:String = input3.text;
if (Name == "" || Name == "<fill in your name>") {
output.text = "Fill in your name, please";
} else if (Email == "" || Email == "<fill in your e-mail adress>") {
output.text = "Fill in your e-mail adress, please";
} else if (Message == "" || Message == "<fill in your message>") {
output.text = "Fill in your message, please";
} else {
output.text = "Sending the message...";
var lv:LoadVars = new LoadVars();
lv.Name = Name;
lv.Email = Email;
lv.Message = Message;
lv.sendAndLoad("http://www.pulletje.nl/Fattyowl/Mailform.php", lv, "POST");
lv.onLoad = function(succes) {
if (succes) {
output.text = "Your message has been sent";
} else {
output.text = "An error has occured...";
}
};
trace(lv);
input.text = "";
input2.text = "";
input3.text = "";
}
en php bestand hetzelfde als hierboven
hier zitten geen errors in , ga maar eens naar http://www.pulletje.nl/Fattyowl/Mailform.php . normaal zou je dan een error zien (als er errors zouden zijn) maar die zie je niet :)

nogmaals dank aan pulletje :)

Fatty Owl
%Europe/Berlin %780 %2005, 18:44
hij werkt :)

thx again pulletje :)

pulletje
%Europe/Berlin %784 %2005, 18:50
mooi zo!

njuwdaij
%Europe/Berlin %857 %2005, 20:34
Pulletje of Fatty Owl,

Ik probeer met deze post mijn mailform aan de praat te krijgen, maar op een of andere manier werkt het helemaal niet. Geen foutmeldingen, niks van dat. Er gebeurt gewoon niks.
Kunnen jullie me helpen? De XXXXX-en zijn natuurlijk normaliter het domein.

Op dit moment heb ik geen idee of de server .php verwerkt, maar dan zou ik in ieder geval een foutmelding moeten krijgen op het Action Script toch? De "var" van de velden staan goed.

DANK!

Mijn AS (mis ik daar het begin misschien?) :#
--------------------------
output.text = "";
var Name:String = t1.text;
var Email:String = t2.text;
var Phone:String = t3.text;
var Message:String = t4.text;
if (Name == "" || Name == "<fill in your name>") {
output.text = "Fill in your name, please";
} else if (Email == "" || Email == "<fill in your e-mail adress>") {
output.text = "Fill in your e-mail adress, please";
} else if (Message == "" || Message == "<fill in your message>") {
output.text = "Fill in your message, please";
} else {
output.text = "Sending the message...";
var lv:LoadVars = new LoadVars();
lv.Name = Name;
lv.Email = Email;
lv.Phone = Phone;
lv.Message = Message;
lv.sendAndLoad("http://www.XXXXXX.com/mailform.php", lv, "POST");
lv.onLoad = function(succes) {
if (succes) {
output.text = "Uw bericht is verzonden.";
} else {
output.text = "U heeft één of meerdere velden niet (juist) ingevuld.";
}
};
trace(lv);
t1.text = "";
t2.text = "";
t3.text = "";
t4.text = "";
}
-------------------------

Mijn PHP:
--------------------------
<?php
$to = "XXXXX@tiscali.nl";
$subject= "mail van XXXX";
$bericht= $_POST['Message'] ;
$header= "From: " . $_POST['Name'] . " <" . $_POST['Email'] . ">\n";
$header.= "Reply-To: " . $_POST['Name'] . " <" . $_POST['Email'] . ">\n";
$header.= "X-Priority: 1";
mail ($to, $subject, $bericht, $header);
?>
--------------------------

pulletje
%Europe/Berlin %957 %2005, 22:58
bij dit actionscript gebruik je geen 'VARS'. je moet de instance namen van de tekstvelden invullen m.a.w. klik op je naam veld, dit moet input zijn en de instancename moet t1 zijn. voor je email moet dit t2 zijn enz... verder kun je kijken of je provider/server php ondersteund probeer maar een de link naar jouw php bestand in te tikken in de adresbalk. je kunt ook gewoon op de site van je provider/server kijken. Met het script lijkt me verder niks fout aangezien je dat gewoon van FO hebt gekopieerd.....

Fatty Owl
%Europe/Berlin %566 %2005, 13:36
in de php zet je geen telefoonnummer erbij :)

pulletje
%Europe/Berlin %975 %2005, 23:24
in de php zet je geen telefoonnummer erbij :)
WAT? he FO hoeveel heb jij gedronken?

dicespark
%Europe/Berlin %813 %2005, 19:31
Yo FattyOwl,

goed dat het je gelukt is....

ZOu je misschien je FLA + php hier kunnen delen? zou mooi zijn....veel mensen zijn hiernaar op zoek denkik!

njuwdaij
%Europe/Berlin %763 %2005, 18:19
Ja, dat zou ik ook heel erg fijn vinden. Is dat mogelijk?
:)

Fatty Owl
%Europe/Berlin %797 %2005, 19:08
nee, als ik die online zet gaan veel mensen dit gewoon kopiëren, gebruik een tutorial :)
@pulletje ik bedoel dat hij het telefoonnummer niet opvraagd in de php maar wel in AS

njuwdaij
%Europe/Berlin %805 %2005, 19:20
Mag ik je vragen waarom je zelf wel antwoord en hulp wilt op je eigen vragen, maar als iemand anders er niet uitkomt en wil leren van wat je hebt gemaakt je gewoon nee zegt?
Het is voor niemand de bedoeling om alles simpelweg te kopieren (neem ik aan, want ik ga uit van het goede van de mens).

Tutorials kunnen handig zijn (maar heb geen duidelijke gevonden), maar als je er niet uitkomt, zou een vriendelijke reactie best welkom zijn.

Fatty Owl
%Europe/Berlin %809 %2005, 19:25
er zijn genoeg tutorials over mailforms, ook op deze site ;)

Cowerd
%Europe/Berlin %810 %2005, 19:27
Nou.. probeer een tutorial.. en als je er zelf ook niet uit komt kan jij ook om hulp vragen..
En er zijn genoeg mensen die ff snel een mailformpje willen jatten voor op hun site..

hulp is gewoon anders dan een compleet script!

matzo
%Europe/Berlin %813 %2005, 19:31
WAT? he FO hoeveel heb jij gedronken?
minder dan jij, of daar lijkt het toch op.
FattyOwl bedoelt met het telefoonnummer dit var Phone:String = t3.text; deel van Njuwdaij's code.
hij vraag een telefoonnummer dat hij niet opslaagt.
PS sorry had FO eigen reactie niet gezien op het volgende blad.
en ik kan best begrijpen dat FO het niet helemaal online zet, heb het getest en met de uitleg in dit topic + een goede tutorial kun je best zelf een mailform nabouwen. Miss met hier en daar een klein foutje maar de mail zou al moeten aankomen. En voor die 'schoonheidsfoutjes' kun je altijd hier weer terecht. Het is gewoon een beetje bescherming van FO's intellect en zelfgemaakte code. Wie weet wordt jou code zelfs beter als je het enkel met de informatie hier doet en niet door de code te zien.

pulletje
%Europe/Berlin %004 %2005, 00:07
var Phone:String = t3.text;


Damn dat had ik inderdaad niet gezien... Ach ik heb maar een excuus: ik zit zwaar onder de medicijnen (diazepam en movicox) --> hierdoor begint op een gegeven moment alles te draaien.

@njuwdaij Er zijn hier op het forum inderdaan een aantal tutorials. probeer het maar eens uit. (bij de weg het hele script staat al zo'n beetje in dit topic ;) )

theFlashWizard
%Europe/Berlin %008 %2005, 00:12
en als jullie tuturials weten over mailforms geef ze dan ook ff aan mij he.. :)
kome ze netjes in het rijdje tutorials en kan iedereen ze sneller terug vinden.. :)

njuwdaij
%Europe/Berlin %470 %2005, 11:17
Ik heb inmiddels echt vanalles geprobeerd, allerlei tutorials uitgeprobeerd, maar het wil me niet lukken.

Mijn klant begint inmiddels een beetje ongeduldig te worden en ik gefrustreert omdat php blijkbaar wel lijkt te werken op de server, maar ik krijg niks binnen! Kan iemand misschien naar mijn .fla kijken om te zien wat ik verkeerd doe?

Ik gebruik inmiddels het 'simpele' script n.a.v. de tutorial van Marc Landsheer, maar krijg enkel een melding "verzenden van data" in het resultaat-tekstvak.

Anybody?

Fatty Owl
%Europe/Berlin %605 %2005, 14:32
hiermee heb ik hem gemaakt:

http://www.sitemasters.be/?pagina=tutorials/tutorials&cat=8&id=182

njuwdaij
%Europe/Berlin %722 %2005, 17:19
Dank. Ik heb 'm geprobeerd, maar wederom: geen mail in mijn mailbox en geen foutmeldingen.
Niemand die er even naar wil kijken?

Ook het feit dat hij geen melding geeft in een extra veld (uw bericht is verzonden) ipv een andere frame is niet handig, want met mijn layout kan dat niet makkelijk.
En dat ie geen velden checked is ook niet makkelijk. Daarom was ik ook eerst bezig met het script dat hier als eerste stond vermeld.

pulletje
%Europe/Berlin %800 %2005, 19:12
als je even naar www.gotoandlearn.com gaat, daar is sinds gisteren een tutorial online over het maken van een contactform met loadvars. daar is ie erg goed uitgelegd en een stukje simpeler als de contactform van laiverd.com

njuwdaij
%Europe/Berlin %884 %2005, 21:13
Dank je Pulletje,

Ik heb het tutorial verwerkt van gotoandlearn in mijn site, maar nu nog doet hij het niet. De verzendbutton lijkt te blijven "hangen" als ik hem aanklik. Het is een nieuwe verzendbutton (nieuw gemaakt).
Wat zou er nu nog mis kunnen zijn?

Fatty Owl
%Europe/Berlin %889 %2005, 21:20
je server ondersteund geen php? laat je php en AS eens zien dan :)

njuwdaij
%Europe/Berlin %893 %2005, 21:27
Als de server geen php zou ondersteunen dan zou het aanroepen direct op de server toch ook moeten mislukken?

Hieronder is volledig volgens de tutorial van gotoandlearn. Maar volgens mij gaat het gewoon steeds mis in de .fla. Want alle tutorials - van simpel tot moeilijk - doen niets. Dan kan het toch niet anders dan in de .fla zitten?

stop();

var senderLoad:LoadVars = new LoadVars();
var receiveLoad:LoadVars = new LoadVars();

sender.onRelease = function() {
senderLoad.theName = theName.text;
senderLoad.theEmail = theEmail.text;
senderLoad.thePhone = thePhone.text;
senderLoad.theMessage = theMessage.text;
senderLoad.sendAndLoad("http://www.eminencefrance.com/send.php",receiveLoad);
}

receiveLoad.onLoad = function() {
if(this.sentOk) {
_root.gotoAndStop("success");
}
else {
_root.gotoAndStop("failed");
}
}

<?PHP

$to = "jxxxxxxxxxxxxx@xxxxxxxxxxxxxx.nl";
$subject = "xxxxxxxxxxxxxxxxx";
$message = "Name: " . $theName;
$message .= "\nEmail: " . $theEmail;
$message .= "\nPhone: " . $thePhone;
$message .= "\n\nMessage: " . $theMessage;
$headers = "From: $theEmail";
$headers .= "\nReply-To: $theEmail";

$sentOk = mail($to,$subject,$message,$headers);

echo "sentOk=" . $sentOk;

?>

Fatty Owl
%Europe/Berlin %897 %2005, 21:32
mailform tutorials doen het nooit 100% heb ik uit ervaring ondervonden :p. dit moet je misschien veranderen:receiveLoad.onLoad = function(sentOk) {
if(sentOk) {
_root.gotoAndStop("success");
}
else {
_root.gotoAndStop("failed");
}
}

njuwdaij
%Europe/Berlin %900 %2005, 21:36
maar dat die verzendbutton ingedrukt blijft (zo lijkt het) dat kan toch niet?
dat heb ik nog nooit gehad. is dat misschien een stop()} teveel ergens?

Bzil
%Europe/Berlin %582 %2005, 13:58
Ik heb die tut ook net gevolgt(gotoandlearn).. Lijkt allemaal vrij eenvoudig, maar ik krijg steeds lege e-mails terug...
Kan het zijn dat deze tut alleen met Flash 8 werkt?

Zal m voor de zekerheid ff posten:

var senderLoad:LoadVars = new LoadVars();
var receiveLoad:LoadVars = new LoadVars();

btn_send.onRelease = function(){
senderLoad.theName = theName.text;
senderLoad.theEmail = theEmail.text;
senderLoad.theMessage = theMessage.text;
senderLoad.sendAndLoad("cms/send.php?", receiveLoad);
}

receiveLoad.onLoad = function(sentOk) {
if(sentOk) {
gotoAndStop("success");
}
else {
gotoAndStop("failed");
}
}

<?PHP

$to = "xxx@xxxxxxx";
$subject = "xxxxxxxxxx";
$message = "Name: " . $theName;
$message .= "\nEmail: " . $theEmail;
$message .= "\n\nMessage: " . $theMessage;
$headers = "From: $theEmail";
$headers .= "\nReply-To: $theEmail";

$sentOk = mail($to,$subject,$message,$headers);

echo "sentOk=" . $sentOk;

?>

theFlashWizard
%Europe/Berlin %667 %2005, 16:00
je gebruikt dezelfde naam voor een variabele als voor een instancename van de textfields.. pas dat eens aan..
nee laat maar.. dat kan niet uitmaken.. dezelfde naam zit bij de variabelen namelijk nog in de loadVars..

Bzil
%Europe/Berlin %974 %2005, 23:23
heeft iemand anders mischien de tut van gotoandlearn gevolt en wel werkend gekregen??