Image gallery &PHP

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Front-end Developer

Dit ga je doen Het onderhouden, ontwikkelen en testen van front-end software van diverse klant- en medewerkersapplicaties; Het ontwikkelen van maatwerk front-end oplossingen in Vue.js en participeren in een scrumteam; Mede-verantwoordelijk voor het begeleiden en coachen van drie junior front-end developers; Verantwoordelijk voor code-reviews en het opstellen van de juiste documentatie zoals userstories en API ontwerp; Participeren in diverse projecten t.b.v. optimalisatie van diverse applicaties; Het opzetten van API koppelingen met externe applicaties. Hier ga je werken Betreffende organisatie is gevestigd in de regio van Swifterbant en is al ruim 20 jaar lang bedreven in het ontwikkelen en aanbieden van

Bekijk vacature »

PHP Developer

Functie omschrijving Voor een bedrijf in Den Bosch zoek ik een PHP Developer, die al wat werkervaring heeft. Jij gaat aan de slag met de verdere professionalisering van de interne applicaties en software. In de functie ga je verder: Verdere ontwikkeling eigen CRM systeem, vooral middels PHP; Bouwen van verschillende API's & koppelingen; Meedenken om de software/applicaties te verbeteren/optimaliseren; Aan de slag met de interne tooling. Bedrijfsprofiel Dit bedrijf is actief binnen de telecombranche. Het hoofdkantoor zit in regio van Den Bosch en er werken ruim 70 medewerkers, verdeeld over verschillende afdelingen. De afdeling Development bestaat uit vijf collega's, onder

Bekijk vacature »

Fullstack developer - medior

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en zou jij graag bij een platte maar informele organisatie willen werken? Voor een mooi softwarebedrijf in omgeving Gorinchem zijn wij op zoek naar versterking. Als Fullstack developer wordt je bij dit bedrijf onderdeel van de volledige ontwikkeling van requirement tot oplevering! Werkzaamheden Jouw focus ligt op de front end en alles wat daarbij komt kijken. Je gaat ontwerpen, ontwikkelen, testen en valideren. Je zult voornamelijk werken met React.js en Typescript. Maar ook Javascript, HTML en CSS komen aanbod. Daarnaast zal je ook regelmatig met de back end werken! Bedrijfsprofiel Onze

Bekijk vacature »

Back-end .NET Developer

Functie omschrijving C# / .NET Developer gezocht voor een dynamische organisatie in de regio Houten! Voor een leuke organisatie in de regio Houten zijn wij op zoek naar een Back-end developer die klaar is voor een nieuwe uitdaging. In deze functie werk jij aan verschillende projecten en ga je vaak bij klanten op bezoek. Binnen deze functie kun je een grote mate van uitdaging, diversiteit en verantwoordelijkheid treffen. Bedrijfsprofiel Waar ga je werken? Het bedrijf waar je gaat werken is gespecialiseerd in het ontwerpen en implementeren van procesautomatisering en procesinformatisering. Zij doen dit onder andere voor de (petro)chemie, pharma, infra,

Bekijk vacature »

Database Developer

Functieomschrijving Wat ga je doen? Als developer ben jij samen met een gemotiveerd team van 10 collega’s verantwoordelijk voor het creëren van aangemeten software voor klanten. Je bent klantvriendelijk en oplossingsgericht ingesteld, omdat het essentieel is om de klanten zo goed mogelijk te helpen met hun uitdagingen. Het is mogelijk om vanuit huis je werkzaamheden uit te voeren, maar het is ook prettig als je in de omgeving van Tilburg woont om naar het kantoor te kunnen komen. Vind jij het leuk om jouw creatieve vaardigheden te benutten om complexe systemen te ontwikkelen? Lees dan snel verder! Bedrijfsprofiel Voor wie

Bekijk vacature »

Back-end developer (Magento2)

Functie E-commerce is een ‘’snelle’’ wereld. Om hierin continu voorop te blijven omarmen ze in een vroeg stadium nieuwe technieken. Een webshop is nooit af en kan altijd beter, sneller en efficiënter. Tegelijkertijd hebben ze vanaf hun oprichting altijd vastgehouden aan kwaliteit boven snelheid, en dit loont. Als back-end developer fungeer je als het verlengstuk van hun klanten. Technisch complexe zaken pak je met liefde op, en hierin werk je samen met o.a. front-end developers en designers. Klanten verwacht hierin kwaliteit van het hoogste niveau en een proactieve, meedenkende rol bij het maken van zowel technische als strategische keuzes. Ga

Bekijk vacature »

Fullstack JavaScript Developer Webapplicaties

Bedrijfsomschrijving Voor deze organisatie ben ik op zoek naar een getalenteerde Fullstack JavaScript Developer. Ze is een snelgroeiend software development agency dat zich richt op het ontwikkelen van moderne webapplicaties en complexe systemen voor haar klanten. Ze is gevestigd onder de rook van Utrecht en heeft als doel om tot de top van de Nederlandse agencies te behoren. Deze organisatie maakt softwareoplossingen voor verschillende soorten bedrijven. Innovatie staat hoog in het vaandel en je zult dus met nieuwe technieken aan de slag gaan. Ze hebben klanten in vele branches zitten, zoals retail, finance, gezondheid en onderwijs. De diverse klanten zorgen

Bekijk vacature »

Software Ontwikkelaar .NET te Zaandam

Bedrijfsomschrijving Je komt hier terecht bij een door-en-door softwarebedrijf, waarbinnen meerdere SaaS pakketten worden ontwikkelt voor diverse sectoren. Hierbij kun je denken aan bijvoorbeeld de logistieke en medische branche. Deze organisatie kenmerkt zich door de hoge mate van complexiteit in de applicaties, wat betekent dat jij je hier niet zal gaan vervelen. Integendeel: Jij gaat hier elke dag ontzettend veel leren en je in razend tempo ontwikkelen als C# .Net Developer met focus op back-end. Het team bestaat uit ongeveer 20 personen personen, waarvan het grootste deel zich richt op software development. De sfeer is informeel en professioneel. De producten

Bekijk vacature »

Junior/medior PHP developer Onderwijssector

Functie Momenteel zijn ze op zoek naar een developer die, veelal fullstack, mee gaat werken aan de ontwikkeling van de producten en zo helpt aan de uitvoering van hun ontwikkelprojecten. Je komt te werken binnen hun development team bestaande uit 6 ontwikkelaars. Ze staan zowel open voor meer junior als medior/senior developers. Je kunt snel veel verantwoordelijkheid krijgen en doorgroeien binnen het bedrijf. Bovendien ben je betrokken bij het bepalen van de product roadmap en de inbreng van (nieuwe) technologieën. De applicaties waaraan je werk worden gebruikt op onderwijsinstellingen door heel Nederland. De tech-stack bestaat voornamelijk uit Laravel (PHP), Vue.js

Bekijk vacature »

Full Stack Developer/ Applicatie Ontwikkelaar

Wat jij doet Als Applicatie Ontwikkelaar ben je onderdeel van het team die de Rimote omgeving ontwikkeld en onderhoud. Hierbij kan je denk aan de cloud, on premise en webapplicaties welke worden gebruikt in bijvoorbeeld industriële bakkerijen, biogasinstallaties en kwekerijen. Deze applicaties verzorgen (remote) de aansturing en monitoring van processen, machines en robots. Van a tot z ben je betrokken bij projecten. Dit betekent vanaf ontwerp tot oplevering. Je moet samen met jouw team een goed product neer zetten. Dit begint met het opzetten van het ontwerp. De basis van de software moet staan als een huis. Daarvoor moet jij

Bekijk vacature »

Traineeship Full Stack Java developer

Dit ga je doen Start jij op 7 augustus bij de Experis Academy dan kickstart jij jouw IT-carrière! We leiden je op tot een gewilde Full Stack Java Developer met alle kennis en vaardigheden die nodig zijn om de arbeidsmarkt te betreden. Wat kun je verwachten, hoe zit een dag in het leven van een Trainee eruit? Periode 1 Als Full Stack Java Developer Trainee volg je vanuit huis een op maat gemaakte onlinetraining die in het Engels wordt gegeven. De tijd die je kwijt bent aan het volgen van de training kun je vergelijken met een fulltime werkweek. In

Bekijk vacature »

HBO startersfunctie .NET Ontwikkelaar

Functie omschrijving We are looking for a dutch native speaker Ben je in januari 2023 klaar met je HBO opleiding en zoek je een mooie uitdaging? Wacht niet langer en solliciteer direct! Voor een familiebedrijf in de regio van Boxtel ben ik op zoek naar een C#.NET Ontwikkelaar. Jij gaat aan de slag met de (door)ontwikkeling van de maatwerksoftware projecten en gaat ook nieuwe software bouwen, middels de Microsoft-stack. Het bedrijf maakt gebruik van de volgende technieken: C# & ASP.NET; MVC; MS SQL; Entity Framework; Je krijgt hier veel tijd om te leren en eventueel door te groeien en het

Bekijk vacature »

Senior Front-end developer

Functie Als front-end developer ga je aan de slag voor verschillende klanten, waarbij veel rekening wordt gehouden met waar je woont (dit is altijd binnen het uur), en word er gezocht naar een organisatie die past bij jou. Zowel qua persoonlijke ambities als de technische aansluiting. De opdrachten duren gemiddeld 1 à 2 jaar maar dit hangt ook af van je wensen. Je werkt in een teamverband voor een klant en zult nauw samenwerken met zowel eigen collega’s als die bij de klant werkzaam zijn. Ze zijn op zoek naar een technische front-end developer die ruime ervaring heeft in één

Bekijk vacature »

Fasttrack learning & development voor Java dev

Wat je gaat doen: Wij zoeken enthousiaste en ambitieuze junior en medior ontwikkelaars die toe zijn aan de volgende stap in hun carrière. Wij helpen je op je pad naar senior ontwikkelaar door ons fasttrack learning en development programma. Na een kort en intensief programma ga jij aan de slag bij klanten van DPA. Daarnaast krijg je veel ruimte om je te ontwikkelen als persoon en als specialist. De eerste maand gaan we aan de slag om je certificeringen te behalen waaronder OCP (Oracle Certified Professional). Daarnaast nemen we een deepdive in Spring Boot. Ook laten we je kennismaken met

Bekijk vacature »

Java Front-end Developer

Dit ga je doen Ontwikkelen van nieuwe functionaliteiten in Java met tools als Springboot, MS SQL Server (T-SQL) en JavaScript; Het onderhouden van de (web-)applicaties binnen een complexe omgeving; Werken aan de migratie van een monolithisch systeem naar een architectuur gebaseerd op Kubernetes; Code reviews met collega's en actieve kennisuitdelingsessies voeren; Het uitvoeren van unit- en systeemtests Experimenteren met nieuwe tools en technieken. Hier ga je werken Binnen deze organisatie kom je te werken op de afdeling die gegevens verzamelt vanuit het hele land. Denk hierbij aan vertrouwelijke persoonsgegevens. Het team verwerkt al deze data met als doel het waarborgen

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

01/11/2024 02:32:21
 
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.