array doorgeven aan een javascriptfuntie

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jeroen van Veldhuizen

Jeroen van Veldhuizen

06/10/2007 16:42:00
Quote Anchor link
Hallo,

Ik heb een array in php (gegevens uit de database). Nu wil ik deze array doormiddel van een onclick achter een plaatje doorgeven aan een function in javascript dus:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
onclick="opdracht(<?php echo $array ?>)"
. Dit is me tot op heden nog niet gelukt. Nu wil ik weten of dit uberhaupt mogelijk is of dat ik de array om moet zetten naar een string met komma's ertussen.
 
PHP hulp

PHP hulp

25/11/2024 23:21:20
 
PHP erik

PHP erik

06/10/2007 16:43:00
Quote Anchor link
Je moet de array omzetten naar een javascript array. Want echo $array geeft sowieso enkel het woord "Array" als resultaat.
 
Jeroen van Veldhuizen

Jeroen van Veldhuizen

06/10/2007 16:44:00
Quote Anchor link
PHPerik schreef op 06.10.2007 16:43:
Je moet de array omzetten naar een javascript array. Want echo $array geeft sowieso enkel het woord "Array" als resultaat.


Kun je me misschien ook vertellen hoe ik dat zou moeten doen? Alvast bedankt.
 
M Ypma

M Ypma

06/10/2007 16:58:00
Quote Anchor link
Kijken hoe een javascript array eruit ziet:
[1,2,3,4,5] of
Array(1,2,3,4,5);

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
onclick="opdracht( [<?php echo implode('\',\'',$jArray ); ?>])"
Gewijzigd op 01/01/1970 01:00:00 door M Ypma
 
Martijn B

Martijn B

06/10/2007 17:00:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$aArray
= array('foo','bar','foobar');
echo 'aArray = new Array(\'' . implode('\',\'', $aArray) . '\');';
?>


Een array met meerdere dimensies gaan wal lastiger...
Gewijzigd op 01/01/1970 01:00:00 door Martijn B
 
Jeroen van Veldhuizen

Jeroen van Veldhuizen

06/10/2007 17:01:00
Quote Anchor link
michel schreef op 06.10.2007 16:58:
Kijken hoe een javascript array eruit ziet:
[1,2,3,4,5] of
Array(1,2,3,4,5);

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$jArray
= '';

foreach( $array as $elm )
     $jArray .= $elm.',';
?>

onclick="opdracht( [<?php echo substr($jArray, -1); ?>])"


Dankje,

Werkt het ook met zo'n array?

[0] => stdClass Object
(
[id] => 4
[name] => checked
)

[1] => stdClass Object
(
[id] => 1
[name] => name
)

[2] => stdClass Object
(
[id] => 3
[name] => value
 
M Ypma

M Ypma

06/10/2007 17:03:00
Quote Anchor link
@jeroen
zoals al wordt verteld werkt het niet met multidimensionale arrays. en gebruik implode ipv een foreach loop

Edit:

ik zie dat het wel een gewone array is met objecten... dat moet wel lukken, maar dan zal je wel een foreach moeten gebruiken omdat je de keys ook nodig hebt
Gewijzigd op 01/01/1970 01:00:00 door M Ypma
 
Martijn Wieringa

Martijn Wieringa

06/10/2007 17:04:00
Quote Anchor link
Tip: Google eens naar "JSON" (Javascript Simplified Object Notation).

.... er gaat een wereld voor je open (:
 
Jeroen van Veldhuizen

Jeroen van Veldhuizen

06/10/2007 17:05:00
Quote Anchor link
Oke, bedankt dan had ik dat waarschijnlijk over het hoofd gezien. Ik denk dat ik dan maar even naar een andere oplossing moet gaan kijken. Heb namelijk het id en de naam nodig in javascript
 
M Ypma

M Ypma

06/10/2007 17:29:00
Quote Anchor link
Pholeron geeft je net die oplossing JSON. Hiermee kan je prima communiceren tussen PHP en javascript
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.