Image gallery &PHP

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

.NET developer

Functie The position we have for you As a .NET developer you will work for one of our customers active in the High Tech Industry. Our customers are mainly located in the Eindhoven area. We are very selective when it comes to the projects we accept and therefore only focus on innovative and complex projects. Because our customers are mainly specialized in machine construction, you often work close to the machines. Our team currently consists of Embedded engineers, IOT developers and Cloud engineers. We mainly work on Microsoft projects where WPF, UWP, .NET Core and Microsoft Azure are used. Eisen

Bekijk vacature »

Mendix Developer

Voor Troostwijk Groep zoeken wij een: Mendix Developer Wij zoeken Je bent een getalenteerde en ervaren Mendix Developer en het is tijd om je horizon te verbreden. Je wilt minder coderen en meer modelleren, minder bezig zijn met allerlei technische details en randvoorwaarden en meer met functionaliteit. Daarnaast ben je trots op de innovatieve en gebruiksvriendelijke applicaties die je in de loop van de jaren hebt gebouwd. Werk je graag in een enthousiast team, wil je veel vrijheid en kun je tegelijkertijd goed met deadlines omgaan, dan ben jij absoluut degene die wij zoeken! Wat je nodig hebt is ruime

Bekijk vacature »

C# .NET Developer

Dit ga je doen Als developer nieuwe gave features implementeren; Werken met technieken als C# .NET en (REST) API's webservices; Ontwikkelen van koppelingen middels API's; Maken van technische keuzes en beslissingen over de architectuur; Junior collega's coachen; Initiatief nemen voor nieuwe technische mogelijkheden; Je bent een belangrijke schakel - en vindt het leuk - om te schakelen met de business. Hier ga je werken In een klein team van professionals ben je als C# .NET Developer verantwoordelijk voor het ontwikkelen van één van de applicaties voor het grootste inhouse product: een applicatie voor alles omtrent hypotheken. De programmeertaal die je

Bekijk vacature »

Back end developer Onderwijssoftware

Functie Als back end developer kom jij terecht in een klein, maar hecht team bestaande uit 5 andere developers (waarvan 2 senioren, 2 medior en 1 junior). Met de gezamenlijke missie om “ieder kind te helpen met onze software” wordt er dagelijks gepassioneerd en hard gewerkt aan ons in-house ontwikkeld platform. Deze software is gebaseerd is op AI, machine Learning en wetenschappelijke inzichten. Dagelijks zul jij werken met onze high traffic webapplicatie. We hebben ruim 300.00 gebruikers en meer dan 2 miljard records waar je te maken mee krijgt! Verder zul jij je bezighouden met: – Het ontwikkelen van hoogwaardige

Bekijk vacature »

Oracle Apex Developer

Dit ga je doen Jouw taken bestaan uit: Het bouwen maatwerk Oracle applicaties voor Europese business units; Het implementeren van de nieuwste technieken om te blijven innoveren; Actief meedenken en aandragen van verbetervoorstellen. Hier ga je werken Deze organisatie in de regio Veenendaal is een van wereld grootste retailers met ruim 16.000 winkels in 27 markten en jaarlijks ruim 5,3 miljard klanten die winkelen bij een van hun welbekende retailmerken. Binnen de organisatie is er een IT Group actief die dient als IT Service Provider voor de hele organisatie en waar dagelijks IT'ers werken aan state-of-the-art IT oplossingen. Dit doen

Bekijk vacature »

Back-end Developer

Functieomschrijving Heb jij kort geleden jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een gewaardeerde werkgever in regio Oosterhout zijn wij op zoek naar een back-end developer. Kennis of ervaring met C# & SQL is een must! Je bent verantwoordelijk voor de beheer en ontwikkeling van de software; Je draagt bij aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de C# based applicaties; Je test de software en ontwikkelt deze door; Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten; Je brengt de aanpassingssuggesties van klanten in kaart, om

Bekijk vacature »

C# .NET Software Developer

Functie omschrijving Ben jij op zoek naar een nieuwe uitdaging binnen software development waar je gaat werken voor een jong en flexibel bedrijf? Lees dan snel verder! Wij zijn op zoek naar een Software Developer met ervaring binnen C# .NET die enthousiast wordt van het aansluiten en begeleiden van (complexe) nieuwe klanten. Verder begeleid je complexe projecten, ben jij iemand die altijd kansen ziet? Dan zoeken wij jou! In deze functie ga jij je bezighouden met: Meedenken in oplossingsrichtingen; Werken aan de architectuur; Het verbeteren van functionaliteiten binnen het dataplatform; Ontwikkelen van nieuwe technologieën. Bedrijfsprofiel Waar ga je aan de

Bekijk vacature »

Senior PHP developer met ambities tot Software Arc

Functie Momenteel zijn ze op zoek naar een ervaren PHP developer die zichzelf graag bezighoudt met zaken als architectuur en de algehele verbetering van structuren en standaarden. Het is eigenlijk meer operationeel als uitvoerend omdat je bezig gaat met zaken als het verder uitrollen en verbeteren van testautomatisering, codereviews, tickets en de doorloop hiervan en architectuurkeuzes. Mocht je hiernaast ook wat DevOps kennis meenemen is dit mooi meegenomen! Vanwege het kleine team maar de wereldwijde impact die zij leveren is er veel focus op kwaliteit. In deze functie werk je aan één van hun belangrijkste applicaties. Hierin werk je nauw

Bekijk vacature »

Senior Front-End Developer

Als Senior Front-End Developer bij Coolblue verbeter je de gebruiksvriendelijkheid van onze webshop voor miljoenen klanten. Wat doe je als Senior Front-End Developer bij Coolblue? Als Senior Front-end Developer werk je aan de gebruiksvriendelijkheid van onze webshop voor miljoenen klanten. Je vindt het leuk om samen te werken met de UX designer om stories op te pakken. Daarnaast ben je trots op je werk en verwelkomt alle feedback. Ook Senior Front-end Developer worden bij Coolblue? Lees hieronder of het bij je past. Dit vind je leuk om te doen Verbeteren van de gebruiksvriendelijkheid van onze webshop voor miljoenen klanten. Nadenken

Bekijk vacature »

Front-end React developer

Functie Het frontend team bestaat momenteel uit 4 dedicated front-enders en is hard aan het groeien! Ook werken er diverse designers waar je veel mee schakelt. Samen leveren jullie een essentiële bijdrage aan de applicaties die ze voor hun klanten realiseren, jij bent hierin de schakel tussen de eindgebruiker en de slimme backend. Je werkt in het frontend team samen met de backend teams en product owners om te zorgen dat onze applicaties een fijne gebruikerservaring opleveren. Ze werken o.a. met: React, Atomic design, Styled components, JavaScript / TypeScript, NPM, Webpack Blade templates, HTML, SCSS, Git flow. Eisen • HBO

Bekijk vacature »

Full stack developer Node.js, React Remote

Functie Als fullstack JavaScript developer vind jij het uitdagend om op basis van concrete klantvragen nieuwe functionaliteiten te ontwikkelen. Bij voorkeur worden deze functionaliteiten op een bepaalde manier geprogrammeerd, zodat ze door meerdere klanten te gebruiken zijn. Je hebt dus vaak te maken met abstracte vraagstukken. Om dit te kunnen realiseren sta je nauw in contact met de product owner en/of klant. Je bent niet alleen onderdeel van het development team, maar hebt ook vaak contact met de product-owner en/of klanten om daardoor inzichten te verzamelen die leiden tot productverbeteringen. • Inzichten verzamelen bij de klant en/of product owner •

Bekijk vacature »

Senior Airport Developer ( System engineer)

De functie Nice to know (you) De nieuwe A-pier wordt de duurzaamste van Schiphol. Als deze af is ligt er 4000 vierkante meter zonnepanelen op het dak. En de toiletten? Die spoelen door met regenwater. we gaan ervoor: het creëren van de meest duurzame en hoogwaardige luchthavens ter wereld. een toekomstbestendig en duurzaam Schiphol. Daar werken we elke dag hard aan in team Development & Sustainability. Jij bent regisseur, expert én aanjager van de ontwikkeling van Schiphol. Connecting your world Hoe maak je de ambities en doelstellingen van Schiphol concreet in een project? De waarde voor Schiphol naar eisen die

Bekijk vacature »

Senior SQR Java Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Eindhoven Vacature ID: 13333 Introductie Are you passionate about contributing to the world's most advanced machines. Do you thrive in a challenging environment working with highly motivated and skilled teams? If so, we have the perfect opportunity for you! We are seeking a Senior Software Design Engineer for Sequence Tooling to play a critical role in creating and maintaining mission-critical software applications. In this role, you will focus on achieving maintainable software architecture that is transparent and easy to extend while maintaining a strong focus on software quality. You will work closely with

Bekijk vacature »

Randstad B.V.- Freelance Senior Fullstack Develope

Startdatum: 01.05.2023 Richttarief: € 75,00 - €85,00 Duur van de opdracht: 1 jaar Uren per week: 40 Werkmodel: Hybride, dinsdag en donderdag aanwezig op kantoor in Diemen en meer wanneer dit nodig is. Functieomschrijving: De ideale kandidaat gaat onderdeel uitmaken van een junior team binnen het foundation domein. Vanuit het foundation domein werkt dit team samen met andere foundation teams en teams uit het online domein (professionals B2B en B2C) voor het bouwen en integreren van HRM functionaliteiten (verlof en benefits) in de persoonlijke portal van Interim Professionals. Er is meer backend werk dan frontend, maar kandidaat moet beiden leuk

Bekijk vacature »

Low Code Developer

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en ben jij HBO afgestudeerd in de richting van IT? Heb jij verstand van datamodellering, NO CODE Platformen en kun jij het aan om projecten te leiden? Voor een leuke opdrachtgever in omgeving Rotterdam zijn wij op zoek naar een No Code developer die zich bezig gaat houden met het optimaliseren van bedrijfsprocessen bij klanten in heel het land! Wat ga je hier zoal doen? Je gaat geen code kloppen maar bedenken hoe applicaties eruit moet komen te zien. Je gaat werken met een non code platform, je kunt denken aan

Bekijk vacature »
Johan Steel

Johan Steel

28/04/2020 22:41:00
Quote Anchor link
Beste forum leden,

Graag zou ik van jullie kennis gebruik maken. Ik probeer een image gallery op te zetten en ben al behoorlijk ver gekomen (al zeg ik hetzelf :-)). Gelukkig is er een hoop te vinden op het internet omtrent dit onderwerp.

Maargoed, toch loop ik helaas vast en mijn hoop is dat iemand van het forum mij kan helpen. Ik probeer in een tabel 3 plaatjes per rij weer te geven en dat lukt ook. Het probleem is dat het dezelfde plaatjes zijn :-(. De rij die hieronder ontstaat, laat wel een nieuw plaatje zien, maar spuugt deze ook weer drie keer uit. En zo gaat het door, totdat het zoekresultaat volledig is uitgespuugt. Mijn vraag: hoe zorg ik er in onderstaande code voor dat er drie unieke plaatjes per rij worden weergegeven?

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
<?php
              if(isset($_POST['submit-search'])){
                $morph1=$_POST['morph1'];
                $sql1 = "SELECT * FROM dataset2 WHERE morph LIKE '$morph1'ORDER BY full_name ASC ";
                $result1 =  mysqli_query($conn, $sql1);
                $queryResult1 = mysqli_num_rows($result1);

                if($queryResult1 > 0){
                 while($row = mysqli_fetch_assoc($result1)){
                      echo"
                            <div><tr><td>
                              <img src='images/"
.$row['photo_id'].".jpg'><br>
                              <b>"
.$row['common_name']."</b><br>
                              <i>("
.$row['full_name'].")</i><br>
                              </td></div>

                              <div><td>
                              <img src='images/"
.$row['photo_id'].".jpg'><br>
                              <b>"
.$row['common_name']."</b><br>
                              <i>("
.$row['full_name'].")</i><br>
                              </td></div>

                              <div><td>
                              <img src='images/"
.$row['photo_id'].".jpg'><br>
                              <b>"
.$row['common_name']."</b><br>
                              <i>("
.$row['full_name'].")</i><br>
                              
                              </td></tr></div>"
;

          }
          }
          }

          ?>


Alvast bedankt!

Johan
 
PHP hulp

PHP hulp

22/12/2024 03:30:13
 
Bart Smulders

Bart Smulders

28/04/2020 22:56:28
Quote Anchor link
Beste Johan,
Nummer 1 is dat jou script vatbaar is voor injection.

Nummer 2 is dat je $row['photo_id'] er ook 3x in zet wat door het gebruik van je While dan ook vermenigvuldigd wordt tot deze op het einde is gekomen.

Bij je query kan je limit gebruiken waardoor je het resultaat begrenst op 3.
$sql1 = "SELECT * FROM dataset2 WHERE morph LIKE '$morph1'ORDER BY full_name ASC LIMIT 3 ";

Dan krijg je

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
<?php
  if(isset($_POST['submit-search'])){
                 // Eerst user input controleren anders injection
                $morph1=$_POST['morph1'];

                $sql1 = "SELECT * FROM dataset2 WHERE morph LIKE '$morph1'ORDER BY full_name ASC LIMIT 3 ";
                $result1 =  mysqli_query($conn, $sql1);
                $queryResult1 = mysqli_num_rows($result1);

                if($queryResult1 > 0){
                 while($row = mysqli_fetch_assoc($result1)){
               echo"
<div>
    <tr>
         <td>
             <img src='images/"
.$row['photo_id'].".jpg'>
             <b>"
.$row['common_name']."</b> \r\n
             <i>("
.$row['full_name'].")</i> \r\n
        </td>
   </tr>
</div>
"
;      

          }
          }
          }

?>


En indien je de gegevens niet telkens in een nieuwe div wil tonen kan het ook zo

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
<?php
 if(isset($_POST['submit-search'])){
                 // Eerst user input controleren anders injection
                $morph1=$_POST['morph1'];

                $sql1 = "SELECT * FROM dataset2 WHERE morph LIKE '$morph1'ORDER BY full_name ASC LIMIT 3 ";
                $result1 =  mysqli_query($conn, $sql1);
                $queryResult1 = mysqli_num_rows($result1);

                if($queryResult1 > 0){
                 while($row = mysqli_fetch_assoc($result1)){
      
$MijndatabaseGegevens[]=$row;
          }

echo'<div>';
foreach($MijndatabaseGegevens as $item){
    echo"
     <tr>
         <td>
             <img src='images/"
.$item['photo_id'].".jpg'>
             <b>"
.$item['common_name']."</b> \r\n
             <i>("
.$item['full_name'].")</i> \r\n
        </td>
   </tr>
   "
;
}
    

echo'</div>';                    
          }
          }


?>
Gewijzigd op 28/04/2020 23:05:13 door Bart Smulders
 
- Ariën  -
Beheerder

- Ariën -

28/04/2020 22:58:38
Quote Anchor link
Logisch, want zit in een iteratie waar je een dezelfde item gebruikt.

Pas je HTML in de loop aan om een enkel item te tonen. Met de modulo-operator kan je kijken of het aantal deelbaar is door drie, zodat je dan een nieuwe rij kan starten.

Overigens hoef je geen tabellen te gebruiken. CSS is krachtig genoeg om te bereiken wat je wilt. Voornamelijk is 'flexbox' het magische woord.
 
Thomas van den Heuvel

Thomas van den Heuvel

29/04/2020 02:20:34
Quote Anchor link
- Ariën - op 28/04/2020 22:58:38:
Met de modulo-operator kan je kijken of het aantal deelbaar is door drie, zodat je dan een nieuwe rij kan starten.

Of gewoon wat divjes floaten in een container?

- Ariën - op 28/04/2020 22:58:38:
Overigens hoef je geen tabellen te gebruiken. CSS is krachtig genoeg om te bereiken wat je wilt. Voornamelijk is 'flexbox' het magische woord.

Of dat dus inderdaad.
 
Johan Steel

Johan Steel

29/04/2020 11:04:21
Quote Anchor link
Gents,

Dank voor jullie snelle antwoord!

@Bart, scherp je opmerking over injection, thanks! Het limieteren van de query werkt, echter aangezien de resultaten variabel zijn en veelal meer dan 3, niet toepasbaar in dit geval.

@Ariën, Flexbox was de gouden tip! Veel dank.

@Thomas, dank voor het meedenken.

Nu verder stoeien met de layout en flexbox.

Groet,

Johan
 
- Ariën  -
Beheerder

- Ariën -

29/04/2020 11:16:49
Quote Anchor link
Fijn dat het lukt. Laat je de oplossing ook even weten?
 
Johan Steel

Johan Steel

29/04/2020 11:54:07
Quote Anchor link
Ik ben er nog mee aan het stoeien, qua layout. Maar de oplossing is in ieder geval:
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
36
37
38
39
40
41
42
43
44
              .container{
                width:60%;
                height:100%;
                margin-left: auto;
                margin-right: auto;
                background-color:white;
                font-size: 13px;

                display: flex;
                flex-wrap: wrap;
                flex-direction: row;
                justify-content: space-evenly;
            

              }

        </style>
      </head>

 <section class="container">

          <?php
              if(isset($_POST['submit-search'])){
                $morph1=$_POST['morph1'];
                $sql1 = "SELECT * FROM dataset2 WHERE morph LIKE '$morph1'ORDER BY full_name ASC ";
                $result1 =  mysqli_query($conn, $sql1);
                $queryResult1 = mysqli_num_rows($result1);

                if($queryResult1 > 0){
                 while($row = mysqli_fetch_assoc($result1)){
                      echo"   <div>
                              <img src='images/"
.$row['photo_id'].".jpg'><br>
                              <b>"
.$row['common_name']."</b><br>
                              <i>("
.$row['full_name'].")</i><br>
                              </div>"
;

          }
          }
          }

          ?>

</section>

  </body>
</html>


Toevoeging op 29/04/2020 22:33:01:

Nog even terugkomend op bovenstaande code, weet iemand misschien waarom de HTML code in de <div> niet goed werkt? De <br> werkt wel, maar alles is vet? Een class attribute in het <div> element maken werkt helaas ook niet (wat wel handig zou zijn voor de image gallery). Wat doe ik verkeerd?

Groet, Johan
Gewijzigd op 12/05/2020 17:02:15 door - Ariën -
 
- Ariën  -
Beheerder

- Ariën -

12/05/2020 16:56:01
Quote Anchor link
Oef, ik zie SQL-injection in $morph1!!!! (waarom genummerd?)

Geen idee waarom je output vetgedrukt is. Ik denk dat je een overrulende styling hebt?
 
Johan Steel

Johan Steel

12/05/2020 17:13:26
Quote Anchor link
Hi Ariën,

Dank voor je reactie! Inmiddels heb ik bovenstaand zelf uitgevogeld, het probleem zat hem in de haakjes ' ipv ". Echt zo`n beginners dingetje, zal niet nogmaals gebeuren :-)

Wat betreft de injectie, dank voor de tip. Ik wil eerst de code werkend hebben en ga daarna met de veiligheid aan de slag.

Ik heb nog wel een andere vraag, maar om een hele lange draad met verschillende topics te voorkomen, zal ik een nieuwe openen.

Groet,

JOhan
 
- Ariën  -
Beheerder

- Ariën -

12/05/2020 17:24:34
Quote Anchor link
Nee, veiligheid zou ik niet als laatste doen als ik jouw was.
Doe dat dan liever direct of zet het hoog op je lijst.

Hoe meer je niet beveiligd hebt, hoe zeerder het doet als je iets vergeet.
Gewijzigd op 12/05/2020 17:26:23 door - Ariën -
 



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.