login  Naam:   Wachtwoord: 
Registreer je!
 Forum

array + mysql (+ inverteren)

Offline xboes - 29/06/2006 15:40
Avatar van xboesHTML interesse Hallo,

ik zou graag een array maken waarbij de waarden die hij uitleest uit een database verwijderd worden uit de array.
ik heb volgende code:
  1. <?php
  2.  
  3. $groep = array(
  4. 5 => "senioren",
  5. 7 => "supporters",
  6. 9 => "bestuur",
  7. 14 => "sponsoring",
  8. 15 => "jeugdwerking",
  9. 16 => "kantine",
  10. 17 => "administratie",
  11. 24 => "activiteiten",
  12. 25 => "sportief beleid",
  13. 33 => "financieel",
  14. 57 => "webteam",
  15. 86 => "jeugd"
  16. );
  17.  
  18.  
  19. include("inc/db.inc.php");
  20.  
  21. $query = "SELECT group_id FROM phpbb_user_group WHERE user_id = 25";
  22. $result = mysql_query($query);
  23.  
  24. while($row = mysql_fetch_array($result)) {
  25.  
  26. $groep_id = array($groep[$row['group_id']]);
  27.  
  28. $download = array_diff($groep, $groep_id);
  29.  
  30. }
  31.  
  32. print_r($download);
  33.  
  34. ?>


maar dit verwijdert enkel de laatst uitgelezen waarde van de database uit de array, terwijl ik alle waarde zou willen verwijderen uit de array die hij uitleest van de database.

Kan er mij iemand helpen?

7 antwoorden

Gesponsorde links
Offline MothZone - 29/06/2006 15:48
Avatar van MothZone PHP ver gevorderde Je vertrekt op lijn 28 dan ook elke keer van de volledige array $groep, en niet van de al aangepaste array $download.
Offline Thomas - 29/06/2006 15:59
Avatar van Thomas Moderator Ik kan me niet voorstellen dat de groep_id's van groepen die een gebruiker niet wilt zien opgeslagen worden in phpbb_user_group?
Offline xboes - 29/06/2006 16:02
Avatar van xboes HTML interesse maar ik wil dit gebruiken voor een ander script, waarbij ik juist die groepen nodig heb, waar hij geen lid van is (moet geen vragen stellen, is redelijk ingewikkeld... :-) )
maar wat moet ik dan wel gebruiken om de juiste waarden terug te krijgen?
Offline MothZone - 29/06/2006 16:05
Avatar van MothZone PHP ver gevorderde Probeer dit eens:

  1. <?php
  2.  
  3. $groep = array(
  4. 5 => "senioren",
  5. 7 => "supporters",
  6. 9 => "bestuur",
  7. 14 => "sponsoring",
  8. 15 => "jeugdwerking",
  9. 16 => "kantine",
  10. 17 => "administratie",
  11. 24 => "activiteiten",
  12. 25 => "sportief beleid",
  13. 33 => "financieel",
  14. 57 => "webteam",
  15. 86 => "jeugd"
  16. );
  17.  
  18.  
  19. include("inc/db.inc.php");
  20.  
  21. $query = "SELECT group_id FROM phpbb_user_group WHERE user_id = 25";
  22. $result = mysql_query($query);
  23.  
  24. while($row = mysql_fetch_array($result)) {
  25.  
  26. $groep_id = array($groep[$row['group_id']]);
  27.  
  28. $groep = array_diff($groep, $groep_id);
  29.  
  30. }
  31.  
  32. print_r($groep);
  33.  
  34. ?>
Offline xboes - 29/06/2006 16:11
Avatar van xboes HTML interesse mooi!!!!!

dankuwel!

en kan er mij iemand zeggen hoe ik de bekomen array nu kan omzetten in een lijst van de vorm:
"senioren", "supporters", "jeugdwerking", enz. (dus mét de aanhalingstekens en mét de komma's ertussen...
Offline Simon - 29/06/2006 16:16
Avatar van Simon PHP expert met een foreach?
  1. <?php
  2. foreach($groep as $gr) {
  3. $str .= '"'.$gr.'", ';
  4. }
  5. $strlen = str_len($str);
  6. echo substr($str, 0, (strlen-2)); //laatste komma en spatie weg
  7. ?>
Offline xboes - 29/06/2006 16:20
Avatar van xboes HTML interesse hartelijk dank! alles werkt perfect!
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.213s