Data niet zichtbaar in e-mail
Ik probeer vanuit Flash (as3) data te verzenden naar een php-script, dat me op de hoogte brengt van de invoer.
Omdat het om twee arrays gaat gebruik ik een for-loop:
Vraag:
1 hoe krijg ik de variablen uit het array zichtbaar?
2 hoe zet ik ze netjes in een tabel met 4 kolommen?
(In werkelijkheid gaat het om veel meer namen)
Omdat het om twee arrays gaat gebruik ik een for-loop:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?
//$mailTo = $_POST['email'];
//$myDatum = $_POST['myDatum'];
$car_amount = array(1,2,3,4,5,0,4,3,2,1)
$car_names = array("Chrysler","BMW","Volkswagen","Volvo","Daihatsu","Peugeot","Opel","Audi","Fiat","Cooper");
$siteName = "my website";
$myMail = "[email protected]";
$toWebmaster = "
____________________________________
Counting cars on Sunday:
for($i=0;$i<count($car_names);$i++){
if($car_amount[$i]>0){
$car_amount[$i] . " pcs " . $car_names[$i] . "<br>\n";
}
}
____________________________________
";
mail ($myMail, "Cars counted", $toWebmaster, $siteName);
?>
//$mailTo = $_POST['email'];
//$myDatum = $_POST['myDatum'];
$car_amount = array(1,2,3,4,5,0,4,3,2,1)
$car_names = array("Chrysler","BMW","Volkswagen","Volvo","Daihatsu","Peugeot","Opel","Audi","Fiat","Cooper");
$siteName = "my website";
$myMail = "[email protected]";
$toWebmaster = "
____________________________________
Counting cars on Sunday:
for($i=0;$i<count($car_names);$i++){
if($car_amount[$i]>0){
$car_amount[$i] . " pcs " . $car_names[$i] . "<br>\n";
}
}
____________________________________
";
mail ($myMail, "Cars counted", $toWebmaster, $siteName);
?>
Vraag:
1 hoe krijg ik de variablen uit het array zichtbaar?
2 hoe zet ik ze netjes in een tabel met 4 kolommen?
(In werkelijkheid gaat het om veel meer namen)
Gewijzigd op 24/03/2014 18:13:52 door Hendrikus Dikkema
$toWebmaster = "
____________________________________
Counting cars on Sunday:
for($i=0;$i<count($car_names);$i++){
if($car_amount[$i]>0){
$car_amount[$i] . " pcs " . $car_names[$i] . "<br>\n";
}
}
____________________________________
";
die for wordt niet uitgevoerd, php ziet het als tekst
____________________________________
Counting cars on Sunday:
for($i=0;$i<count($car_names);$i++){
if($car_amount[$i]>0){
$car_amount[$i] . " pcs " . $car_names[$i] . "<br>\n";
}
}
____________________________________
";
die for wordt niet uitgevoerd, php ziet het als tekst
Klopt, ik zie de loop zonder de variabelen.
Maar daarmee blijft mijn vraag onbeantwoord: hoe krijg ik die variabelen wel in de tekst en de routine niet?
Maar daarmee blijft mijn vraag onbeantwoord: hoe krijg ik die variabelen wel in de tekst en de routine niet?
Door de routine buiten de quotes te houden.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php
//$mailTo = $_POST['email'];
//$myDatum = $_POST['myDatum'];
$car_amount = array(1,2,3,4,5,0,4,3,2,1)
$car_names = array("Chrysler","BMW","Volkswagen","Volvo","Daihatsu","Peugeot","Opel","Audi","Fiat","Cooper");
$siteName = "my website";
$myMail = "[email protected]";
$toWebmaster = "
____________________________________
Counting cars on Sunday:
";
for($i=0;$i<count($car_names);$i++){
if($car_amount[$i]>0){
$toWebmaster .= $car_amount[$i] . " pcs " . $car_names[$i] . "<br>\n";
}
}
$toWebmaster .= "
____________________________________
";
mail ($myMail, "Cars counted", $toWebmaster, $siteName);
?>
//$mailTo = $_POST['email'];
//$myDatum = $_POST['myDatum'];
$car_amount = array(1,2,3,4,5,0,4,3,2,1)
$car_names = array("Chrysler","BMW","Volkswagen","Volvo","Daihatsu","Peugeot","Opel","Audi","Fiat","Cooper");
$siteName = "my website";
$myMail = "[email protected]";
$toWebmaster = "
____________________________________
Counting cars on Sunday:
";
for($i=0;$i<count($car_names);$i++){
if($car_amount[$i]>0){
$toWebmaster .= $car_amount[$i] . " pcs " . $car_names[$i] . "<br>\n";
}
}
$toWebmaster .= "
____________________________________
";
mail ($myMail, "Cars counted", $toWebmaster, $siteName);
?>
Gewijzigd op 24/03/2014 18:39:16 door Ger van Steenderen
Code (php)
Gewijzigd op 24/03/2014 18:40:07 door php knipper
@Hendrikus:
Als je HTML tags in het bericht gebruikt, moet je ook zorgen dat in de headers wordt aangeven dat het een HTML bericht is.
Als je HTML tags in het bericht gebruikt, moet je ook zorgen dat in de headers wordt aangeven dat het een HTML bericht is.
@Ger
Ik zag het. Intussen werkt 't en wat belangrijker is: ik begrijp het hoe en waarom.
Ga nu proberen een html-tabel te maken en te vullen.
Dank!
Ik zag het. Intussen werkt 't en wat belangrijker is: ik begrijp het hoe en waarom.
Ga nu proberen een html-tabel te maken en te vullen.
Dank!
San The, ik zie het.
Welke header gebruik ik dan i.p.v. $toWebmaster?
Welke header gebruik ik dan i.p.v. $toWebmaster?
Met alle respect voor San The's mailheaders link (want daar is helemaal niks mis mee) adviseer ik je om een naar mail classes zoals PHPMailer of SwiftMailer te kijken.
Deze regelen de mailheaders al voor je, en maken het een stuk eenvoudiger om bijvoorbeeld bijlagen mee te sturen.
En dan (min of meer uit niet nieuwsgierigheid) hoe verstuur je de gegevens vanuit ActionScript, je kan daar in principe al een hoop uitfilteren en (belangrijker) organiseren.
Deze regelen de mailheaders al voor je, en maken het een stuk eenvoudiger om bijvoorbeeld bijlagen mee te sturen.
En dan (min of meer uit niet nieuwsgierigheid) hoe verstuur je de gegevens vanuit ActionScript, je kan daar in principe al een hoop uitfilteren en (belangrijker) organiseren.
Hoi Ger,
Vanuit as3 verstuur ik de data als variabelen naar php. Echter, ik heb twee arrays, één met namen (Strings) en een met aantallen (int).
Die variabelen verstuurde ik met een for loop. In totaal waren dat er meer dan 100.
Dat is script-technisch natuurlijk onzin. Vandaar de vraag op jullie phphulp.
Probleem was, dat ik niet wist waarom het niet werkte: zat de fout in as3 of in php. Het was dus php.
Als het me nu ook nog lukt om arrays naar php te sturen, dan ben ik klaar.
Ik ben nog maar een paar maand bezig met as3 en begin een beetje te begrijpen van classes.
Ik zal kijken naar je aanbevolen classes, ze proberen en als 't niet lukt me weer melden.
Dank voor je . wel . nieuwsgierigheid.
Vanuit as3 verstuur ik de data als variabelen naar php. Echter, ik heb twee arrays, één met namen (Strings) en een met aantallen (int).
Die variabelen verstuurde ik met een for loop. In totaal waren dat er meer dan 100.
Dat is script-technisch natuurlijk onzin. Vandaar de vraag op jullie phphulp.
Probleem was, dat ik niet wist waarom het niet werkte: zat de fout in as3 of in php. Het was dus php.
Als het me nu ook nog lukt om arrays naar php te sturen, dan ben ik klaar.
Ik ben nog maar een paar maand bezig met as3 en begin een beetje te begrijpen van classes.
Ik zal kijken naar je aanbevolen classes, ze proberen en als 't niet lukt me weer melden.
Dank voor je . wel . nieuwsgierigheid.
>> Als het me nu ook nog lukt om arrays naar php te sturen, dan ben ik klaar.
Array's zal niet gaan, maar wel XML of JSON:
Uitkomst:
Deze kan je dus in zijn geheel verzenden en in PHP uitlezen met json_decode.
Ik gebruik Flash CS6, en daar is het een native onderdeel in Flash. Nadeel ervan is dat het alleen met Flash Player 11+ werkt.
Heb je een lagere versie, dan kan je een externe bibliotheek downloaden.
Array's zal niet gaan, maar wel XML of JSON:
Code (js)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
var car1:Object = new Object();
car1.manufacturer = "Mercedes";
car1.type = "190 E";
car1.year = "2008";
var car2:Object = new Object();
car2.manufacturer = "Mercedes";
car2.type = "230 SL";
car2.year = "2009";
var car3:Object = new Object();
car3.manufacturer = "BMW";
car3.type = "335i";
car3.year = "Who knows";
var cars:Array = new Array(car1,car2,car3);
var cardata:String = JSON.stringify(cars);
trace(cardata);
car1.manufacturer = "Mercedes";
car1.type = "190 E";
car1.year = "2008";
var car2:Object = new Object();
car2.manufacturer = "Mercedes";
car2.type = "230 SL";
car2.year = "2009";
var car3:Object = new Object();
car3.manufacturer = "BMW";
car3.type = "335i";
car3.year = "Who knows";
var cars:Array = new Array(car1,car2,car3);
var cardata:String = JSON.stringify(cars);
trace(cardata);
Uitkomst:
Code (php)
1
2
3
4
5
2
3
4
5
[
{"type":"190 E","year":"2008","manufacturer":"Mercedes"},
{"type":"230 SL","year":"2009","manufacturer":"Mercedes"},
{"type":"335i","year":"Who knows","manufacturer":"BMW"}
]
{"type":"190 E","year":"2008","manufacturer":"Mercedes"},
{"type":"230 SL","year":"2009","manufacturer":"Mercedes"},
{"type":"335i","year":"Who knows","manufacturer":"BMW"}
]
Deze kan je dus in zijn geheel verzenden en in PHP uitlezen met json_decode.
Ik gebruik Flash CS6, en daar is het een native onderdeel in Flash. Nadeel ervan is dat het alleen met Flash Player 11+ werkt.
Heb je een lagere versie, dan kan je een externe bibliotheek downloaden.
Gewijzigd op 26/03/2014 19:10:57 door Ger van Steenderen
Ger, je hebt een goede neus!
Ik had ook al naar JSON zitten kijken, maar vroeg me af of het voor een eenvoudige array wel noodzakelijk zou zijn. Ik heb twee arrays, die ik in as3 voorbewerk (onnodige = 0 data filteren).
Ik had al voor dat type array gekozen, omdat ik problemen met php voorzag.
Dus:
array1("Mercedes","Fiat","Peugeot","enz")
array2(5,3,1,0)
Trouwens het moet een app worden, AIR en geen flashplayer dus.
Maar we zijn er nog niet, want ik zit toch aan een multidim-array vast.
Ik heb een appje gemaakt, die de locatie (NB en OL) weergeeft.
Bij de waarneming wil ik ook de locatie opslaan, en dan ... zit ik aan een multidimarray vast.
Ik had ook al naar JSON zitten kijken, maar vroeg me af of het voor een eenvoudige array wel noodzakelijk zou zijn. Ik heb twee arrays, die ik in as3 voorbewerk (onnodige = 0 data filteren).
Ik had al voor dat type array gekozen, omdat ik problemen met php voorzag.
Dus:
array1("Mercedes","Fiat","Peugeot","enz")
array2(5,3,1,0)
Trouwens het moet een app worden, AIR en geen flashplayer dus.
Maar we zijn er nog niet, want ik zit toch aan een multidim-array vast.
Ik heb een appje gemaakt, die de locatie (NB en OL) weergeeft.
Bij de waarneming wil ik ook de locatie opslaan, en dan ... zit ik aan een multidimarray vast.
Het maakt niets uit in welke applicatie je AS gebruikt, je kan niet zomaar één op één een ActionScript array naar PHP posten (correct me if I'm wrong)
Een Array is in AS ook een object, dus ook al is ie multidimensional kan je hen omzetten naar een JSON string. Blijft altijd veel beter dan om twee arrays naast elkaar te zetten
Een Array is in AS ook een object, dus ook al is ie multidimensional kan je hen omzetten naar een JSON string. Blijft altijd veel beter dan om twee arrays naast elkaar te zetten




