Informatie ophalen uit database
- YVMdesign
- Closed
-
-
-
fetch_assoc(); (de 2e manier) is sneller dan fetch_object(); (de eerste) maar verder is er niet egt een betere manier. Zolang je alles maar goed beveiligd.
-
Luc
Sneller is het misschien wel, maar je praat hier over milliseconden he.
Dit verschil zal jij dus nooit gaan merken als bezoekerVerschil zit in hoe jij het wil aanroepen..
PHP
Toon Meer<?php mysql_fetch_assoc //of mysql_fetch_array //Resultaat $data['login'] mysql_fetch_object //Resultaat $data->login; ?>
Zijn vast nog meer voorbeelden hoor
Ik ga normaal altijd voor object, array gebruik ik heel soms vanuit een while ofzo -
Oke bedankt voor jullie reacties
Graag slotje erop!
-
Ja dat weet ik daarom zette ik er ook bij dat het ene fetch_assoc is en het andere fetch_object
Maar er is eigenlijk niet egt een goede manier, het is pas een goede manier als je het goed beveiligd.
-
En dat is waar de meeste hier nog steeds gebrek aan hebben.
Je kan onder meer op google zoveel vinden over het beveiligen van PHP waardes.
Als je echt goed zoekt en een beetje gaat proberen ga je merken dat alles al veel veiliger wordt dan dat het was.Jij vergat trouwens nog fetch_array :p krijg je ook als result: $data['login'] maar die worden zelden gebruikt.
-
Ja daarom had ik die er ook niet bij gezet. De beveiliging die ik over alles heen haal zijn: real_escape_string en htmlspecialchars
Dat zijn voor zover ik weet de 2 beste om over je systeem te halen.
-
real_escape_string & htmlspecialchars zijn inderdaad het beste wat je kan doen
Je kan ook nog ENT_QUOTES doen maar die is niet zo bekend hier denk ik :p
htmlentities is ook wel leuk die zet tekens helemaal om in andere tekens.
> word dan & gt; opzich wel leuk als je eens gaat testen wat bepaalde beveiliging kan doen :cheer:
htmlspecialchars zet de tekens ook om maar niet op de pagina.
Controleer je bron code maar eens, je zal zien dat ze daar wel omgezet zijn. -
Nog beter is om richting PHP 6 te scripten en te werken met MySQLi (sneller dan MySQL) of PDO (sneller dan de andere 2).
Alle informatie hierover is te vinden op: php.net
-
Jammer dat als één iemand een keer heeft geschreeuwd dat mysql_fetch_object slomer zou zijn dan mysql_fetch_assoc, dat dat dan ineens zo is. Ik citeer van http://php.net/manual/en/function.mysql-fetch-object.php:
CitaatNote: Performance
Speed-wise, the function is identical to mysql_fetch_array(), and almost as quick as mysql_fetch_row() (the difference is insignificant).Persoonlijk gebruikte ik altijd een associatieve array, en geen object. Immers ging het alleen om data, en niet zozeer om een object, vond ik dan. Tegenwoordig gebruik ik PDO of iets wat zich binnen een framework bevind. Pas als je de tweede parameter van mysql_fetch_object gaat gebruiken, wordt het interessant. Je kunt de data dan namelijk gelijk in je eigen klasse stoppen.
-
Onderste is beste, en dan kan je nog met PDO doen als je wil.
Al bij al zijn het enkele milliseconde per 100 queries ofzo..
-
Allemaal leuk die milliseconden verschil, maar mensen hier moeten eerst eens goede queries maken. Dat maakt pas echt verschil.
- Geen wildcard (*) gebruiken als je niet ALLE velden wil hebben
- Niet query 1, while, query2 = gewoon joins gebruikenDaarnaast een template gebruiken voor de layout scheelt ook al veel.
-
:slotje:
Participate now!
Heb je nog geen account? Registreer je nu en word deel van onze community!