Toon posts:

[php] Modules maken, en inlees script!

Pagina: 1
Acties:
  • 209 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Hoi.,

Iemand die ik ken is bezig met een CMS.
Hij heeft hier iets in gebouwd, namelijk Modules.
De klant kan dus modules downloaden die op een speciale manier worden geprogrammeerd, en deze via de admin toevoegen.
Hij kan dan bijvoorbeeld polls maken.

Hoe werkt dit, ik bedoel, op welke manier word het geprogrammeerd, en hoe gaat het en beetje in zijn werk. Of is hier geen info over?
Hij heeft het zelf bedacht zei hij.

Het lukt me wel een beetje, maar ik vraag me af hoe hij het doed. Hij wil het niet zeggen.

Alvast bedankt.

Verwijderd

Je kunt een complete set aan pagina's en scripts schrijven die de poll-functie in dit geval zouden verzorgen. Alle code om de poll op te nemen van de gebruiker en een admin-interface bijvoorbeeld.
Daarbij ook nog een install-iets dat de poll-mogelijkheden in een subdir van de content zet én, dan komt de truuk, integreert in de site. Bijvoorbeeld: een linkje erbij in het admin-menu, de mogelijkheid om de poll weer te geven op de frontpage enz.

Volgens mij heb je dan een 'module' wat niet meer is dan een directory die je uitpakt op de server en een scriptje dat het ding installeert.

Bedoel je zoiets?

Verwijderd

Topicstarter
Op woensdag 09 januari 2002 20:04 schreef wijnolst het volgende:
Je kunt een complete set aan pagina's en scripts schrijven die de poll-functie in dit geval zouden verzorgen. Alle code om de poll op te nemen van de gebruiker en een admin-interface bijvoorbeeld.
Daarbij ook nog een install-iets dat de poll-mogelijkheden in een subdir van de content zet én, dan komt de truuk, integreert in de site. Bijvoorbeeld: een linkje erbij in het admin-menu, de mogelijkheid om de poll weer te geven op de frontpage enz.

Volgens mij heb je dan een 'module' wat niet meer is dan een directory die je uitpakt op de server en een scriptje dat het ding installeert.

Bedoel je zoiets?
Zo bedacht ik het zelf ook :) maar ik dacht dat dat fout was

Verwijderd

Mwah - euh - ik wil niet meteen zeggen dat wat ik (wij) denken fout is, maar volgens mij kom je zo aardig in de buurt. De truuk zit hem natuurlijk in de integratie, die kun je zo gemakkelijk en/of moeilijk maken als je zelf wilt.

Je kunt zelfs al je modules volgens een bepaalde standaard opbouwen en dan een functie 'module installeren' in het admin-menu opnemen die de integratie voor zijn rekening neemt. Zou óók nog kunnen... :7.

Suc6!

Verwijderd

Op woensdag 09 januari 2002 17:54 schreef Stoel het volgende:
Hoi.,

Iemand die ik ken is bezig met een CMS.
Hij heeft hier iets in gebouwd, namelijk Modules.
De klant kan dus modules downloaden die op een speciale manier worden geprogrammeerd, en deze via de admin toevoegen.
Hij kan dan bijvoorbeeld polls maken.

Hoe werkt dit, ik bedoel, op welke manier word het geprogrammeerd, en hoe gaat het en beetje in zijn werk. Of is hier geen info over?
Hij heeft het zelf bedacht zei hij.

Het lukt me wel een beetje, maar ik vraag me af hoe hij het doed. Hij wil het niet zeggen.

Alvast bedankt.
doet :X

Verwijderd

Maak een class ofzo..
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?
//poll.module

class poll_module(
  function get_inner_functions(){
    //Dit bouwt een lijst met functies van deze class
    //die je kunt gebruiken + de paramaters
    return array("vote","result",,,);
  }

  function vote(....){
  }
}
?>

  • eamelink
  • Registratie: Juni 2001
  • Niet online

eamelink

Droptikkels

Ja, inderdaad, je maakt voor alle modules eenzelfde soort manier een file of klasse met info over scripts, de benodigde userstatussen oid, de directories, en de config,

en je zorgt dat de CMS dat kan lezen.

Is erg slim, je verkoopt een klant de CMS, + de opties die hij nodig heeft, en de rest koopt hij niet...

Op deze manier kan je ook gemakkelijk dingen uitbouwen/veranderen voor klanten, of nieuwe versies van modules uitbrengen

  • Rense Klinkenberg
  • Registratie: November 2000
  • Laatst online: 09-08 19:19
Wanneer je niet met calsses werkt, waarin alle methodes van een module zitten, moet je er wel op letten dat je richtlijnen hebt m.b.t. de naamgeving van de functies. Je zou bijvoorbeeld kunnen zeggen dat alle functienamen het volgende formaat moeten hebben:
code:
1
{modulenaam}_{functienaam}

Natuurlijk geldt dit alleen wanneer verschillende modules ook gelijktijdig geladen (lees: ge-include) worden.

Verwijderd

Topicstarter
Op woensdag 09 januari 2002 20:38 schreef freak007 het volgende:
Wanneer je niet met calsses werkt, waarin alle methodes van een module zitten, moet je er wel op letten dat je richtlijnen hebt m.b.t. de naamgeving van de functies. Je zou bijvoorbeeld kunnen zeggen dat alle functienamen het volgende formaat moeten hebben:
code:
1
{modulenaam}_{functienaam}

Natuurlijk geldt dit alleen wanneer verschillende modules ook gelijktijdig geladen (lees: ge-include) worden.
klopt, thanks

Verwijderd

Topicstarter
Op woensdag 09 januari 2002 20:09 schreef wijnolst het volgende:
Mwah - euh - ik wil niet meteen zeggen dat wat ik (wij) denken fout is, maar volgens mij kom je zo aardig in de buurt. De truuk zit hem natuurlijk in de integratie, die kun je zo gemakkelijk en/of moeilijk maken als je zelf wilt.

Je kunt zelfs al je modules volgens een bepaalde standaard opbouwen en dan een functie 'module installeren' in het admin-menu opnemen die de integratie voor zijn rekening neemt. Zou óók nog kunnen... :7.

Suc6!
Jup, dat idee, had ik al, maar ik dacht dat het anders moest, dat ik het weer verkeerd aanpakte, maar ik ben het aan het uitwerken

Verwijderd

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?
//poll.module

class poll_module(
  function get_inner_functions(){
    //Dit bouwt een lijst met functies van deze class
    //die je kunt gebruiken + de paramaters
    return array("vote","result",,,);
  }

  function vote(....){
  }
}
?>
euhm. nooit gehoord van de functie get_class_methods() zeker?

gebruik in dit geval get_class_methods(poll_module) om alle methodes van die class in een array te krijgen.

Geef het bestand de zelfde naam als de klasse en je hebt meteen de classname die je kunt gebruiken als funtie parameter (java achtig)

Verwijderd

of gewoon een map maken 'modules'
php bestanden :
naam.php

en die map lezen via een hoofd script
en in die naam.php kan je altijd nog extra bestanden include :)
* Die hoofd script start dan ook die script.
Je moet alleen in de naam.php een converter maken dat hij bv
#POLL# verandert in de html code van de poll :-)
Snapje Ruudje ?

Verwijderd

Op woensdag 09 januari 2002 21:58 schreef SurfingFromAM2PM het volgende:

[..]

euhm. nooit gehoord van de functie get_class_methods() zeker?

gebruik in dit geval get_class_methods(poll_module) om alle methodes van die class in een array te krijgen.

Geef het bestand de zelfde naam als de klasse en je hebt meteen de classname die je kunt gebruiken als funtie parameter (java achtig)
Er zijn zo veel manieren om zo module systeem op te bouwen :)

Verwijderd

Topicstarter
Op woensdag 09 januari 2002 22:18 schreef StephanPHP het volgende:
of gewoon een map maken 'modules'
php bestanden :
naam.php

en die map lezen via een hoofd script
en in die naam.php kan je altijd nog extra bestanden include :)
* Die hoofd script start dan ook die script.
Je moet alleen in de naam.php een converter maken dat hij bv
#POLL# verandert in de html code van de poll :-)
Snapje Ruudje ?
HEHE het is me al lang gelukt, maar je doed het dus op de zelfde manier als ik :) LOL

Verwijderd

Dat met class is ook wel tof..
zal er van de week eens in verdiepe
iemand tips voor siteS?

Verwijderd

Topicstarter
Op zaterdag 12 januari 2002 22:12 schreef StephanPHP het volgende:
Dat met class is ook wel tof..
zal er van de week eens in verdiepe
iemand tips voor siteS?
samen maken ? ;)

Verwijderd

Op woensdag 09 januari 2002 21:58 schreef SurfingFromAM2PM het volgende:

euhm. nooit gehoord van de functie get_class_methods() zeker?

gebruik in dit geval get_class_methods(poll_module) om alle methodes van die class in een array te krijgen.

Geef het bestand de zelfde naam als de klasse en je hebt meteen de classname die je kunt gebruiken als funtie parameter (java achtig)
THNX!!

Verwijderd

Stel ik heb een cms systeem, waarin ik modules kan toevoegen. En ik wil er ook een rechtensysteem omheen hebben, dus groepsrechten en gebruikersrechten.
Hoe moet je dit dan maken, dat zodra er een nieuwe module wordt toegevoegd dit ook wordt doorgevoerd in het rechtensysteem. Dus dat de groep Users dan rechten krijgt in de module?

|:(

Verwijderd

Uhhh... daar is een addon voor gemaakt... weet ff niet hoe die heet...

Verwijderd

Meer info: [topic=255831/1/25]

Verwijderd

Op donderdag 27 juni 2002 10:53 schreef Zef het volgende:
Meer info: [topic=255831/1/25]
Ik ga meteen even kijken. Bedankt
Pagina: 1