login  Naam:   Wachtwoord: 
Registreer je!
 Forum

waardes tussen variabele zetten (Opgelost)

Offline shamrock - 10/07/2010 15:30
Avatar van shamrockLid Hallo,

Ik weet even niet meer hoe ik het volgende krijg:

Waardes uit de database:

1
2
4
6
11

En ik wil dit automatisch echooen als:

'1','2','4','6','11'


Wie kan mij hiermee helpen?
Bedankt

15 antwoorden

Gesponsorde links
Offline Martijn - 10/07/2010 15:34 (laatste wijziging 10/07/2010 15:34)
Avatar van Martijn Crew PHP
  1. echo " ' ".implode(" ',' ",$array()." ' ";

met wat spaties erbij
Offline shamrock - 10/07/2010 15:36 (laatste wijziging 10/07/2010 15:50)
Avatar van shamrock Lid ochja bedankt

zat al te zoeken bij implement ofzoiets maar het moet idd implode zijn


edit:

Nu kom ik erachter dat hij waarde uit een array moet halen.

ik moet ze uit een while loop halen

ik kan:

  1. echo $waarde.',';


doen maar dan staat achteraan ook een comma...
hoe kan ik dit het beste oplossen?
Offline TotempaaltJ - 10/07/2010 16:03
Avatar van TotempaaltJ PHP interesse In de while loop kan bijv. dit:
  1. $array[] = $waarde;
Offline MrWolf - 10/07/2010 16:04
Avatar van MrWolf Lid substr
Offline Jelmerholland - 10/07/2010 16:20 (laatste wijziging 10/07/2010 16:20)
Avatar van Jelmerholland PHP beginner Wat ik doe (beetje omslachtig) is een $i aanmaken, die op false zetten,
als $i = true
geen komma
$i = false
anders
wel komma
Offline TotempaaltJ - 10/07/2010 18:04
Avatar van TotempaaltJ PHP interesse Je checkt of het item wat je neerzet de laatste is ($i == count($array)?), zo nee: komma, zo ja: geen komma. 
Offline shamrock - 14/07/2010 09:11 (laatste wijziging 14/07/2010 09:20)
Avatar van shamrock Lid
TotempaaltJ schreef:
In de while loop kan bijv. dit:
[..code..]


dit krijg ik niet werkend.


wat moet ik echoen? (echo $array of echo $array[])?

Beide echo's zijn leeg terwijl de $waarde wel gevuld is?


als ik array[0] typ krijg ik wel een waarde maar ik wil graag een array van alle waardes
Offline Jelmerholland - 14/07/2010 09:49
Avatar van Jelmerholland PHP beginner $array[] = waarde?
Je wilt alle waardes in je array toevoegen dmv een while-loop ofzo?
Offline shamrock - 14/07/2010 10:04
Avatar van shamrock Lid ja precies

en dan moet ik buiten de while loop dit hebben:

$colors = array($array);
(als ik $colors echo krijg ik dit resultaat: Array)

Ik wil dus hier graag die waarde uit de while loop

$colors moet bijvoorbeeld worden:
  1. $colors = array('#043e60','#393ace','#c8683a','#4f935b','#ab98c3','#8d8cbf');


de kleuren haalt hij dan uit de while loop
Offline Stijn - 14/07/2010 10:37
Avatar van Stijn PHP expert Je hebt $array[] = $waarde in je while lus gedaan. Na je while lus doe je dan de code van Martijn in zijn eerste reactie. Moeilijk is dit niet, toch?
Offline shamrock - 14/07/2010 10:45 (laatste wijziging 14/07/2010 10:51)
Avatar van shamrock Lid maar als ik $array buiten de while lus echo krijg ik als output: "Array" ipv de lijst met waarde?

Ik moet een soort kleuren generator hebben.

Hij moet kijken hoeveel kleuren hij moet maken (uit een db) en die in een array zetten.

Heb dit maar werkt niet:

  1. $array[] = "";
  2. $res = @mysql_query("SELECT land FROM cms_stats_landen");
  3. $nr = @mysql_num_rows($res);
  4. $x = 1;
  5. while($x <= $nr)
  6. {
  7. $rand = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f');
  8. $color = '#'.$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)];
  9. $array[] = $color;
  10. }
  11.  
  12. $kleuren = " ' ".implode(" ',' ",array[]." ' ");
  13.  
  14. $colors=array($kleuren);
Offline TotempaaltJ - 14/07/2010 11:07
Avatar van TotempaaltJ PHP interesse Je kan een array niet echo'en Dan moet je print_r doen.
Offline shamrock - 14/07/2010 11:09 (laatste wijziging 14/07/2010 11:45)
Avatar van shamrock Lid Zal het duidelijker uitleggen.

Ik haal bijvoorbeeld 10 waardes uit een database.

Dan wil ik een array gevuld hebben:

array('1','2','3','4','5','6','7','8','9','10');

Zijn er maar 4 resultaten in de database dan wil ik graag het volgende:

array('1','2','3','4');


de getallen 1 t'm 4 of 1 t'm 10 etc... moeten willekeurige kleurcodes worden


Vriendelijk bedankt
Offline Stijn - 14/07/2010 11:49
Avatar van Stijn PHP expert
  1. $array[] = "";
Dat mag weg. Je kan misschien het volgende in de plaats schrijven: $array = array();

  1. $colors=array($kleuren);
Waarom doe je dit? Dit mag weg. $kleuren is een string, dus je kleuren gescheiden met komma's.

Je code kan optimaler geschreven worden. Hier vind je een versie die aan jou startbericht voldoet.

  1. <?php
  2. $array = array();
  3. $nr = mysql_result(mysql_query("SELECT COUNT(*) FROM cms_stats_landen"), 0);
  4. $x = 0;
  5. $rand = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f');
  6. while($x < $nr)
  7. {
  8. $array[] = '#'.$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)];
  9. }
  10.  
  11. $kleuren = " ' " . implode(" ',' ",$array) . " ' ";
  12.  
  13. echo $kleuren;
  14.  
  15. echo "<pre>", var_dump($array) , "</pre>"; //dit is een dump van je $array die al je kleuren bevat.
  16.  
  17. //de array $array bevat al je kleuren, je kan dus met $array verder werken. Je kan deze array overlopen met foreach bv
  18. ?>
Offline shamrock - 14/07/2010 11:56
Avatar van shamrock Lid bedankt, dat werkt super (tot zover), zal zometeen misschien nog vragen hebben  
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.303s