$_GET['id'] controleren

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

PHP developer (Symfony, Doctrine)

Functie Als PHP developer wordt er een hoge mate van zelfstandigheid verwacht, maar ook dat je goed opereert in een team waar kennis wordt gedeeld en dingen als codereviews erg veel voorkomen. Kwaliteit staat voorop, mede hierom werken ze bijvoorbeeld zonder echte deadlines in hun sprints. De SaaS-applicatie wordt volledig ontwikkeld in PHP en Symfony. De module bestaat uit een stuk informatie verrijking en intelligentie wat resulteert in een medische check. De logica wordt daarom in de code geïntrigeerd. Je bent onder andere bezig met complexe databases waar meer dan 80.000 medicijnen op verschillende niveaus in staan, die maandelijks worden

Bekijk vacature »

Back-End Developer in Laravel / PHP

Functie omschrijving Wij zijn op zoek naar een Medior PHP Laravel Developer voor een gaaf bedrijf in de omgeving van Amsterdam! Voor een enthousiast team die zich graag bezig houdt met softwareontwikkeling zijn wij op zoek naar versterking. Je werkt in een klein ontwikkelteam en bent zeer betrokken bij alle aspecten van de softwareoplossingen. Van het ontwerpen tot de oplevering. Binnen deze functie ga je aan de slag met het aanpassen, verbeteren en vernieuwen van de logistieke oplossingen. Je krijgt veel te maken met koppelingen naar systemen en de verzoeken van de klant. Je komt terecht in een team, waarbij

Bekijk vacature »

Front end developer binnen de consultancy

Functie Je komt in een team met ambitieuze developers die de passie voor Front-End met jou delen. Samen ga je aan de slag met leuke en leerzame opdrachten. Het team heeft een eigen budget en financiën en zij bepalen zelf hoe dat besteed en investeert wordt. Je gebruikt tools als JavaScript, Node.js, React, Angular, Typescript en Vue.js wanneer je werkt aan de opdrachten. Daarnaast zul je veel leren van je collega’s en gezamenlijk een leuke tijd doorbrengen tijdens activiteiten zoals wintersport, hackatons en conferentiebezoeken. Je krijgt niet alleen de mogelijkheid Front-End te ontwikkelen, maar ook vooral jezelf. Dit kan behaald

Bekijk vacature »

Lead Front-end developer

Functie Hun huidige applicatie worden ontwikkeld in o.a. React, Redux, TypeScript. Ze werken graag met de nieuwste technieken en tooling en zoeken ook developers die hier proactief op zoek naar gaan. Als senior/lead developer ben je een kartrekker in het team. Naast het meedenken over bijvoorbeeld de architectuur of toepassing van nieuwe technieken krijg je ook veel tijd om de meer junior (front-end) developers te begeleiden. Zo kun je bijvoorbeeld 1 dag in de week met 2 collega’s bezig zijn om samen met hen te kijken naar hun ontwikkeling, doelstellingen en uiteraard de gewenste begeleiding hierin. Hiernaast sta je als

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 »

Junior .NET Developer

Dit ga je doen Ontwikkelprocessen verder optimaliseren en verder ontwikkelen met C#; CI/CD-pipelines automatiseren; Ontwikkelen van herbruikbare componenten; Front-end pagina's gebruiksvriendelijk maken. Hier ga je werken Als junior .NET Developer kom je terecht binnen een grote en internationale organisatie. Zij streven naar een positieve impact op de mens, milieu en maatschappij. Het bedrijf is oorspronkelijk een familiebedrijf en werkt aan de productie van hoogwaardige en technische systemen voor de gezondheidszorg. Momenteel willen zij betere ontwikkelprocessen creëren op internationaal gebied en staat kwaliteit en veiligheid voor hun op nummer 1! Als junior .NET Developer werk je aan het ontwikkelen van verbeterde

Bekijk vacature »

Applicatieontwikkelaar ABAP

Bedrijfsomschrijving Functieomschrijving De kandidaat zal worden ingezet binnen een van de DevOps teams binnen SCI (Service Centrum Inburgering) voor het ontwerpen en bouwen in SAP ABAP van de binnen SCI gebruikte informatiesystemen. Voornaamste voorkomende werkzaamheden zijn het aanpassen van en bouwen van nieuwe programmatuur in ABAP (Objects), waarbij ook gebruikt wordt gemaakt van DDD (Domain Driven Design) en het opstellen/aanpassen van Functionele/Technische ontwerpen. Daarnaast moeten ook formulieren met SAP Smartforms worden aangepast. Verder speelt de overgang naar SAP4Hana en SAP CPI. Vanwege het veelvuldig gebruik van SAP PO is kennis hiervan een pré. Achtergrond opdracht Momenteel werken meerdere DevOps teams

Bekijk vacature »

SQL ontwikkelaar

Functieomschrijving Voor een gave werkgever in regio Breda zijn wij per direct op zoek naar een SQL ontwikkelaar/ functioneel consultant. Hier wordt jij mede verantwoordelijk voor zowel de design en implementatie van SQL-databases als voor het verstaan van de processen van klanten naar het vertalen van deze processen naar IT-oplossingen. Jouw takenpakket komt als volgt uit te zien: Je test de ontwikkelde oplossingen om er zeker van te zijn dat deze voldoen aan de functionele specificaties en de behoeften van de organisatie; Je ontwerpt, ontwikkelt en implementeert SQL-databases om de data behoeften van de organisatie te ondersteunen; Je stelt op

Bekijk vacature »

Account Developer

Voor Bol.com zijn wij per direct op zoek naar een Account Developer voor 32-40 uur per week op het kantoor in Utrecht. Wil jij een directe bijdrage leveren door partners van de juiste data-inzichten te voorzien en via campagnes op nieuwe platformkansen en features te wijzen? Ben jij analytisch sterk en kun jij dit vertalen naar plannen en inspirerende gesprekken? Lees dan snel verder! wat bieden wij jou Salaris van €2400 - €2600 obv 40 uur Minimaal 6 maanden Werklocatie is Utrecht Werken bij bol.com wie ben jij Jij bent commercieel gedreven en weet altijd aan de juiste knoppen te

Bekijk vacature »

Junior .NET developer

Functie Als junior .NET Core developer wordt jij onderdeel van ons team met drie breed ontwikkelde software engineers en een flexibele schil met zes ervaren freelancers. Jij gaat mee in de visie van onze organisatie om als IoT partner in deze branche specifieke markt “het” platform te blijven innoveren en deze ook steeds slimmer te maken. Wij hopen dan ook zeker dit in de toekomst te kunnen realiseren met bijvoorbeeld Artificial Intelligence. De architectuur van ons platform is opgemaakt uit een deel eigen protocol, een interface laag en een laag welke de protocollen van derde partijen vertaald naar het eigen

Bekijk vacature »

Java Developer (Training And Simulation)

Wat jij doet Je zou onze Java Developer zijn en nauw samenwerken met je Product Owner, Software System Engineer, Scrum Master en andere Developers. Samen draag je bij aan een multidisciplinair en zelf organiserend Agile team. De rol is zeer afwisselend en bestaat uit, maar is zeker niet beperkt tot: de-risk en prototype onbewezen simulatietechnologieën; simulatiekaders ontwikkelen voor gebruik door andere teams; je bent goed in het begrijpen van ingewikkelde ideeën; heeft de mogelijkheid om nauw samen te werken met grote internationale klanten, leveranciers en overheden om onze oplossingen, vastleggingsvereisten, enz. te definiëren en te presenteren. Ben jij het? Wij

Bekijk vacature »

Laravel / PHP developer gezocht!

Functie omschrijving Wij zijn op zoek naar een Laravel PHP Developer voor een leuk bedrijf in de omgeving van Amsterdam! Je zult je bezig houden met de volgende werkzaamheden: Je gaat aan de hand van de wensen van klanten software ontwikkelen; Je bent bij het gehele proces betrokken; van A tot Z; Je hebt na de oplevering contact met de klant wanneer zij problemen ervaren; Je denkt mee over het verbeteren van de werkprocessen; Je denkt mee over softwareoplossingen; Je speelt in op de behoefte van de klant; Je houdt je bezig met het verbeteren, aanpassen en vernieuwen van de

Bekijk vacature »

Front-End React Developer

As a Front-End React Developer you improve the user-experience of our web applications for your colleagues in Coolblue. How do I become a Front-End React Developer at Coolblue? As a Front-End React Developer you are responsible for developing user interface components and implementing them using React.js concepts and workflows. You work with the UX Designer and get energy from coming up with creative solutions and present these within the team. During the day you gather and welcome feedback on your technical and soft skills. Would you like to become a Front-End React Developer at Coolblue? Read below if the job

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 »

Backend Developer PHP Laravel SaaS

Dit ga je doen Het ontwikkelen van nieuwe features die bijdragen aan de groei van de klanten van de organisatie; Je denkt mee over nieuwe innovaties, features en verbeteringen in de applicatiearchitectuur; Je draagt bij aan de continue ontwikkeling van jouw team doordat je elke dag streeft naar het verbeteren van jouw eigen prestaties; Je neemt actief deel aan Scrum meetings en de Backend Guild. Hier ga je werken Voor een snel groeiend bedrijf, in de regio Nieuw Vennep, zijn wij opzoek naar een ervaren Backend Developer. De organisatie is actief in de e-commercebranche en ontzorgt haar klanten middels een

Bekijk vacature »
Michael Brouwer

Michael Brouwer

10/02/2013 15:10:09
Quote Anchor link
Hallo,

Via een $_GET['id'] wil ik een waarde ophalen uit me database, dit werkt wel. Nu is alleen het probleem dat als ik een id invul die niet bestaat in de database krijg ik een lege pagina. Graag zou ik dan een 404 pagina willen laten zien. Hoe kan ik de voor elkaar krijgen.

Onderstaande script gebruik ik nu.

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
<?php
if(isset($_GET['id']) && is_numeric($_GET['id']))
{

    $sql='
        SELECT
            *
        FROM
            news
        WHERE
            id = '
.$_GET['id'].'
    '
;
    
    if (!($temp = mysql_query($sql, $connection)))
    showerror();
    
    while ($news= mysql_fetch_array($temp))
    {

    }
    
}
else {

}

?>
 
PHP hulp

PHP hulp

28/03/2024 12:25:43
 
Mebus  Hackintosh

Mebus Hackintosh

10/02/2013 15:16:12
Quote Anchor link
Net zoals bij 'Bas D L': Lees misschien nog eens een MySQL tutorial door.. Je kan ook mysql_num_rows gebruiken of
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
SELECT COUNT(*) AS aantal FROm tabel


Kijk ook eens hier: http://www.phphulp.nl/php/forum/topic/if-else-query-leeg-is/89181/last/

edit:
Frank zijn oplossing is beter, sorry! Maar mijn oplossing zou ik ook gebruiken omdat als een id wel een getal is maar in je database niet de record ervan bestaat je ook niet erg veel te zien krijgt.
Gewijzigd op 10/02/2013 15:19:38 door Mebus Hackintosh
 
Frank Nietbelangrijk

Frank Nietbelangrijk

10/02/2013 15:16:42
Quote Anchor link
Zoiets?
voor header() mag geen enkele output plaatsvinden anders krijg je een foutmelding.

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
<?php
$id
= 0;
if(isset($_GET['id']))
  $id = intval($_GET['id']);

if($id > 0)
{

    $sql='
        SELECT
            *
        FROM
            news
        WHERE
            id = '
.$_GET['id'].'
    '
;
    
    if (!($temp = mysql_query($sql, $connection)))
    showerror();
    
    if(mysql_num_rows($temp) == 0)
        header("HTTP/1.0 404 Not Found");
        
    while ($news= mysql_fetch_array($temp))
    {

    }
    
}
else {
    header("HTTP/1.0 404 Not Found");
}

?>
Gewijzigd op 10/02/2013 15:28:10 door Frank Nietbelangrijk
 
Frank WD

Frank WD

10/02/2013 15:17:57
Quote Anchor link
Of opvangen met een .htaccess bestand
[url=http://www.homepage-maken.nl/htaccess/error-pages.php}KLIK[/url]
 
Eddy E

Eddy E

10/02/2013 15:27:16
Quote Anchor link
Frank NietBelangrijk: en als je id=38245845345363442463523425264 invoert gaat hij toch gewoon lekker in de database op zoek en kom je dus niet bij de 404 uit.

Ik zou het zo doen:
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
45
<?php

    function error($nummer)
    {

        if($nummer == 404)
        {

            header("Status: 404 Not Found");
        }
    }


    if(isset($_GET['id']) AND is_int($_GET['id']))
    {

        $id = $_GET['id'];

        $sql = '
        SELECT
           kolom, kolom, kolom
        FROM
            news
        WHERE
            id = '
. $_GET['id'] . ' ';

        if( !($temp = mysql_query($sql, $connection)))
        {

            showerror();
        }


        $error = true;
        while($news = mysql_fetch_array($temp))
        {

            // je eigen dingen
            $error = false;
        }


        if($error == true)
        {

            error(404);
        }

    }

    else
    {
        error(404);
    }

?>


Uiteraard zou je ook de andere nummers in kunnen zetten (500 etc).
 
Michael Brouwer

Michael Brouwer

10/02/2013 15:28:40
Quote Anchor link
Thanks voor alle tips! Hier kan ik wel wat mee :D
 
Frank Nietbelangrijk

Frank Nietbelangrijk

10/02/2013 15:29:36
Quote Anchor link
Klopt Eddy, ik heb er inmiddels nog wat aan gewijzigd.

Toevoeging op 10/02/2013 15:31:21:

Michael, belangrijk is wel om intval te gebruiken omwille van de beveiliging
 
Mebus  Hackintosh

Mebus Hackintosh

10/02/2013 15:32:10
Quote Anchor link
Eddy E op 10/02/2013 15:27:16:
Frank NietBelangrijk: en als je id=38245845345363442463523425264 invoert gaat hij toch gewoon lekker in de database op zoek en kom je dus niet bij de 404 uit.

Ik zou het zo doen:
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
45
<?php

    function error($nummer)
    {

        if($nummer == 404)
        {

            header("Status: 404 Not Found");
        }
    }


    if(isset($_GET['id']) AND is_int($_GET['id']))
    {

        $id = $_GET['id'];

        $sql = '
        SELECT
           kolom, kolom, kolom
        FROM
            news
        WHERE
            id = '
. $_GET['id'] . ' ';

        if( !($temp = mysql_query($sql, $connection)))
        {

            showerror();
        }


        $error = true;
        while($news = mysql_fetch_array($temp))
        {

            // je eigen dingen
            $error = false;
        }


        if($error == true)
        {

            error(404);
        }

    }

    else
    {
        error(404);
    }

?>


Uiteraard zou je ook de andere nummers in kunnen zetten (500 etc).


Gaat
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
is_int($_GET['id']);

wel werken? Want een $_GET is een string en niet een integer (heb zelf weleens problemen gehad met is_int omdat een variabele dus nog een string was en nog niet een integer).. Kan het ook fout hebben natuurijk.

En waarom weer een extra onnodige variabele gebruiken als je net zo goed mysql_num_rows kan gebruiken of
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
SELECT COUNT(*) AS aantal FROM tabel


edit:
dit staat er op php.net/is_int
Quote:
Find whether the type of a variable is integer


edit:
Als iemand dit voor mij zou willen testen, dankje! Maar ik geloof dat een _GET variabele altijd automatisch een string is en niet een integer waardoor is_int dus zegt dat het geen integer is ondanks dat er een cijfer word meegestuurd..
Gewijzigd op 10/02/2013 15:37:15 door Mebus Hackintosh
 
Frank Nietbelangrijk

Frank Nietbelangrijk

10/02/2013 15:38:45
Quote Anchor link
een id is doorgaans (hoeft natuurlijk niet) numeriek. door intval te gebruiken of is_int voorkom je dat gebruikers een niet-numerieke waarde gaan ingeven. Het gevaar als je dit niet doet is sql-injection.
 
Erwin H

Erwin H

10/02/2013 15:40:09
Quote Anchor link
Mebus Hackintosh op 10/02/2013 15:32:10:
Gaat
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
is_int($_GET['id']);

wel werken? Want een $_GET is een string en niet een integer (heb zelf weleens problemen gehad met is_int omdat een variabele dus nog een string was en nog niet een integer).. Kan het ook fout hebben natuurijk.

Nee, dat gaat inderdaad niet werken. Dan moet je is_numeric gebruiken. Die functie test of een string een numerieke waarde is (wat overigens ook floats etc kan zijn, maar dat is in dit geval niet belangrijk).
 
Mebus  Hackintosh

Mebus Hackintosh

10/02/2013 15:43:16
Quote Anchor link
Frank Nietbelangrijk op 10/02/2013 15:38:45:
een id is doorgaans (hoeft natuurlijk niet) numeriek. door intval te gebruiken of is_int voorkom je dat gebruikers een niet-numerieke waarde gaan ingeven. Het gevaar als je dit niet doet is sql-injection.


Ja, zoek eens op google naar 'typecasten'... Een $_GET variabele is geloof ik altijd een string.. Dus om van die string een integer te maken moet je er (int) voorzetten.

En anders kan je ook nog altijd mysql_real_escape_string gebruiken. Dubbele controle is nooit erg!

edit:
voer andes eens dit stukje code uit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php

if(isset($_GET['nummer']) && is_int($_GET['nummer']))
{

 echo $_GET['nummer'].' is een integer!';
}


?>
Gewijzigd op 10/02/2013 15:45:24 door Mebus Hackintosh
 
Frank Nietbelangrijk

Frank Nietbelangrijk

10/02/2013 15:44:53
Quote Anchor link
Mebus, met intval() bereik je hetzelfde.
 
Erwin H

Erwin H

10/02/2013 15:45:35
Quote Anchor link
Frank Nietbelangrijk op 10/02/2013 15:44:53:
Mebus, met intval() bereik je hetzelfde.

Maar met is_int bereik je in dit geval dus helemaal niets....
 
Mebus  Hackintosh

Mebus Hackintosh

10/02/2013 15:46:33
Quote Anchor link
Frank Nietbelangrijk op 10/02/2013 15:44:53:
Mebus, met intval() bereik je hetzelfde.


Ik heb het niet over jou intval maar over de functie is_int en hoe je die dus moet gebruiken. intval kon ik nog niet en zal vast en zeker wel werken..
Gewijzigd op 10/02/2013 15:47:08 door Mebus Hackintosh
 
Frank Nietbelangrijk

Frank Nietbelangrijk

10/02/2013 15:48:35
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php

echo intval('hallo 5').'<br />';
echo intval('5 hallo').'<br />';
echo intval('5').'<br />';
echo intval('hallo').'<br />';

?>


output:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
0      
5          
5          
0      
Gewijzigd op 10/02/2013 15:49:40 door Frank Nietbelangrijk
 
Mebus  Hackintosh

Mebus Hackintosh

10/02/2013 15:52:04
Quote Anchor link
Frank Nietbelangrijk op 10/02/2013 15:48:35:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php

echo intval('hallo 5').'<br />';
echo intval('5 hallo').'<br />';
echo intval('5').'<br />';
echo intval('hallo').'<br />';

?>


output:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
0      
5          
5          
0      


Ja leuk.. Maar zoals sommige andere hier doen kijken ze op de documentatie website van php.net :-) Alsnog bedankt! Maar ik had hem al door hoor..
 



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.