Array
prienstra - 25/03/2009 22:11
MySQL interesse
Waarom werkt de array wel met methode 2, maar niet met methode 1?
Methode 1 is opgebouwd uit database, en methode 2 is gewoon getypt. Hoe krijg ik methode 1 juist?
Je moet 1 van de regels verwijderen als je iets probeerd.
http://www.plaatscode.be/124218 /
12 antwoorden
Gesponsorde links
Wim - 25/03/2009 22:15 (laatste wijziging 25/03/2009 22:16)
Crew algemeen
Zo maak je ook helemaal geen array...
Lees eerst eens een tutorial over array's, het zal je dan snel duidelijk worden.
//edit: http://www.site...s_Basics#2
prienstra - 25/03/2009 22:17
MySQL interesse
Maar er staat toch precies hetzelfde als ik de gegevens uit de database haal.
Beide manieren staat er dit:
$resultaten = array("Belgie","Duitsland","Nederland")
Wim - 25/03/2009 22:21
Crew algemeen
Je maakt er een string van, dat is helemaal iets anders dan een array.
$sString = 'array("';
$sString .= implode('","', $aland);
$sString .= '")';
$sString = 'array("' ;
$sString .= implode ( '","' , $aland ) ; $sString .= '")' ;
als je $sString echo'ed komt er waarschijnlijk zoiets:
array(' #ARRAY ')
in de plaats van #ARRAY komt er waarschijnlijk zelfs een foutmelding of een warning
Lees ook PHP.net: implode nog eens door, dan gaat de oplossing je snel duidelijk worden.
prienstra - 25/03/2009 22:23 (laatste wijziging 25/03/2009 22:24)
MySQL interesse
bij een echo krijg ik dit:
array("Belgie","Duitsland","Nederland")
of het een array is of niet, ik snap niet waarom het niet werkt.
Als ik beide methodes echo, krijg ik precies hetzelfde,
genkstar - 25/03/2009 22:52 (laatste wijziging 25/03/2009 23:24)
Nieuw lid
prienstra schreef:
bij een echo krijg ik dit:
array("Belgie","Duitsland","Nederland")
of het een array is of niet, ik snap niet waarom het niet werkt.
Als ik beide methodes echo, krijg ik precies hetzelfde,
Dat wordt afgedrukt als een string en niet als een Array
Wim - 25/03/2009 23:04
Crew algemeen
prienstra - 26/03/2009 07:59 (laatste wijziging 26/03/2009 09:38)
MySQL interesse
Ik heb het nu zo gedaan:
Plaatscode: 124634
Dit werkt dus!
Ultimatum - 26/03/2009 09:46
PHP expert
Waarom zo raar met eval?
Je kan het ook zo doen:
<?php
$resultaten = implode(',', $aland);
?>
<?php
$resultaten = implode ( ',' , $aland ) ; ?>
Ik weet of je een aantal terug wilt hebben of de array maar als je aantal wilt moet je PHP.net: count gebruiken.
marten - 26/03/2009 10:19
Beheerder
eval == evil
Wim - 26/03/2009 12:32
Crew algemeen
Oké, nog éénmaal. Deze informatie had je makkelijk kunnen vinden had je die link die ik je tot 2 maal toe gaf even doorgelezen:
$aland = array();
while($aResult = mysql_fetch_array($rQuery)) {
$aland[] = $aResult['land'];
}
$sString = 'array("';
$sString .= implode('","', $aland);
$sString .= '")';
$resultaten1 = $sString;
$aland [ ] = $aResult [ 'land' ] ;
}
$sString = 'array("' ;
$sString .= implode ( '","' , $aland ) ; $sString .= '")' ;
$resultaten1 = $sString ;
Op de erste regel maak je van $aland op een correcte manier een array . Vervolgens voeg je op regel 3 hier -weer op een correcte manier- elementen aan toe. Je hebt nu je mooie array al die perfect werkt!
Daarna, waarom weet ik niet, ga je deze array omzetten naar een string, om deze vervolgens via een foutieve manier proberen om te zetten naar een array. (regel 5-7).
Nadien wil je die array (welke je dus gelijk wilt hebben aan $aland) in $resultaten1 zetten.
Gelieve die tutorial eerst eens door te lezen, dan ga je volledig begrijpen wat je fout is en ga je deze hoogstwaarschijnlijk niet meer maken.
Fouten maken is zeker niet erg, maar je moet er wel wat uit willen leren!
prienstra - 26/03/2009 12:55
MySQL interesse
De string maakte ik om " ", toe te voegen na elk element uit de database. Ik had dat stukje van die string hierop sitemasters gezien.
Gesponsorde links
Dit onderwerp is gesloten .