Concatten

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

E-Identity Developer met Projectleider Kwaliteiten

Functieomschrijving Voor de kamer van koophandel zijn we op zoek naar een E-Identity developer met projectleider kwaliteiten. Voor deze opdracht zoekt KVK een Informatieanalist met Technisch Projectleider en ICT developer kwaliteiten, met kennis van E-identity. We zoeken in de breedte en niet specifiek in de diepte qua skillset. Een Junior Projectmanager, een Junior Informatieanalist, een Junior Developer (full stack), een Junior Designer en een Junior ICT architect ineen, met een sterk gevoel van stakeholder management en planning vaardigheden. Door de internationale setting, én de realisatie van ontsluiting van en naar basisregisters toe zijn wij op zoek naar enige ervaring binnen

Bekijk vacature »

.NET Software Developer

Dit ga je doen Als .NET Software Developer zul jij je voornamelijk bezig houden met: Het van scratch af aan bouwen van applicaties (.NET, C#, Bootstrap, KnockoutJs en WebAPI2); Het testen van jouw code d.m.v. het uitvoeren van unittesten; Het oplossen van bugs in de code; Het onderhouden van contact met collega's betreffende de door jouw ontwikkelde applicaties; Het verbeteren en doorontwikkelen van maatwerkapplicaties. Hier ga je werken Jij gaat aan de slag als .NET Software Developer en gaat je focussen op het bedenken, ontwikkelen en testen van maatwerkapplicaties in voornamelijk C#. Dit ga je doen bij een grote, internationale

Bekijk vacature »

Dynamische Oracle/APEX Ontwikkelaar in de logistie

Bedrijfsomschrijving De organisatie in de regio Rotterdam is gespecialiseerd in het ontwikkelen van moderne webbased software voor de ERP branche. In totaal is er 20FTE aan specialisten actief binnen de organisatie. De ICT afdeling bestaat momenteel uit 15FTE. Ze groeien ontzettend hard en daarom zoeken zij een Oracle/APEX Developer die het reeds sterke team nog sterker komt maken. Hier werken ze op projectbasis voor verschillende grote organisaties in de logistieke sector. Het is een informele organisatie waarbinnen een fijne werksfeer heerst. Zoals aangegeven willen ze het team nog sterker maken en daarvoor zoeken ze bij voorkeur medior of senior Oracle/APEX

Bekijk vacature »

Lasrobotprogrammeur/operator

Heb je interesse in trekkers en beschik je overvlijmscherpse precisie? Solliciteer dan op deze vacature! Als Lasoperator ben je vooral bezig met het maken van nieuwe lasrobotprogramma’s en het optimaliseren van bestaande programma’s, zowel online als offline (incl. het bedienen van de Lasrobots). Daarnaast draag je bij aan een optimaal rendement van de las robots. Verder heb je de volgende werkzaamheden: Het meewerken als operator c.q. Robotlassen niveau 2 (van complexe samenstellingen/halffabricaten), het om- en instellen van de diverse stations van lasmallen (productdragers), het afwerken van laswerk (verwijderen lasspetters en oxiden), het bewaken van de machineplanning (op bewerkingen) incl. de

Bekijk vacature »

Back-end programmeur

Functieomschrijving Heb jij recent jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een erkende werkgever in regio Waalwijk zijn wij op zoek naar een back-end developer. Kennis of ervaring met C# & SQL is een must! Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten; 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 brengt de aanpassingssuggesties van klanten in kaart, om ze

Bekijk vacature »

Front-end Developer

Gezellige team, passie en een groene toekomst! Lees hier de vacature van Front-end Developer bij All in Power! All in power heeft zich tot doel gesteld écht bij te dragen aan de energietransitie. Dit doen wij door de markt voor energie volledig op zijn kop te zetten. Producenten van schone (wind- of zonne-)energie verkopen via ons platform hun energie rechtstreeks aan gebruikers. Of dit nu huishoudens, bedrijven of bijvoorbeeld laadpalen zijn ons platform maakt het uitwisselen van energie mogelijk. Zo maken we de business case van onze klanten veel sterker en loont het om (meer) te investeren in vergroening voor

Bekijk vacature »

C#.NET Developer

Functieomschrijving We are looking for a dutch native speaker In deze uitdagende functie ga je werken als onderdeel van het development team, in de functie van C#.NET Developer, Je gaat maatwerk software bouwen voor diverse klanten. Ook optimaliseer je bestaande software en bouw je API koppelingen. Je bent vooral met back-end development bezig. Je krijgt veel vrijheid in deze functie en je krijgt de kans om mee te denken in bedrijfsprocessen. Deels thuiswerken is geen enkel probleem! Bedrijfsprofiel Deze organisatie is gevestigd in de regio van Boxtel. Het is van oorsprong een familiebedrijf, die gestart zijn met het bouwen van

Bekijk vacature »

Junior Back end developer PHP, Symfony

Functie Wij hebben onlangs onze eerste collega’s aangenomen, waardoor ons development team momenteel uit 4 personen bestaat. We bouwen onze software op basis van een PHP-framework (wat op zichzelf een Symfony framework is). Qua ontwikkeling focussen wij ons op 3 focus velden; – API-ontwikkeling/ Component Creatie – Implementatie – Framework ontwikkeling; het toevoegen van nieuwe functionaliteit of interne microservices Onze senior software engineer focust zich momenteel op de laatste twee punten, maar wij komen handen te kort op het eerste veld. Daarom zijn wij op zoek naar een enthousiaste junior software engineer die graag de kneepjes van het vak wil

Bekijk vacature »

Fullstack developer (NodeJS, React, AWS)

Functie Als Fullstack developer kom je te werken in het ontwikkelteam, maar zoals gezegd komt er veel meer bij kijken dan alleen maar ontwikkelen. Je bent samen met je collega’s continu bezig om de software uit te breiden maar hiernaast doe je doorlopend onderzoek naar de inzet van bijvoorbeeld Machine Learning. Ze willen met hun software echt voorlopen op andere en toegevoegde waarde leveren voor de eindgebruiker. Mede hierom zijn ze erg benieuwd naar iemand zijn persoonlijkheid, of hij graag nieuwe dingen uitzoekt (Google!), en initiatief neemt. Maar waar staan ze nu? Na een onderzoeksfase van ruim een jaar zijn

Bekijk vacature »

Productontwikkelaar Food

Wat ga je doen Als Productontwikkelaar Food ga je nieuwe producten ontwikkelen en bestaande producten verbeteren. Je bent hierbij betrokken bij het gehele proces: van productconcept naar proefreceptuur, het realiseren va het product (op kleine schaal) en het testen van producten in een productieomgeving. Verder: Bewaak je de status van verschillende fases van productontwikkeling en lever je tijdig de benodigde data aan Ben je bezig met de optimalisatie van oude en nieuwe recepturen Begeleid of organiseer je proefsessies (sensorisch onderzoek) in het team en/of bij klanten Onderhoud je contacten met de klanten, leveranciers van grondstoffen e.a. externe partijen Houd je

Bekijk vacature »

Ervaren PHP developer gezocht!

Functie Het team bestaat inmiddels uit zo’n 25 collega’s met specialisten op het gebied van development, data(analyse), marketing, infrastructuur en finance. Ze hebben een supermodern pand en bieden hiernaast veel vrijheid en verantwoordelijkheid. Ze doen er alles aan om jou op te gemak te stellen. Zo kun je je eigen werkplek inrichten naar persoonlijke wensen, maar gaan ze bijvoorbeeld ook jaarlijks met elkaar wintersporten en zijn er andere leuke uitjes. Als onderdeel van één van de scrumteams ga je aan de slag, samen ben je medeverantwoordelijk voor het doorontwikkelen van hun business applicatie waar het traffic team dagelijks mee werkt.

Bekijk vacature »

PHP Developer

Dit ga je doen Ontwikkelen, implementeren en testen van PHP-oplossingen en Apps voor klanten en bedrijfsprocessen; Opstellen van requirements en uitwerken van de oplossingen; Testen van software en borgen van een soepele overdracht, inclusief documentatie; Proactief adviseren vanuit eigen expertisegebied over ontwikkelingen en verbeterpunten in technische toepassingen en processen binnen de organisatie. Hier ga je werken De organisatie is een ambitieuze en vooruitstrevende speler in de markt in de regio Rotterdam. Ze zijn de snelst groeiende in hun branche. Met een excellent aanbod en service willen zij de beste keuze zijn voor hun bestaande en nieuwe klanten. Dit alles doen

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Integratie expert - Java Developer

Dit ga je doen Nieuw koppelingen ontwerpen, ontwikkelen en implementeren; Je schakelt met de klanten om hen zo goed mogelijk van dienst te zijn. Strategisch kijken naar nieuwe mogelijkheden op bestaande of nieuwe koppelingen zo effectief mogelijk te realiseren; Je bestaande toolset afwegen tegen nieuwe mogelijkheden om integratiedoelen steeds effectiever en/of effcienter te bewerkstelligen; Bestaande software koppelingen beheren, dit zijn koppelingen met zowel interne als externe systemen; Overleg met zowel directe collega's als met stakeholders om nieuwe integratieplannen concreet te maken; Je kunt de junioren meenemen op sleeptouw. Hier ga je werken Onze klant is op zoek naar een ervaren

Bekijk vacature »

Ambitieuze medior developer

Wat je gaat doen: Heb jij al een paar jaar ervaring als developer maar wil jij naar the next level? In ons NextLevelDev Programma helpen wij jou om de volgende stap te zetten: een mooi programma aan trainingen op het gebied van Java, hippe frameworks, Agile/Scrum, OCP-certificering en optioneel: andere JVM-talen als Kotlin en Scala; Cloud (AWS, Azure, GCP) Soc Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun

Bekijk vacature »

Pagina: 1 2 volgende »

Ozzie PHP

Ozzie PHP

12/02/2019 15:07:35
Quote Anchor link
Ik programmeer al weer een tijdje en toen ik jaaaaren geleden met PHP begon werd aangeraden om strings en variabelen altijd te concatten en enkele quotes te gebruiken.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php

echo 'Hallo ' . $firstname . ' ' . $lastname . '!';

?>

Deze manier zou de beste zijn vanwege het gebruik van enkele quotes wat sneller zou zijn dan het gebruik van dubbele quotes.

Tegenwoordig als ik SQL-queries opstel, gebruik ik echter vrijwel altijd dubbele quotes.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php

$sql
= "SELECT foo, bar WHERE id = $id";

?>

En dat kun je natuurlijk ook doen als het niet om SQL gaat.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php

echo "Hallo $firstname $lastname!";

?>

En dan is er ook nog het gebruik van accolades voor 'ingewikkeldere' variabelen.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php

echo "Hallo {$this->data['firstname ']} {$this->data['lastname ']}!";

?>


Mijn vraag is ... welke methode gebruiken jullie het meest?

Als ik eerlijk ben, dan leest dit

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php

echo "Hallo $firstname $lastname!";

?>

... een stuk makkelijker dan dit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php

echo 'Hallo ' . $firstname . ' ' . $lastname . '!';

?>


Maar hoe zit het met performance e.d.?
Gewijzigd op 12/02/2019 15:09:58 door Ozzie PHP
 
PHP hulp

PHP hulp

19/05/2024 02:12:57
 
Nick Vledder

Nick Vledder

12/02/2019 15:20:42
Quote Anchor link
Als ik mag kiezen tussen 'performance' en 'leesbaarheid', kies ik altijd voor leesbaarheid. Performance van code als geheel zou niet mogen afhangen van het type quotes dat je gebruikt, tenzij er een bug in PHP zit. In mijn optiek mooie ontwikkeling in JS is de zgn template literal in combinatie met de back-tick: `Hallo ${firstname} ${lastname}!`. Niet meer dat gehaspel met de +.
 
Ozzie PHP

Ozzie PHP

12/02/2019 15:30:47
Quote Anchor link
>> Als ik mag kiezen tussen 'performance' en 'leesbaarheid', kies ik altijd voor leesbaarheid.

wat gebruik jij dan zelf?
 
Nick Vledder

Nick Vledder

12/02/2019 15:48:25
Quote Anchor link
Voor PHP gebruik ik een eenvoudige template-engine die ik aanpas naar eigen behoefte (via Composer "phpunit/php-text-template": "^1.2"). Deze template-engine bevat HTML met hier en daar een {blok} dat vervangen gaat worden door een nader te bepalen waarde. Qua syntax vertoont het overeenkomsten met de JS template literals.
Gewijzigd op 12/02/2019 15:48:50 door Nick Vledder
 
Paul Ulje

Paul Ulje

12/02/2019 16:23:41
Quote Anchor link
Ik gebruik wel iets als:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
$firstname=$oNaw->readNaam();
$lastname=$_SESSION['aRecord']['naam'];
print "<br/>Hallo <b>$firstname</b> <i>$lastname!</i>";

Dankzij 'leesbaarheid' krijg ik een betere 'perfomance' van ontwikkeling... :-)
Anders zou het dit worden:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
echo "<br/>Hallo <b>" . $oNaw->readNaam() . "</b><i> " . $_SESSION['aRecord']['naam'] . "</i>";

En zie dat maar eens in één keer zonder triviale foutjes te schrijven.
Vaker gebruik ik echter :
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
writeln('Temp is',$celsius,'graden');

function writeln() {
  $aArgs = func_get_args();
  foreach ($aArgs as $arg) {
    print "$arg ";
  }
  print "<br/>";
}
Gewijzigd op 12/02/2019 16:33:02 door Paul Ulje
 
Ivo P

Ivo P

12/02/2019 16:40:23
Quote Anchor link
Ozzie PHP op 12/02/2019 15:07:35:

Tegenwoordig als ik SQL-queries opstel, gebruik ik echter vrijwel altijd dubbele quotes.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php

$sql
= "SELECT foo, bar WHERE id = $id";

?>


Los van waar je vraag over gaat, zou ik in dit geval opteren voor
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php

$sql
= "SELECT foo, bar WHERE id = :id";

?>


en dan prepare() en bind() gebruiken om je code wat veiliger te houden.
 
Thomas van den Heuvel

Thomas van den Heuvel

12/02/2019 16:58:51
Quote Anchor link
Enkele quotes als het kan, dubbele quotes als het moet.

Performacewinst pak je ergens anders.

Tijdswinst heb je direct omdat je makkelijk kunt lezen wat je zojuist hebt geprogrammeerd.

NB: als het over grotere lappen tekst gaat die een combinatie van PHP(-variabelen) en tekst gaat kan output buffering uitkomst bieden. Je doet dan alsof je alles direct weergeeft maar vangt alle output netjes op in een buffer. Dat is wat mij betreft nog steeds de meest "clutter free" aanpak.
Gewijzigd op 12/02/2019 17:00:39 door Thomas van den Heuvel
 
Ozzie PHP

Ozzie PHP

12/02/2019 17:48:50
Quote Anchor link
@Ivo

>> en dan prepare() en bind() gebruiken om je code wat veiliger te houden.

Volgens mij werkt dat niet met MySQLi.

@Thomas

>> Enkele quotes als het kan, dubbele quotes als het moet.

Oké ... maar ... WAAROM???
 
Thomas van den Heuvel

Thomas van den Heuvel

12/02/2019 18:12:09
Quote Anchor link
Strings met enkele quotes worden niet geparsed (enkele escape constructies daar gelaten). Het is de simpelste vorm van stringgebruik wat je (theoretisch) een minimale performancewinst oplevert, die tegenwoordig toch geen zak meer uitmaakt. Het dwingt je tot het scheiden van lappen statische tekst en variabelen.

Strings met dubbele quotes kun je makkelijk combineren met enkele quotes wanneer je deze nodig hebt, bijboorbeeld als je queries bouwt waarin kolomwaarde worden gebruikt. Dit zodat je dan niet helemaal gierend gek wordt van het escapen van enkele of dubbele quotes, wat tevens de boel compleet onleesbaar maakt.

En omdat je dan met een simpele vuistregel werkt volgens een stramien die je impliciet dwingt tot een eenduidige werkhouding waarbij code leesbaar blijft.

En omdat je dan op zijn minst te werk gaat volgens een plan, en dat is nog altijd beter dan geen plan.

Heb je een andere/betere manier die voor jou werkt: go right ahead.
Gewijzigd op 12/02/2019 18:12:38 door Thomas van den Heuvel
 
- Ariën  -
Beheerder

- Ariën -

12/02/2019 19:57:44
Quote Anchor link
Ikzelf gebruik vaak de eerste code van Ozzie. Puur omdat het leesbaar is, en de syntax van de string en de variabelen/functies gescheiden zijn. Altijd een single-quoted echo als het voor een enkele regel is, zodat het niet botst met de gebruikelijke dubbele-quotes van HTML. En escapen wil ik juist zo weinig mogelijk doen, omdat dat slecht leesbaarder wordt. Ik houd het liefst van schone code.... ;-)

Bij blokken met HTML beëindig ik vaak de PHP-tags en gebruik netjes
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $blaat; ?>
tussendoor, als ik iets in PHP moet echo'en. In geen enkel geval bouw ik een echo-put met op elke regel en echo. Dat vind ik zo onnodig en onlogisch. het komt over alsof je tijdens een gesprek steeds na je zin een stilte laat vallen en weer verder praat :-P
 
Ozzie PHP

Ozzie PHP

12/02/2019 20:22:10
Quote Anchor link
@Thomas

Oké ... nu volg ik je even niet meer. Jij geeft als stelregel dat je enkele quotes moet gebruiken ... en vervolgens kom je met diverse redenen die het nut daarvan ontkrachten.

Wat raad jij nu aan, want ik zie geloof ik iets over het hoofd of ik begrijp je verkeerd.

@Ariën

>> Ikzelf gebruik vaak de eerste code van Ozzie. Puur omdat het leesbaar is, en de syntax van de string en de variabelen/functies gescheiden zijn.

Dat doe ik dus ook, maar strikt genomen zijn de dubbele quotes eigenlijk duidelijker (mits er niks geëscapet hoeft te worden).

Dit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
echo "Hallo $firstname $lastname!";
?>

lijkt me duidelijker dan dit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
echo 'Hallo ' . $firstname . ' ' . $lastname . '!';
?>

Dus waarom kies je dan toch voor dit laatste? Zelf doe ik dat dus ook, maar is het nog wel handig vraag ik me af.
 
- Ariën  -
Beheerder

- Ariën -

12/02/2019 20:52:04
Quote Anchor link
Het is overzichtelijker. Je ziet dat er variabelen gebruikt worden. En één van mijn wijze uitspraken (die ik ooit van PHP Freakz heb overgenomen) is "Variabelen buiten quotes". ;-)

Alleen het concatneren geeft een beetje een syntax-rotzooitje, maar daar kijk ik gewoon overheen.
 
Ozzie PHP

Ozzie PHP

12/02/2019 21:48:38
Quote Anchor link
>> En één van mijn wijze uitspraken (die ik ooit van PHP Freakz heb overgenomen) is "Variabelen buiten quotes".

Lol :D

Maar weet je ook WAAROM dat zo is? Waarom ze buiten quotes moeten? Kan me er wel iets bij voorstellen, maar in queries zet vrijwel iedereen ze binnen dubbele quotes. Dus het gaat mij vooral om het waarom.
 
Thomas van den Heuvel

Thomas van den Heuvel

13/02/2019 00:08:21
Quote Anchor link
> Jij geeft als stelregel dat je enkele quotes moet gebruiken ... en vervolgens kom je met diverse redenen die het nut daarvan ontkrachten.
Nee ik leg uit wanneer je wat zou moeten gebruiken, en waarom.

> Wat raad jij nu aan, want ik zie geloof ik iets over het hoofd of ik begrijp je verkeerd.
Enkele quotes als het kan, dubbele quotes als het moet.
En bij erg lange tekst: output buffering.

Ik herinner mij dat artikel van PHPFz nog. Het "bewijsmateriaal" stond jammergenoeg in dienst van de hypothese (dat dingen buiten quotes halen sneller zou zijn). Ze hadden dan misschien wel gelijk, maar niet om de juiste redenen.
 
Ivo P

Ivo P

13/02/2019 10:18:53
Quote Anchor link
Ik kan me het artikel ook nog herinneren. Volgens mij geschreven door een van de oprichters van die site en ik schat in dat het minimaal zo'n 15 jaar oud zal zijn. (volgens mij was het Mathieu Kooiman)

Of PHP nog steeds op dezelfde manier werkt, is natuurlijk om te beginnen al de vraag.

Test ging toen om verschillen bij.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
$bar
= "bar";

$foo = "foo bar";
$foo = 'foo bar';
$foo = "foo $bar";
$foo = 'foo '. $bar;
$foo = "foo " .$bar;

?>

resultaat wat ik me meen te herinneren:
De eerste 2 waren vergelijkbaar.
Staat er zoals in geval 3 een variabele tussen de " " dan wordt het "trager"
en de optimaalste waren de laatste 2.

Maar ik zet Trager tussen " ", omdat het verschil erg klein was. (toen al)

Ten tweede is ook de vraag hoe betrouwbaar de meetmethode was.

En tenslotte: de methode waarbij de variabelen buiten de quotes staan, geven
a) in mijn editor beter onderscheid in kleuren om de vars te vinden
b) gemakkelijk de mogelijkheid om ipv $bar iets als htmlspecialchars($bar) of escape($bar) toe te passen

Vooral dat geeft voor mij de doorslag om ze buiten de quotes te laten.

Toevoeging op 13/02/2019 10:23:19:

ik heb de link terug gevonden, al geeft het nu een 404 error:

http://www.scriptorama.nl/internals/quotes-battle

en dat googlen leidde weer naar phphulp:
zie ook https://www.phphulp.nl/php/forum/topic/single-of-double-quotes/16000/1/
 
Ozzie PHP

Ozzie PHP

13/02/2019 10:31:55
Quote Anchor link
>> en dat googlen leidde weer naar phphulp:

Damn ... da's een oude post ... nog van voor mijn tijd :-D

Beiden bedankt voor jullie uitleg. We blijven dus gewoon voor single quotes gaan waar mogelijk, en wanneer het handiger is voor dubbele quotes.

Nog een laatste vraagje.

Queries zet ik dus tussen dubbele quotes omdat dat makkelijk te combineren is met enkele quotes, maar wat nu als er geen enkele quotes in een query voorkomen? Zet je die query dan weer tussen enkele quotes? Of zetten jullie een query gewoon altijd standaard tussen dubbele quotes?
 
Ivo P

Ivo P

13/02/2019 11:25:33
Quote Anchor link
Ozzie PHP op 13/02/2019 10:31:55:
Queries zet ik dus tussen dubbele quotes omdat dat makkelijk te combineren is met enkele quotes, maar wat nu als er geen enkele quotes in een query voorkomen? Zet je die query dan weer tussen enkele quotes? Of zetten jullie een query gewoon altijd standaard tussen dubbele quotes?


Om daarna alles toch weer te moeten veranderen als je tóch nog een ' in de query nodig hebt.

Zelf hanteer ik inderdaad query tussen " "
en html tussen ' '

Maar daarbij wel altijd prepared statements als het om variabelen gaat.
 
Ozzie PHP

Ozzie PHP

13/02/2019 13:10:54
Quote Anchor link
>> Zelf hanteer ik inderdaad query tussen " "
en html tussen ' '

Oké helder!

>> Maar daarbij wel altijd prepared statements als het om variabelen gaat.

Ah oké, maar dat gaat bij MySQLi niet.
 
Ivo P

Ivo P

13/02/2019 13:32:45
Quote Anchor link
ik weet niet wat voor versie van mysqli jij gebruikt, maar met een ? werkt dat daar normaal wel.

http://php.net/manual/en/mysqli-stmt.prepare.php
http://php.net/manual/en/mysqli-stmt.bind-param.php
 
Ozzie PHP

Ozzie PHP

13/02/2019 14:17:12
Quote Anchor link
Ah oké ... normaal werk ik met PDO. Ik dacht dat het in mysqli niet kon.

Maar wat is eigenlijk het wezenlijke verschil tussen

SELECT foo FROM bar where id = $id

versus

SELECT foo FROM bar where id = ?

Wat ga ik er met die laatste variant op vooruit?
 
Ivo P

Ivo P

13/02/2019 14:34:02
Quote Anchor link
In jouw query kan $id niet iets anders zijn dan een INT, neem jij aan.

Maar stel dan het een keer toch een string is, en zeker als het invoer van buiten is, zou dat ook zo maar met opzet kunnen.

script.php?id=123%20OR%201

Dan is $id gelijk aan "123 OR 1"

dus de query wordt: "SELECT foo FROM bar where id = 123 OR 1"

En de vraag is, of dat is wat je wilt, en wat er gebeurt als iemand in plaats daarvan een subquery uitvoert die engere dingen doet.

SQL injectie dus.

En nu kún je wel proberen om $id vooraf te escapen, maar dat kan ook zo maar een keer vergeten worden. En dan missen ook nog de ' ' om $id.

prepared statements voorkomen dat.
En maken het eventueel ook mogelijk een 1x gepreparede query een keer of 100 uit te voeren met steeds andere parameters.

Bijvoorbeeld 1x prepare en vervolgens 1000 meetresultaten ergens uitlezen en wegschrijven. zou ook efficienter zijn. Komt niet veel voor bij standaard websites, maar PHP is niet tot websites beperkt.
 

Pagina: 1 2 volgende »



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.