Werken met foreach, gegevens opvragen uit database

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Junior Java developer met ondernemend karakter

Vacature Omschrijving Je komt te werken in een jong en creatief team waarin je écht onderdeel bent van de ontwikkelingen binnen de organisatie. Korte lijnen, weinig bureaucratie en een informele werksfeer. Iemand met een ondernemend karakter zal zich snel thuis voelen. Daarnaast bieden we een marktconform salaris, een gezamenlijke lunch én een 2-wekelijkse stoelmassage. Functieomschrijving Je ontwikkelt mee aan een uniek software platform vol componenten waarmee consultants (en klanten) zowel SaaS- als Enterprise oplossingen creëren op het gebied van ‘Kwaliteit & Veiligheid’, ‘Privacy & Informatiebeveiliging’ en ‘Governance, Risk & Compliance’. Vanuit een overtuigende passie voor het digitaal transformeren van werkprocessen

Bekijk vacature »

Als PHP programmeur werken aan IT oplossingen voor

Vacature Omschrijving Deze fraaie partij ondersteunt bedrijven bij hun technische vraagstukken door middel van software, trainingen, de inzet van specialisten en state of the art apparatuur. Hun missie is: “Het leveren van technische producten, diensten en systemen die van meerwaarde zijn voor de opdrachtgevers.” Zij beantwoorden dan ook de meest uiteenlopende technische vraagstukken, waarbij zij zich richten op vijf marktsegmenten: Bovengrondse Infrastructuur, Ondergrondse Infrastructuur, Bouw & Installatietechniek, Geo & Data en Industrie & Energie. Als technisch specialist ontwerpen zij niet alleen producten en oplossingen voor deze marktsegmenten, maar nemen zij ook het beheer en onderhoud op zich. Deze groeiende partij

Bekijk vacature »

Ray Mond

Ray Mond

27/07/2019 18:23:50
Quote Anchor link
Ben hier nu al een tijdje mee bezig maar krijg het toch niet echt lekker voor elkaar... ondertussen andere dingen maar even gedaan en nu kwam ik hier toch weer op terug.

Om eerlijk te zijn weet ik niet precies hoe het allemaal werkt met foreach.. daar draai ik ook zeker niet omheen.

Ik krijg dus wel het content te zien maar ik zou ook graag de datum (last_update) op willen roepen vanuit de database voor het content. Samen met de gebruiker die het opgeslagen heeft.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
28
29
30
31
32
33
34
35
<?php
                        
                        $data
= array();
                        $notes_sql = "select * from note_custom where to_id='".$row->profile_id."' and from_id= '".$db->escape_string($aid)."'  order by type, last_update DESC";
                        $ret  = $db->query($notes_sql);
                        while($rown = $ret->fetch_object()){
                            $data[$rown->type][$rown->id] = $rown->content;
                        }

                        if(!empty($data)){
                            echo '<div class="accordion" id="collapse-group">';
                            
                            foreach($data as $type => $content){
                                echo' <div class="accordion-group widget-box">
                                <div class="accordion-heading">
                                    <div class="widget-title">
                                        <a data-parent="#collapse-group" href="#collapse'
.$row->profile_id.''.$type.'" data-toggle="collapse">
                                            <span class="icon"><i class="icon-book"></i></span><h5>'
.$config['note_setting'][$type].' ('.sizeof($content).')</h5>
                                        </a>
                                    </div>
                                </div>
                                <div class="collapse accordion-body" id="collapse'
.$row->profile_id.''.$type.'">
                                    <div class="widget-content"><ul>'
;
                                        
                                  foreach($content as $list_id => $list ){
                                      echo "<li> ".$list." <span id='".$list_id."' class='del_note'><i class='icon icon-remove'></i></span>";
                                  }

                                  
                                   echo' </div>
                                </div>
                                </div> '
;
                            }

                            echo "</div>";
                        }

                        
                        ?>


Iemand enig idee? Mijn dank is groot!
 
PHP hulp

PHP hulp

18/08/2019 11:58:52
 
- Ariën -
Beheerder

- Ariën -

27/07/2019 21:26:44
Quote Anchor link
Een goede tip: gebruik print_r() om eens $data uit te lezen.
 
Thomas van den Heuvel

Thomas van den Heuvel

28/07/2019 15:56:10
Quote Anchor link
Waarom doe je eerst een SELECT *, en vervolgens gebruik je enkel type, id en content. Als je meer informatie wilt gebruiken, die niet op een lineaire manier gesorteerd lijkt, dan zul je dus het $data-array moeten uitbreiden, specifiek het content-subarray.

Maar als de database een beetje fatsoenlijk in elkaar zit dan wordt waarschijnlijk het user-id opgeslagen in note_custom, en niet de gebruikersnaam zelf, dus in dat geval zou je de query ook moeten uitbreiden met een JOIN op je user-tabel om de gebruikersnaam op te halen.

Dit lijkt mij allemaal redelijk eenvoudig te realiseren met de bovenstaande aanpassingen.
 
Ray Mond

Ray Mond

28/07/2019 16:18:34
Quote Anchor link
Dit was al een bestaand iets, vandaar dat ik ook aangaf hoe het allemaal precies werkt met die Foreach heb ik zo ff geen idee van, snap wel een deel maar niet alles, daar ben ik ook eerlijk in.

De gebruikersnaam gaat inderdaad niet opgeslagen worden maar naam van de mod, de gebruiker die het dus invoert.
Vandaar dat ik bij het content dus de log informatie de tijdstip (last_update) wil laten zien samen met de (moderator) naam.
 
- Ariën -
Beheerder

- Ariën -

28/07/2019 17:35:08
Quote Anchor link
heb je al een print_r() gebruikt? Dan heb je een mooi overzicht wat er in de array's bevindt.
 



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.