In mijn geval stel in de waardes toch ook maar 1x in?quote:Op maandag 6 september 2010 23:54 schreef cablegunmaster het volgende:
[..]
Meeste termen kende ik hier al van maar ik dank je voor de links .
en wat hij zegt is een __construct() eigenlijk toch het beste in jou geval.
je hoeft namelijk de waardes maar 1x in te stellen lijkt mij.
dus op zijn netst qua code is Sitethief het efficientst bezig.
1 2 3 4 5 6 | $db = new Database(); $db->connect(); [...] $db->disconnect(); ?> |
1 2 3 4 5 | Database::connect(); [...] Database::disconnect(); ?> |
Als je je verbinding initialiseert in je constructor, is $var = new Database(); al voldoende om deze verbinding te initialiseren. Dan hoef je niet nog eens apart je connect() methode te gebruiken (die dan sowieso weg valt).quote:Op dinsdag 7 september 2010 00:08 schreef poepeneesje het volgende:
[..]
In mijn geval stel in de waardes toch ook maar 1x in?
Verder hoef je op mijn manier geen nieuw object aan te maken. Die manier van Sitethief geeft precies hetzelfde resultaat als wat ik doe.
Verder dien ik op de manier van ST de boel op deze manier aan te roepen (zoals Tuvai.net aangaf):
[ code verwijderd ]
En ik kan voldoen met:
[ code verwijderd ]
Als aanvulling is het best mogelijk dat er een situatie komt waarbij twee databaseverbindingen nodig zijn. Dat gaat je niet lukken als de class een static class is.quote:Op dinsdag 7 september 2010 09:23 schreef Tuvai.net het volgende:
[..]
Als je je verbinding initialiseert in je constructor, is $var = new Database(); al voldoende om deze verbinding te initialiseren. Dan hoef je niet nog eens apart je connect() methode te gebruiken (die dan sowieso weg valt).
Het voordeel van het werken met die methode, is dat je logisch database-object krijgt waar je tegen aan programmeert, in plaats van een verzameling statische methodes. Je hebt dan ook in je Database class de mogelijkheid om $this te gebruiken, waarmee je een extra 'scope' toevoegt aan je code. Je kunt op die manier bijvoorbeeld ook er voor kiezen om je verbinding te initialiseren in een aparte, private/protected methode/variabele in je Database class, waarbij je in elke andere methode controleert of deze variabele gevuld is (hetgeen dus betekent dat je verbinding geïnitialiseerd is ). Zo kun je weer andere technieken toepassen, zoals 'Lazy Loading'.
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 | class Database { private $host; private $database; private $user; private $password; private $connect; public function __construct() { $this->host = DB_HOST; $this->database = DB_DBNAME; $this->user = DB_USERNAME; $this->password = DB_PASSWORD; $this->connect(); } private function connect() { if(!$this->connect) { $this->connect = mysql_connect($this->host, $this->user, $this->password) or die (mysql_error()); if($this->connect) { mysql_select_db($this->database) or die (mysql_error()); } } } public function disconnect() { if($this->connect) { mysql_close($this->connect) or die (mysql_error()); } } } ?> |
Dat is een goede! Aangepast. Tevens ook het PDO-object gebruikt om de verbinding op te zetten met MySQL.quote:Op dinsdag 7 september 2010 13:48 schreef Scorpie het volgende:
$this->connect als variable naam zou ik dan $this->connection van maken.
Goede zet. PDO is ideaal voor als je meerdere databaseplatformen wilt ondersteunen. Ook biedt PDO de mogelijkheid om transactions op te bouwen. Handig voor wanneer je dat niet op databaseniveau kunt doen.quote:Op dinsdag 7 september 2010 16:13 schreef poepeneesje het volgende:
Dat is een goede! Aangepast. Tevens ook het PDO-object gebruikt om de verbinding op te zetten met MySQL.
Wat beveiliging betreft, kan ik je OWASP aanraden: http://www.owasp.org/index.php/Main_Pagequote:Op dinsdag 7 september 2010 21:16 schreef boem-dikkie het volgende:
Bedankt voor alle database info heren! Database van mij is in gebruik voor hooguit een paar 100 misschien 1000 records. Dus miljoenen zijn en worden het sowieso niet. Hebben jullie nog tips voor goede tutorials over een stevig inlogsysteem? Gebruik nu gewoon sessions en dergelijke maar lees overal dingen over sessions injection e.d. Zelf al wat gegoogled maar kom vooral bij resultaten en sites uit 2004 enzo. Beetje oud.
Nou wil ik meer dan 1 standaard pagina met 10 resultaten leeghalen... dus ik dacht ik voeg num=100(100 resultaten) toe aan de url:quote:"http://www.google.com/search?q=" . urlencode($keyword) . ""
Dit werkt WEL als ik het normaal laad in een browser, maar werkt NIET via cURL... Heeft iemand de gouden tip voor mij om meer dan 10 resultaten te laden met PHP/cURL van google?!quote:"http://www.google.com/search?num=100&q=" . urlencode($keyword) . "",
quote:Op dinsdag 7 september 2010 21:16 schreef boem-dikkie het volgende:
Bedankt voor alle database info heren! Database van mij is in gebruik voor hooguit een paar 100 misschien 1000 records. Dus miljoenen zijn en worden het sowieso niet. Hebben jullie nog tips voor goede tutorials over een stevig inlogsysteem? Gebruik nu gewoon sessions en dergelijke maar lees overal dingen over sessions injection e.d. Zelf al wat gegoogled maar kom vooral bij resultaten en sites uit 2004 enzo. Beetje oud.
mss dit iets voor jequote:Dave
17-Nov-2009 10:05
If you deploy php code and cannot control whether register_globals is off, place this snippet in your code to prevent session injections:
1
2
3<?php
if (isset($_REQUEST['_SESSION'])) die("Get lost Muppet!");
?>
Je kan het er zelf uitslopenquote:Op donderdag 9 september 2010 12:46 schreef RenRen- het volgende:
[..]
Wel heel veel nutteloze features voor mijn site, is er niets simpelers?
Dat dusquote:Op donderdag 9 september 2010 12:47 schreef Tuvai.net het volgende:
Wat Scorpie zegt. En dat 99% van de galleries met thumbnails werken heeft een reden hoor. Zou leuk worden voor zowel de bezoeker als het bandbreedteverbruik als er hele galerijen met tientallen foto's van origineel formaat in één keer geladen / ge`preload zouden worden.
En dat ik niet met thumbnails wil werken heeft ook een reden. Het is geen gigantische site, en dit lijkt mij persoonlijk practischer. Ik hoef mezelf eigenlijk helemaal niet te verklaren, want dit is gewoon wat ik wil, ongeacht wat 99% van alle andere galleryhouders doen.quote:Op donderdag 9 september 2010 12:47 schreef Tuvai.net het volgende:
Wat Scorpie zegt. En dat 99% van de galleries met thumbnails werken heeft een reden hoor. Zou leuk worden voor zowel de bezoeker als het bandbreedteverbruik als er hele galerijen met tientallen foto's van origineel formaat in één keer geladen / ge`preload zouden worden.
Ik zal even kijken wat ik ermee kan dankjequote:
Dat zal. Ik wil alleen geen thumbnails. Gewoon text.quote:Op donderdag 9 september 2010 13:02 schreef ursel het volgende:
Bij de meeste galleries kan je toch ook instellen hoe groot je thumbnails moeten zijn.
Dat kun je beter met javascript doen.quote:Op donderdag 9 september 2010 12:40 schreef RenRen- het volgende:
Hoi,
Wat ik wil, is dat er in mijn site, links een lijst komt met de linkjes naar de pagina, en dat rechts dan het plaatje inlaadt. Ook wil ik dat er een vorige/volgende komt.
Wel als je het een beetje dynamisch wilt houden.quote:Op donderdag 9 september 2010 13:08 schreef KomtTijd... het volgende:
[..]
Dat kun je beter met javascript doen.
PHP is dan wellicht handig om automatisch een lijst van de betreffende bestanden uit een map te halen, maar niet noodzakelijk.
Hm, het nadeel wat ons altijd wordt verteld is dat Javascript uit te schakelen is. Standaard. Maar ik zal er even naar kijken, dankje!quote:Op donderdag 9 september 2010 13:08 schreef KomtTijd... het volgende:
[..]
Dat kun je beter met javascript doen.
PHP is dan wellicht handig om automatisch een lijst van de betreffende bestanden uit een map te halen, maar niet noodzakelijk.
De meeste mensen die javascript uitschakelen, doen dat bewust. Die weten dat de helft van de sites (voorzichtige schatting) niet meer optimaal functioneert.quote:Op donderdag 9 september 2010 13:10 schreef RenRen- het volgende:
[..]
Hm, het nadeel wat ons altijd wordt verteld is dat Javascript uit te schakelen is. Standaard. Maar ik zal er even naar kijken, dankje!
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |