abonnement Unibet Coolblue
pi_100889309


Als je vragen hebt over PHP/MySQL, dan zit je hier goed met een vaste kliek guru's en een groot aantal regelmatige bezoekers. Beperk je vragen niet tot "hij doet het niet" of "hij geeft een fout" - onze glazen bol is kapot en we willen graag van je weten wát er niet lukt en wélke foutmelding je precies krijgt :)

Zie ook:
PHP Dataverwerking
Officiële PHP website
PHP Documentatie
MySQL Reference Manual
Yet Another PHP Faq
PHP Cheat Sheet
PHP5 Power Programming - boek met uitleg over OOP, Pear, XML, etc

Tutorials:
W3Schools PHP
W3Schools SQL
  donderdag 18 augustus 2011 @ 11:45:09 #2
25889 Sitethief
Fulltime Flapdrol
pi_100889623
@Pakspul

Op die manier :D, misschien is dat een optie in de toekomst, maar ik wil het me nu nog niet te moeilijk maken.
Stroek: Sitethief, die is heel groot en sterk :Y.
Faat: *zucht* zoals gewoonlijk hoor Sitethief weer in de bocht >:)
pi_100889884
Zeker een aanrader om eens na te kijken, want het past perfect in het MVC model: http://nl.wikipedia.org/wiki/Model-view-controller-model
  donderdag 18 augustus 2011 @ 12:02:37 #4
4159 GI
Nee ik heet geen JOE
pi_100890298
Wat is de meerwaarde eraan om iedere keer zelf de db classe aan te moeten roepen met geinstance ?

Ik heb een $db classe die ik kan benaderen door heel mijn code, wat ik wel in iedere classe moet doen is in de __construct zorgen dat $this->db een referentie is naar de $db.

Hierdoor kan ik overal (hoe diep ik ook zit) met $this->db->runSQL("SQL_SHORT",$parameter1,$parameter2) de query die ik wil uitvoeren...
pi_100890474
quote:
3s.gif Op donderdag 18 augustus 2011 12:02 schreef GI het volgende:
Wat is de meerwaarde eraan om iedere keer zelf de db classe aan te moeten roepen met geinstance ?

Ik heb een $db classe die ik kan benaderen door heel mijn code, wat ik wel in iedere classe moet doen is in de __construct zorgen dat $this->db een referentie is naar de $db.

Hierdoor kan ik overal (hoe diep ik ook zit) met $this->db->runSQL("SQL_SHORT",$parameter1,$parameter2) de query die ik wil uitvoeren...
Je doet het alleen op de plaatsen waar het nodig is. Sommige classes maken geen gebruik van de database, maar bij je voorbeeld geef je toch je database door en wordt er toch geheugen in genomen.

Door gebruik te maken van Singleton patroon kun je op de plaats waar je wil je database oproepen door $db = DataBase::GetInstance(); aan te roepen. De hele database is opgeslagen in de $_Instance variabel in de class en deze wordt tijdelijk doorgegeven aan de variabel.

Conclusie: je hoeft niet lastig steeds je database door te geven.
  donderdag 18 augustus 2011 @ 12:12:11 #6
4159 GI
Nee ik heet geen JOE
pi_100890635
quote:
0s.gif Op donderdag 18 augustus 2011 12:08 schreef Pakspul het volgende:

[..]

Je doet het alleen op de plaatsen waar het nodig is. Sommige classes maken geen gebruik van de database, maar bij je voorbeeld geef je toch je database door en wordt er toch geheugen in genomen.

Door gebruik te maken van Singleton patroon kun je op de plaats waar je wil je database oproepen door $db = DataBase::GetInstance(); aan te roepen. De hele database is opgeslagen in de $_Instance variabel in de class en deze wordt tijdelijk doorgegeven aan de variabel.

Conclusie: je hoeft niet lastig steeds je database door te geven.
Dat snap ik. Ik heb alleen geen classes waar de database niet in gebruikt wordt dus het heeft voor mij weinig tot geen meerwaarde. Maar is het niet zo dat ik met

1
2
3
4
5
6
7
8
<?php

function __construct(){
global 
$db;
$this->db=&$db
}

?>
Ook geen extra geheugen in gebruik neem en ik dus "eenmalig in een classe in de __construct opnemen" tegenover "iedere functie die hem nodig heeft een :getinstance() uit laten voeren" als gevolg heb ?
pi_100890875
De getinstance functie kijkt alleen maar of er een instance van is, anders zorgt hij er voor dat hij deze aanroept. Mocht die al bestaan dan geeft hij hem terug.

Global vind ik geen nette oplossing. Het is door PHP gemaakt om het programmeren makkelijker te maken. Daarom heb ik voor Singleton gekozen.
  donderdag 18 augustus 2011 @ 13:54:21 #8
4159 GI
Nee ik heet geen JOE
pi_100893250
quote:
0s.gif Op donderdag 18 augustus 2011 12:18 schreef Pakspul het volgende:
De getinstance functie kijkt alleen maar of er een instance van is, anders zorgt hij er voor dat hij deze aanroept. Mocht die al bestaan dan geeft hij hem terug.

Global vind ik geen nette oplossing. Het is door PHP gemaakt om het programmeren makkelijker te maken. Daarom heb ik voor Singleton gekozen.
Ja, dat snap ik, maar dat moet ik dan iedere keer doen dat ik de database aan wil spreken volgens jouw constructie. Dat vind ik niet echt een tijdbesparende oplossing eigenlijk.

Ik snap de use van de singleton wel, maar ik zou als ik hem zo gebruiken hem toch in mijn __construct aanroepen denk ik...
pi_100895046
quote:
3s.gif Op donderdag 18 augustus 2011 13:54 schreef GI het volgende:

[..]

Ja, dat snap ik, maar dat moet ik dan iedere keer doen dat ik de database aan wil spreken volgens jouw constructie. Dat vind ik niet echt een tijdbesparende oplossing eigenlijk.

Ik snap de use van de singleton wel, maar ik zou als ik hem zo gebruiken hem toch in mijn __construct aanroepen denk ik...
Tijd besparing valt echt reuze mee, je hebt het over een paar miljardste van een seconde wat ik zo heb getest :P
  donderdag 18 augustus 2011 @ 14:50:57 #10
4159 GI
Nee ik heet geen JOE
pi_100895662
quote:
0s.gif Op donderdag 18 augustus 2011 14:35 schreef Pakspul het volgende:

[..]

Tijd besparing valt echt reuze mee, je hebt het over een paar miljardste van een seconde wat ik zo heb getest :P
Ik had het vooral over ontwikkeltijdbesparing ;)
pi_100896084
quote:
3s.gif Op donderdag 18 augustus 2011 14:50 schreef GI het volgende:

[..]

Ik had het vooral over ontwikkeltijdbesparing ;)
Ik ontwikkel mijzelf om dit soort dingen te proberen :P
  vrijdag 19 augustus 2011 @ 11:24:12 #12
25889 Sitethief
Fulltime Flapdrol
pi_100931935
als in $_GET['test'] ÄÖ zit, dan maakt htmlentities($data,ENT_QUOTES,UTF-8) er Ã�Ã� van, ipv ÄÖ, hoe kan ik er nou voor zorgen dat dit wél goed gaat?
Stroek: Sitethief, die is heel groot en sterk :Y.
Faat: *zucht* zoals gewoonlijk hoor Sitethief weer in de bocht &gt;:)
pi_100932008
Probeer eens wat met utf8_decode en utf8_encode te spelen over die GET-variabele :)
  vrijdag 19 augustus 2011 @ 11:29:59 #14
91039 mstx
2x1/2 = 1/2 x 1/2
pi_100932103
quote:
0s.gif Op vrijdag 19 augustus 2011 11:24 schreef Sitethief het volgende:
als in $_GET['test'] ÄÖ zit, dan maakt htmlentities($data,ENT_QUOTES,UTF-8) er Ã�Ã� van, ipv ÄÖ, hoe kan ik er nou voor zorgen dat dit wél goed gaat?
Probeer eens htmlentities($data,ENT_QUOTES,"UTF-8")
Op donderdag 2 juli 2009 22:41 schreef RTB het volgende:
als ik elk rap"liedje" een kans moest geven was ik aan het eind van dit millennium nog bezig met het tempo waarin die kotshoop uitgebraakt wordt.
👾
pi_100932175
quote:
0s.gif Op vrijdag 19 augustus 2011 11:24 schreef Sitethief het volgende:
als in $_GET['test'] ÄÖ zit, dan maakt htmlentities($data,ENT_QUOTES,UTF-8) er Ã�Ã� van, ipv ÄÖ, hoe kan ik er nou voor zorgen dat dit wél goed gaat?
Is de metatag: <meta http-equiv="Content-Type" CONTENT="text/html; charset=UTF-8" /> aanwezig?

Dit kan eventueel ook: header("Content-type: text/html; charset=utf-8");
  vrijdag 19 augustus 2011 @ 11:32:21 #16
25889 Sitethief
Fulltime Flapdrol
pi_100932203
dank je mstx dat was idd het probleem :D . Komt waarschijnlijk omdat ENT_QUOTES zonder moet
:P .
Stroek: Sitethief, die is heel groot en sterk :Y.
Faat: *zucht* zoals gewoonlijk hoor Sitethief weer in de bocht &gt;:)
  maandag 22 augustus 2011 @ 10:37:47 #17
25889 Sitethief
Fulltime Flapdrol
pi_101032969
Waarom doet dit
1
2
3
4
5
6
<?php

$smt 
"SELECT * FROM products WHERE `ProductName` LIKE :name ";
$this->prepared->execute($smt);

?>
het wel, maar dit
$smt = "SELECT * FROM products WHERE `ProductName` LIKE %:name% ";
$this->prepared->execute($smt);
[/php]
niet?
Stroek: Sitethief, die is heel groot en sterk :Y.
Faat: *zucht* zoals gewoonlijk hoor Sitethief weer in de bocht &gt;:)
  maandag 22 augustus 2011 @ 10:39:50 #18
25889 Sitethief
Fulltime Flapdrol
pi_101033007
Sorry voor de tag die verkeerde gaat, kan om een of andere reden vanaf werk geen posts editten. (alle Javascript op FOK is hier kaduuk)
Stroek: Sitethief, die is heel groot en sterk :Y.
Faat: *zucht* zoals gewoonlijk hoor Sitethief weer in de bocht &gt;:)
  maandag 22 augustus 2011 @ 10:40:29 #19
75592 GlowMouse
l'état, c'est moi
pi_101033021
Als hij nu :name in zou vullen, ontbreken de ' om de %. Volgens mij kun je dit alleen aanpakken door de % in de string waarmee je :name vult te stoppen.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
  maandag 22 augustus 2011 @ 10:41:42 #20
25889 Sitethief
Fulltime Flapdrol
pi_101033050
Ah ja, dat werkt. Stom dat ik daar niet aan gedacht heb. Dank je :) .
Stroek: Sitethief, die is heel groot en sterk :Y.
Faat: *zucht* zoals gewoonlijk hoor Sitethief weer in de bocht &gt;:)
pi_101033842
quote:
0s.gif Op maandag 22 augustus 2011 10:39 schreef Sitethief het volgende:
Sorry voor de tag die verkeerde gaat, kan om een of andere reden vanaf werk geen posts editten. (alle Javascript op FOK is hier kaduuk)
op je werk worden ads geblokkeerd? :+
  maandag 22 augustus 2011 @ 11:15:50 #22
25889 Sitethief
Fulltime Flapdrol
pi_101033961
Yup, :( .
Stroek: Sitethief, die is heel groot en sterk :Y.
Faat: *zucht* zoals gewoonlijk hoor Sitethief weer in de bocht &gt;:)
pi_101040498
Wat is een handige manier om veel files (foto's) te uploaden voor een foto-album?
En kan dat direct in een database?
Ik wil ze natuurlijk niet 1-voor-1 allemaal aanklikken.
Liever niet met ftp. Graag zou ik het foto album wat meer automatiseren, zodat anderen kunnen inloggen en een fotoalbum kunnen aanmaken.
Dus geen ftp, mapjes aanmaken op de server..dat soort dingen
  maandag 22 augustus 2011 @ 14:48:26 #24
302853 themole
graaft totaal door.
pi_101040575
quote:
0s.gif Op maandag 22 augustus 2011 14:46 schreef MrNiles het volgende:
Wat is een handige manier om veel files (foto's) te uploaden voor een foto-album?
En kan dat direct in een database?
Ik wil ze natuurlijk niet 1-voor-1 allemaal aanklikken.
Liever niet met ftp. Graag zou ik het foto album wat meer automatiseren, zodat anderen kunnen inloggen en een fotoalbum kunnen aanmaken.
Dus geen ftp, mapjes aanmaken op de server..dat soort dingen
Eh die foto's in de database opslaan is niet heel erg handig en snel. Je kan je foto's denk ik beter op de server opslaan en in de database een url naar het plaatje stoppen, mocht je nog meer informatie bij het plaatje willen opslaan.

Dus een tabel met:

Id | Beschrijving | URL | andere zinnige info die je wilt opslaan.

En snel veel foto's uploaden is meestal wel ftp. :P
Niet altijd serieus
pi_101040758
quote:
14s.gif Op maandag 22 augustus 2011 14:48 schreef themole het volgende:

[..]

Eh die foto's in de database opslaan is niet heel erg handig en snel. Je kan je foto's denk ik beter op de server opslaan en in de database een url naar het plaatje stoppen, mocht je nog meer informatie bij het plaatje willen opslaan.

Dus een tabel met:

Id | Beschrijving | URL | andere zinnige info die je wilt opslaan.

En snel veel foto's uploaden is meestal wel ftp. :P
en een zipje uploaden met foto's en deze laten unzippen op de server?
abonnement Unibet Coolblue
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')