15. oktober 2007 - 10:59
Der er
11 kommentarer og 1 løsning
Overførsel af variabler fra AS til PHP
Hej, Jeg ønsker at sende nogle 3 variabler fra AS til en PHP-fil. Jeg kan godt overføre en streng og få PHP til at arbejde videre med den men hvordan overføre jeg flere variabler på samme tid og hvilken datatype skal de have? Min kode ser indtil videre sådan her ud: var message_load:LoadVars = new LoadVars(); var message_send:LoadVars = new LoadVars(); message_send.hansName = this._parent.nameField.text; etc.... message_send.sendAndLoad("processMessage.php", message_load, "POST"); message_load.onLoad = function(success:Boolean) { if (success) { status_message.text = "<b>Your message has been send succesfully!</b>"; status_message._visible = true; } Jeg refererer til variablerne i PHP-filen på følgende måde: <?php if(is_array($HTTP_POST_VARS)) { $navn = $_POST['hansName']; $emne = $_POST['hansEmne']; $email = $_POST['hansEmail']; $besked = $_POST['hansMessage']; $tidspunkt = $_POST['hansTidspunkt']; $besked .= "\n" . "\n" . "Navn: " . $navn . "\n" . "Email: " . $email . "\n" . "Afsendelsestidspunkt: " . $tidspunkt . "\n"; $besked = wordwrap($besked, 90); $header .= 'Return-Path: ' . $sender_address . "\n"; mail ("lars@hotmail.com", $emne, $besked, $header); else { print "No data was sent"; } } ?> Vh Lars
Annonceindlæg fra Novataris
Vejen til devops med Bavarian Nordic
Bavarian Nordics vækst blev starten på et DevOps-samarbejde med Novataris for hurtigt at kunne tilpasse IT-organisation til forretningen.
7. december 2023
15. oktober 2007 - 11:17
#1
Du tilføjer dem bare til det samme LoadVars objekt; message_send.hansName = some_value1; message_send.hansEmne = some_value2; message_send.hansEmail = some_value3; osv.. mvh mat
15. oktober 2007 - 11:23
#2
jamen det gør jeg jo heroppe som skrevet: message_send.hansName = this._parent.nameField.text; Vh Lars
15. oktober 2007 - 11:39
#3
Så forstår jeg vist ikke spørgsmålet?
15. oktober 2007 - 14:46
#4
jeg havde vidst også været lidt for hurtig. Mit problem er at den kode du ser i indledningen ikke virker.... Jeg tror problemet ligger i modtagelsen af variablerne i PHP-filen. Har du erfaring med det?
15. oktober 2007 - 15:06
#5
Har du ikke en slut bracket for meget? Er du sikker på at dit php script ikke dør?
15. oktober 2007 - 15:09
#6
Det her skal i hvert fald laves om <?php if(is_array($HTTP_POST_VARS)) { $navn = $_POST['hansName']; $emne = $_POST['hansEmne']; $email = $_POST['hansEmail']; $besked = $_POST['hansMessage']; $tidspunkt = $_POST['hansTidspunkt']; $besked .= "\n" . "\n" . "Navn: " . $navn . "\n" . "Email: " . $email . "\n" . "Afsendelsestidspunkt: " . $tidspunkt . "\n"; $besked = wordwrap($besked, 90); $header .= 'Return-Path: ' . $sender_address . "\n"; mail ("lars@hotmail.com", $emne, $besked, $header); else { print "No data was sent"; } } ?> til det her: <?php if(is_array($HTTP_POST_VARS)) { $navn = $_POST['hansName']; $emne = $_POST['hansEmne']; $email = $_POST['hansEmail']; $besked = $_POST['hansMessage']; $tidspunkt = $_POST['hansTidspunkt']; $besked .= "\n" . "\n" . "Navn: " . $navn . "\n" . "Email: " . $email . "\n" . "Afsendelsestidspunkt: " . $tidspunkt . "\n"; $besked = wordwrap($besked, 90); $header .= 'Return-Path: ' . $sender_address . "\n"; mail ("lars@hotmail.com", $emne, $besked, $header); } else { print "No data was sent"; } ?>
15. oktober 2007 - 17:02
#7
Har nu ændret det til det ovenstående men det hjalp mig ikke! Hvad med definitionen i ActionScriptet: message_send.hansName = this._parent.nameField.text; message_send.hansEmail = this._parent.emailField.text; message_send.hansEmne = this._parent.emneField.text; message_send.hansMessage = this._parent.messageField.text; var myTime:String = ""; var myMinutes:String = ""; var myHours:String = ""; myDate = new Date(); myHour = myDate.getHours(); if (myHour < 10) { myHours = "0"+myHour;} else {myHours = myHour;} myMinute = myDate.getMinutes(); if (myMinute < 10) { myMinutes = "0"+myMinute;} else {myMinutes = myMinute;} myDay = myDate.getDate(); myMonth = myDate.getMonth(); myYear = myDate.getFullYear(); myTime = myDay+"/"+myMonth+"-"+myYear+" at "+myHours+":"+myMinutes; message_send.hansTidspunkt = myTime; message_send.sendAndLoad("processMessage.php", message_load, "POST"); ER der noget galt med den? Vh Lars
15. oktober 2007 - 17:18
#8
Umiddelbart ser det fint ud - prøv at ændre sendAndLoad til send("processMessage.php", "_blank", "POST"), så åbner den i et nyt vindue hvor du kan prøve at se hvordan dit php script reagerer? mvh mat
15. oktober 2007 - 18:26
#9
Der sker ikke noget. Der er ikke noget vindue der åbner. Har også prøvet at afvikle .swf-filen alene og der åbner den heller ikke noget vindue.
16. oktober 2007 - 08:55
#10
Jeg har lavet en knap med instancenavn "btn" (uden gåseøjne), og skrevet følgende i frame actions; btn.onRelease = function () { message_send = new LoadVars(); message_send.hansName = "Hans"; message_send.hansEmail = "h@h.dk"; message_send.hansEmne = "Emnet"; message_send.hansMessage = "Besked"; var myTime:String = ""; var myMinutes:String = ""; var myHours:String = ""; myDate = new Date(); myHour = myDate.getHours(); if (myHour < 10) { myHours = "0"+myHour;} else {myHours = myHour;} myMinute = myDate.getMinutes(); if (myMinute < 10) { myMinutes = "0"+myMinute;} else {myMinutes = myMinute;} myDay = myDate.getDate(); myMonth = myDate.getMonth(); myYear = myDate.getFullYear(); myTime = myDay+"/"+myMonth+"-"+myYear+" at "+myHours+":"+myMinutes; message_send.hansTidspunkt = myTime; message_send.send("test.php", "_blank", "POST"); } Min test.php fil ser sådan ud; <? if(is_array($HTTP_POST_VARS)) { $navn = $_POST['hansName']; $email = $_POST['hansEmail']; $emne = $_POST['hansEmne']; $message = $_POST['hansMessage']; $tid = $_POST['hansTidspunkt']; echo $navn; echo $email; echo $emne; echo $message; echo $tid; } else { print "No data was sent"; } ?> Og det virker her. Hvis du bare har din ActionScript kode uden for en eventhandler i frame 1 af din film så prøv eventuelt at vende "load order" i publish settings. mvh mat
16. oktober 2007 - 10:38
#11
Tak for din hjælp Mat. Problemet lå i definitionen af message_send-variablen. Jeg så at du havde defineret den på en anden måde. Det løste problemet. Mange tak for hjælpen! Lægger du lige et svar! Vh Lars
16. oktober 2007 - 10:52
#12
aight
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.