abonnement Unibet Coolblue Bitvavo
  FOK!-Schrikkelbaas zondag 17 april 2005 @ 23:28:39 #91
1972 Swetsenegger
Egocentrische Narcist
pi_26310927
quote:
Op zondag 17 april 2005 23:14 schreef rekenwonder het volgende:

[..]

Laten we als voorbeeld dan een huis nemen :-) Een class is dan de bouwtekening. Met deze bouwtekening kun je dan vele huizen (lees: objecten) bouwen. Dit bouwen noem je instantiėren.
Tot zover begrijp ik het
Klinkt nog steeds als een subroutine, maar het zij zo.
Nu....
Kan je een simpel voorbeeld van deze huizen class maken, hoe je 'm aanroept en hoe ik dan huizen kan bouwen, welke ook nog eens verschillende van elkaar zijn. Want dat kan toch? door de waarden welke ik mijn class 'in stuur' kan ik toch verschillende objecten bouwen. twee onder 1 kap, apparatement, rijtjeshuis zeg maar?.
quote:
Dat klopt! Maar ik neem de steek terug. Ik geloof daadwerkelijk dat er mensen zijn die het beter kunnen uitleggen dan ik dat kan.
Meestal laten verschillende (complete) visies het kwartje eerder vallen...

Of zal ik maar een [OO PHP] voor dummies openen omdat dit misschien een beetje te ver gaat voor dit topic?
pi_26311383
quote:
Op zondag 17 april 2005 22:39 schreef Swetsenegger het volgende:
OO

Oe! de enge o's.
Ik hoor veel over object georienteerd programeren. Het zou je zo veel tijd en code besparen en 'libraries' aan 'usefull' code opleveren welke je in elk nieuw project weer kan gebruiken.... Nou DAT klinkt goed!

enthousiast heb ik diverse tuts over OO PHP doorgeworsteld, maar het blijft me maar ontgaan. Wanneer ik het mensen in 2 zinnen hoor uitleggen lijkt het nog het meest op de good old subroutine (gosub... kennen we hem nog?)... Maar daar heb je de functie al voor, dus het moet MEER zijn .

op phpfreakz stond een 4 pagina's uitleg over classes en objects, met als voorbeeld een auto en kleuren en het kwartje valt maar niet. Waar beter de vraag te stellen dan in het dummie topic. Is er iemand welke een en ander kan verduidelijken?


suc6 dan

bij mij is het kwartje ooit gevallen, maar uiteindelijk is ie weer gaan staan
quote:
Op zondag 17 april 2005 23:28 schreef Swetsenegger het volgende:

Of zal ik maar een [OO PHP] voor dummies openen omdat dit misschien een beetje te ver gaat voor dit topic?
maak er dan een OOP php topic van...
  FOK!-Schrikkelbaas zondag 17 april 2005 @ 23:53:05 #93
1972 Swetsenegger
Egocentrische Narcist
pi_26311613
quote:
Op zondag 17 april 2005 23:44 schreef mschol het volgende:

[..]



suc6 dan

bij mij is het kwartje ooit gevallen, maar uiteindelijk is ie weer gaan staan
Ik begrijp dat je het niet begrijpt
quote:
maak er dan een OOP php topic van...
Mjah, moet ik wel mensen hebben welke een tut willen schrijven.
  maandag 18 april 2005 @ 00:11:39 #94
60743 capetonian
Gezocht:lekker wijf!
pi_26312176
quote:
Op zondag 17 april 2005 22:39 schreef Swetsenegger het volgende:
OO

op phpfreakz stond een 4 pagina's uitleg over classes en objects, met als voorbeeld een auto en kleuren ......
URL?
www.p166.com <- Hobby
pers.p166.com <- Personal
  maandag 18 april 2005 @ 00:12:59 #95
32768 DionysuZ
Respect my authority!
pi_26312210
quote:
Op zondag 17 april 2005 22:39 schreef Swetsenegger het volgende:
OO

Oe! de enge o's.
Ik hoor veel over object georienteerd programeren. Het zou je zo veel tijd en code besparen en 'libraries' aan 'usefull' code opleveren welke je in elk nieuw project weer kan gebruiken.... Nou DAT klinkt goed!

enthousiast heb ik diverse tuts over OO PHP doorgeworsteld, maar het blijft me maar ontgaan. Wanneer ik het mensen in 2 zinnen hoor uitleggen lijkt het nog het meest op de good old subroutine (gosub... kennen we hem nog?)... Maar daar heb je de functie al voor, dus het moet MEER zijn .

op phpfreakz stond een 4 pagina's uitleg over classes en objects, met als voorbeeld een auto en kleuren en het kwartje valt maar niet. Waar beter de vraag te stellen dan in het dummie topic. Is er iemand welke een en ander kan verduidelijken?
bedoel je iets als
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class auto {
 function auto() {
  // initialisatie
  $this->kleur = "wit";
  $this->merk = "mercedes";
 }

 function set_kleur($kleur="wit") {
  $this->kleur = $kleur;
  return 0;
 }

 function set_merk($merk="mercedes") {
  $this->merk = $merk;
  return 0;
 }
}

eerder gebruikte ik altijd gewoon een boel functies etc. Maar sinds ik dit heb ontdekt vind ik het toch wel erg fijn Gewoon een nieuwe auto aanmaken met
1
2
3
4
5
$auto1 = new auto;
$auto2 = new auto;

$auto1->set_merk("Volkswagen");
$auto1->set_kleur("rood");

En dan heb je fijn alle handige troep in 1 object hangen, zoals bij OO altijd handig is. Wist eerder niet dat dat kon met php.

Ik zit nu met een ander probleem en misschien dat iemand me daarmee kan helpen? Ik heb zeg maar 3 tabellen:

1
2
3
einz_login [id,username,accesslevel,avatar,sig]
einz_topic [id,forum_id,titel,sticky,slot,announcement]
einz_reactie [id,plaatstijd,user_id,inhoud]

en nu wil ik op een of andere manier een topiclijst genereren met De topictitel, of hij sticky is of niet, de topicstarter (degene die de eerste reactie in de topic heeft), het aantal posts in het betreffende topic en de laatste post + poster. Nu heb ik daar nog minstens N+1 queries voor nodig voor N topics, en ik wil dat natuurlijk in 1 query. Dit is mijn functie:

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
<?php
    
function get_topics($fid,$pag=1,$aantal=50) {
      
$topic = Array();
      
$this-&gt;Db-&gt;query("SELECT t1.id, t1.titel, t1.sticky, t1.slot, t1.announcement,
                               COUNT(DISTINCT(t2.id)) as aantal, MAX(t2.id) as max, MIN(t2.id) as min,
                               MAX(t2.plaatstijd) as maxtijd,
                               t3.username as usermin
                        FROM einz_topic as t1, einz_login as t3, einz_login as t4 JOIN einz_reactie as t2
                        ON t2.topic_id = t1.id
                        WHERE t1.forum_id="
.$fid."
                        AND t3.id = t2.nick_id
                        GROUP BY t1.id
                        ORDER BY t1.announce, t1.sticky, maxtijd DESC LIMIT "
.(($pag-1)*$aantal).",".$aantal);
      
$val2 = Array();
      while (
$val = $this-&gt;Db-&gt;newRow()) {
        
$val2[] = $val;
      }
      foreach (
$val2 as $key=&gt;$val) {
        
$t1["id"] = $val["id"];
        
$t1["titel"] = $val["titel"];
        
$t1["aantal"] = $val["aantal"];
        
$t1["maxid"] = $val["max"];
        
$t1["minid"] = $val["min"];
        
$t1["slot"] = $val["slot"];
        
$t1["sticky"] = $val["sticky"];
        
$t1["announce"] = $val["announce"];
        
$t1["starter"] = $val["usermin"];

        
$this-&gt;Db-&gt;query("SELECT einz_login.username as user,einz_reactie.plaatstijd as lasttijd, UNIX_TIMESTAMP(einz_reactie.plaatstijd) as tijd FROM einz_login,einz_reactie WHERE einz_login.id = einz_reactie.user_id AND einz_reactie.id = ".$val["max"]." LIMIT 1");
        if (
$val3 = $this-&gt;Db-&gt;newRow()) {
          
$t1["lastpost"] = $val3["tijd"];
          
$t1["lasttijd"] = $val3["lasttijd"];
          
$t1["lastuser"] = $val3["user"];
        }
        
$topic[] = $t1;
      }
      return
$topic;
    }
?>

het werkt, maar toch vind ik het geen mooie oplossing. Ik heb liever iets snellers. Daarnaast staat mijn webpagina op een server waarop ik bijv niet (SELECT * FROM tabel WHERE id IN (SELECT id FROM tabel2)) kan doen, wat het allemaal nog wat gecompliceerder maakt. Maar goed, iemand een oplossing?
□ Reality is merely an illusion,albeit a very persistent one-A.Einstein
■ Of ik ben gek of de rest van de wereld.Ik denk zelf de rest van de wereld-Rudeonline
□ The war is not meant to be won.It is meant to be continuous-G.Orwell
  FOK!-Schrikkelbaas maandag 18 april 2005 @ 00:13:11 #96
1972 Swetsenegger
Egocentrische Narcist
pi_26312216
quote:
Op maandag 18 april 2005 00:11 schreef capetonian het volgende:

[..]

URL?
www.phpfreakz.nl
zoeken in artikelen
OO



Maar hierbij
http://www.phpfreakz.nl/artikelen.php?aid=99
pi_26324017
FF een vraagje, hoe veilig mijn inlog-systeem is. Het antwoord weet ik al: niet heel erg, dus de volgende vraag: hoe kan het beter)

Je logt in, en je naam_id, en wachtwoord wordt opgeslagen in een session-variable. Vervolgens wordt er een php-bestand geinclude, en in dat bestand staan variable, onderandere het wachtwoord. Wanneer de session-variable en het wachtwoord in het bestand gelijk zijn, wordt de rest van de pagina weergegeven, anders een niet-inlog fout.

Grootste lek is de bestand welke ge-include wordt. Want als je het bestand weet, en de variable-naam kun je met include() en print() het wachtwoord zomaar achterhalen.

Hoe kan het beter? Kun je bv in het .htaccess bestand enkel files van een bepaald domein toestaan om het bestand te include'n?
En kun je het wachtwoord coderen? Gevonden, met Crypt()


Dank!

[ Bericht 2% gewijzigd door the_disheaver op 18-04-2005 15:28:13 ]
  maandag 18 april 2005 @ 16:57:43 #98
32768 DionysuZ
Respect my authority!
pi_26326187
ik gebruik zelf md5 om het wachtwoord te encrypten. Bij mij staan de inlog wachtwoorden in een database, dubbel md5 gecrypt en als je inlogt krijg je een cookie met je wachtwoord enkel md5 gecrypt. Als mensen je cookie immers achterhalen hebben ze anders ook meteen je wachtwoord. En in mijn geval de hash van het wachtwoord, daarom in de db dubbel. Kan het beter?

Overigens heb ik de wachtwoorden van de database etc. in een tekst bestand gezet en in een directory gepleurd die ik met een .htaccess file met de volgende inhoud heb beveiligd
quote:
<Limit GET POST PUT DELETE>
order deny,allow
deny from all
</Limit>
ik ben niet zo'n held op beveiligingsgebied dus als iemand me kan vertellen hoe het beter kan
□ Reality is merely an illusion,albeit a very persistent one-A.Einstein
■ Of ik ben gek of de rest van de wereld.Ik denk zelf de rest van de wereld-Rudeonline
□ The war is not meant to be won.It is meant to be continuous-G.Orwell
pi_26326258
quote:
Op maandag 18 april 2005 15:23 schreef the_disheaver het volgende:
FF een vraagje, hoe veilig mijn inlog-systeem is. Het antwoord weet ik al: niet heel erg, dus de volgende vraag: hoe kan het beter)

Je logt in, en je naam_id, en wachtwoord wordt opgeslagen in een session-variable. Vervolgens wordt er een php-bestand geinclude, en in dat bestand staan variable, onderandere het wachtwoord. Wanneer de session-variable en het wachtwoord in het bestand gelijk zijn, wordt de rest van de pagina weergegeven, anders een niet-inlog fout.

Grootste lek is de bestand welke ge-include wordt. Want als je het bestand weet, en de variable-naam kun je met include() en print() het wachtwoord zomaar achterhalen.

Hoe kan het beter? Kun je bv in het .htaccess bestand enkel files van een bepaald domein toestaan om het bestand te include'n?
En kun je het wachtwoord coderen? Gevonden, met Crypt()


Dank!
Wachtwoorden kun je eventueel ook encrypten met md5(); dit is wat veiliger, omdat een md5-hash onomkeerbaar is, je kunt de passworden dus wel matchen, maar ze kunnen nooit meer teruggerekent worden.

En ik zie het probleem met het includen niet zo, als je je include bestand gewoon een .php extensie geeft krijgt degene die de filename weet in principe niks te zien, zolang je niks print in je include-bestand dus.
pi_26328586
Je moet geen wachtwoord in je cookie zetten, ook niet encrypt.

Uit een eerder topic gevist: interessant linkje over beveiliging/inloggen
pi_26328630
quote:
Op maandag 18 april 2005 18:29 schreef ikke_ook het volgende:
Je moet geen wachtwoord in je cookie zetten, ook niet encrypt.

Uit een eerder topic gevist: interessant linkje over beveiliging/inloggen
Hey, die site was ik al een tijdje kwijt. Thx
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_26328756
Sinds wanneer heb jij sites nodig??
  maandag 18 april 2005 @ 18:54:52 #103
32768 DionysuZ
Respect my authority!
pi_26329287
tnx voor dat linkje. Handige shit
□ Reality is merely an illusion,albeit a very persistent one-A.Einstein
■ Of ik ben gek of de rest van de wereld.Ik denk zelf de rest van de wereld-Rudeonline
□ The war is not meant to be won.It is meant to be continuous-G.Orwell
pi_26330282
quote:
Op maandag 18 april 2005 18:35 schreef ikke_ook het volgende:
Sinds wanneer heb jij sites nodig??
Die link had ik Darkomen willen geven als antwoord op z'n vraag.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_26330327
quote:
Op maandag 18 april 2005 16:57 schreef DionysuZ het volgende:
ik gebruik zelf md5 om het wachtwoord te encrypten. Bij mij staan de inlog wachtwoorden in een database, dubbel md5 gecrypt en als je inlogt krijg je een cookie met je wachtwoord enkel md5 gecrypt. Als mensen je cookie immers achterhalen hebben ze anders ook meteen je wachtwoord. En in mijn geval de hash van het wachtwoord, daarom in de db dubbel. Kan het beter?
Nou dankzij die pagina weet je dus dat het veel beter kan!
quote:
Overigens heb ik de wachtwoorden van de database etc. in een tekst bestand gezet en in een directory gepleurd die ik met een .htaccess file met de volgende inhoud heb beveiligd
[..]

ik ben niet zo'n held op beveiligingsgebied dus als iemand me kan vertellen hoe het beter kan
Kritische info zoals wachtwoorden en inlognamen kun je beter helemaal buiten de www root houden, indien mogelijk. Een htaccess pw kan in theorie gehacked worden, bijv gesniffed als je geen ssl gebruikt, of gewoon met brute force geraden als je wachtwoord niet veilig genoeg is. De info ligt dan voor het oprapen. Als je een bestand buiten de www root plaatst dan kan de webserver ze niet eens bereiken en zijn ze ook onbereikbaar voor bezoekers. Jij kan de info dan wel bereiken via een ssh verbinding. En als je dan echt secure wil zijn dan maak je de verbinding met een private/public rsa key pair van ten minste 2048 bits grootte, met een 40 tekens lange passphrase.
Unox, the worst operating system.
  maandag 18 april 2005 @ 19:57:07 #106
32768 DionysuZ
Respect my authority!
pi_26330820
probleem is dat ik niet buiten de www root bestanden kan plaatsen. Tis nie mijn server en die mogelijkheid wordt me niet geboden. Maar mijn .htaccess bestand bevat geen paswoord, slechts een "Deny all" zodat je er gewoon niet van buiten in kan. Maar misschien dat iemand weet hoe veilig een directory is als er een .htaccess file in staat met als inhoud:

1
2
3
4
<Limit GET POST PUT DELETE>
order deny,allow
deny from all
</Limit>
□ Reality is merely an illusion,albeit a very persistent one-A.Einstein
■ Of ik ben gek of de rest van de wereld.Ik denk zelf de rest van de wereld-Rudeonline
□ The war is not meant to be won.It is meant to be continuous-G.Orwell
pi_26331005
Je kan ze ook de permissie 600 geven (als de server tenminste goed is geconfigureerd, anders kan je er zelf ook niet meer bij )
Unox, the worst operating system.
  maandag 18 april 2005 @ 20:06:57 #108
32768 DionysuZ
Respect my authority!
pi_26331060
hm nu je het zegt, ik zal dat eens proberen
□ Reality is merely an illusion,albeit a very persistent one-A.Einstein
■ Of ik ben gek of de rest van de wereld.Ik denk zelf de rest van de wereld-Rudeonline
□ The war is not meant to be won.It is meant to be continuous-G.Orwell
  maandag 18 april 2005 @ 20:10:10 #109
32768 DionysuZ
Respect my authority!
pi_26331129
600 werkte niet, maar 700 wel.
□ Reality is merely an illusion,albeit a very persistent one-A.Einstein
■ Of ik ben gek of de rest van de wereld.Ik denk zelf de rest van de wereld-Rudeonline
□ The war is not meant to be won.It is meant to be continuous-G.Orwell
pi_26331712
quote:
Op maandag 18 april 2005 19:35 schreef SuperRembo het volgende:

[..]

Die link had ik Darkomen willen geven als antwoord op z'n vraag.
DIe heb ik nu ook, bedankt

en ik zie dat ik het veilig doe , md5, ip opslaan, online status veld, geen pw of username in cookie of sessie
pi_26331717
Das handig, dat linkje Wel een beetje dom om niet gewoon aan dat 1 of 0 (wel of niet ingelogd) te denken. Hoef ik dat bestand ook niet elke keer te openen...
quote:
DutchBlood:
En ik zie het probleem met het includen niet zo, als je je include bestand gewoon een .php extensie geeft krijgt degene die de filename weet in principe niks te zien, zolang je niks print in je include-bestand dus.
in het includebestand wordt enkel waardes gegeven aan variables. Dus je krijgt idd niets te zien.

Maar mocht iemand weten welk bestand ik gebruik, in een eigen script dat bestand include, en ook nog weet welke variablenaam ik er aan heb gegeven (of kun je niet via het debuggen alle variable bekijken?) en dat vervolgens simpel weg print.

Maar wanneer ik md5() gebruik, maakt het ook niet veel uit of hij dat te zien komt...
  FOK!-Schrikkelbaas maandag 18 april 2005 @ 22:36:03 #112
1972 Swetsenegger
Egocentrische Narcist
pi_26335121
quote:
Op maandag 18 april 2005 18:29 schreef ikke_ook het volgende:

Uit een eerder topic gevist: interessant linkje over beveiliging/inloggen


Iemand al meer info over OOP?
  Lieve Belg maandag 18 april 2005 @ 22:44:15 #113
86282 Jump
[Belg.] Jump (de ~ (m.))
pi_26335394
De OP voor dit topic kan nu gevonden worden op http://wiki.fok.nl/index.php/OP/PHP.

Aanpassen mag, zolang deze maar beter uitkomt dan de huidige

Ook handig: http://wiki.fok.nl/index.php/PHP
Op zondag 28 oktober 2007 01:07 schreef clumsy_clown het volgende:
Jump daarentegen, is wįy minder braaf en lief dan hij lijkt
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; «shmoop|dingen» jawel, jij bent Superjump
pi_26336365
quote:
Op maandag 18 april 2005 22:36 schreef Swetsenegger het volgende:

[..]



Iemand al meer info over OOP?
http://www.phppatterns.com, met een lijst OOPhp tuts
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
  dinsdag 19 april 2005 @ 04:04:59 #115
19840 Libris
Live from Singapore
pi_26339858
quote:
Op maandag 18 april 2005 22:36 schreef Swetsenegger het volgende:

[..]



Iemand al meer info over OOP?
en http://phpclasses.half2.nl/browse/
En site met een verzameling php classes.

Zelf gebruik ik voor mijn database een class, werkt wel fijn
pi_26341834
quote:
Op maandag 18 april 2005 20:46 schreef Darkomen het volgende:

[..]

DIe heb ik nu ook, bedankt

en ik zie dat ik het veilig doe , md5, ip opslaan, online status veld, geen pw of username in cookie of sessie
Wat ik me afvraag, waarom geen usernames in sessies ? Staat ook niks over op die website (over veilig inlog systeem).
ne okuyon, bokmu var?
  FOK!-Schrikkelbaas dinsdag 19 april 2005 @ 10:20:13 #117
1972 Swetsenegger
Egocentrische Narcist
pi_26342222
quote:
Op dinsdag 19 april 2005 10:03 schreef saban het volgende:

[..]

Wat ik me afvraag, waarom geen usernames in sessies ? Staat ook niks over op die website (over veilig inlog systeem).
Om dezelfde reden als het password. Het is simpelweg te onderscheppen, en hoe meer info een potentiele hacker eenvoudig kan onderscheppen, des te eenvoudiger de hack wordt

-edit- overigens, voor 1 of ander boerelullen site-tje met een cmsje zal ik me niet zoveel zorgen maken als ik jou was
pi_26342321
quote:
Op dinsdag 19 april 2005 10:20 schreef Swetsenegger het volgende:

[..]

Om dezelfde reden als het password. Het is simpelweg te onderscheppen, en hoe meer info een potentiele hacker eenvoudig kan onderscheppen, des te eenvoudiger de hack wordt

-edit- overigens, voor 1 of ander boerelullen site-tje met een cmsje zal ik me niet zoveel zorgen maken als ik jou was
Een loginnaam kan de hacker toch wel verkrijgen, via het forum bijvoorbeeld, daarom snap ik de nut er niet van.
Website/project waar ik aan werk is geen boerelul site maar een serieuze grote project en ja ik sla usernames op in sessies.
ne okuyon, bokmu var?
  FOK!-Schrikkelbaas dinsdag 19 april 2005 @ 10:26:55 #119
1972 Swetsenegger
Egocentrische Narcist
pi_26342374
quote:
Op dinsdag 19 april 2005 10:24 schreef saban het volgende:

[..]

Een loginnaam kan de hacker toch wel verkrijgen, via het forum bijvoorbeeld, daarom snap ik de nut er niet van.
Welk forum?

[quote]
Website/project waar ik aan werk is geen boerelul site maar een serieuze grote project en ja ik sla usernames op in sessies.
Waarom?
pi_26342491
quote:
Op dinsdag 19 april 2005 10:26 schreef Swetsenegger het volgende:

[..]

Waarom?
De vraag is waarom niet.
Bijvoorbeeld als je wilt doen, Welkom $username, waarom niet ?
Ik bedoel, hoe wil je het anders doen, een user-id in de sessie stoppen en steeds een nieuwe query uitvoeren oid ?

/edit
Ik bedoel, zoiets als FOK! bijvoorbeeld, een hacker kan mijn login naam toch gewoon zien
ne okuyon, bokmu var?
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')