abonnement Unibet Coolblue Bitvavo
pi_134330251


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

Succes heren met het volgende deeltje!
In theory there is no difference between theory and practice. In practice there is.
pi_134332929
Om er maar eens eentje in te gooien: waarom zie ik deze topics zoveel gebruik van mysql_* of mysqli_* en zo weinig van PDO?
Tegenwoordig moet je Dr. Ir. zijn om een beetje correct Nederlands te kunnen neerpleuren.
Abusing semicolons since 1987.
pi_134334163
quote:
0s.gif Op maandag 16 december 2013 16:39 schreef rekenwonder het volgende:
Om er maar eens eentje in te gooien: waarom zie ik deze topics zoveel gebruik van mysql_* of mysqli_* en zo weinig van PDO?
Vind het prettiger in gebruik dan mysqli in OOP.
Ben net begonnen met OOP (en PHP eigenlijk ook lol).

[ Bericht 1% gewijzigd door #ANONIEM op 16-12-2013 17:13:42 ]
pi_134334599
quote:
0s.gif Op maandag 16 december 2013 16:39 schreef rekenwonder het volgende:
Om er maar eens eentje in te gooien: waarom zie ik deze topics zoveel gebruik van mysql_* of mysqli_* en zo weinig van PDO?
Voor een beginner lijkt het me op zich wel goed om te beginnen met mysql_( i ) en daarna PDO.
Terrorism is the poor mans war, war is the rich mans terrorism.
pi_134334617
quote:
1s.gif Op maandag 16 december 2013 17:24 schreef Baghdaddy het volgende:

[..]

Voor een beginner lijkt het me op zich wel goed om te beginnen met mysql_(i) en daarna PDO.
Mij niet. Alleen maar nadelen.
pi_134334888
quote:
1s.gif Op maandag 16 december 2013 17:24 schreef Baghdaddy het volgende:
Voor een beginner lijkt het me op zich wel goed om te beginnen met mysql_( i ) en daarna PDO.
Hoezo?
pi_134335333
quote:
0s.gif Op maandag 16 december 2013 17:31 schreef RetRy32 het volgende:

[..]

Hoezo?
Nee ik trek mijn bewering terug. In mijn geval vond ik het handig om kennis te maken met PHP en MySQL m.b.v. mysql_i omdat het mij wat simpeler leek om te begrijpen. Als ik terugkijk had ik PDO liever eerder ontdekt :P.
Terrorism is the poor mans war, war is the rich mans terrorism.
pi_134336397
quote:
1s.gif Op maandag 16 december 2013 17:24 schreef Baghdaddy het volgende:

[..]

Voor een beginner lijkt het me op zich wel goed om te beginnen met mysql_( i ) en daarna PDO.
haal die haakjes eens weg.
pi_134337008
quote:
1s.gif Op maandag 16 december 2013 17:24 schreef Baghdaddy het volgende:

[..]

Voor een beginner lijkt het me op zich wel goed om te beginnen met mysql_( i ) en daarna PDO.
Onzinreden. Gelijk met PDO beginnen. Leer je het in een keer goed, kan je ook makkelijk meenemen naar andere talen waar ze soortgelijke dingen hebben zoal DBI in Perl.
In theory there is no difference between theory and practice. In practice there is.
pi_134338779
http://www.phpeveryday.co(...)O-Tutorial-P842.html

Beste instructies voor PDO op het net.
pi_134342720
quote:
0s.gif Op maandag 16 december 2013 16:39 schreef rekenwonder het volgende:
Om er maar eens eentje in te gooien: waarom zie ik deze topics zoveel gebruik van mysql_* of mysqli_* en zo weinig van PDO?
De mysql_* functies moet je sowieso niet meer gebruiken (tenzij je een fix gaat doen in bestaande code die van die functies gebruik maakt). Die zijn officieel deprecated en gaan er in de toekomst helemaal uit.
pi_134349576
quote:
0s.gif Op maandag 16 december 2013 20:54 schreef Light het volgende:

[..]

De mysql_* functies moet je sowieso niet meer gebruiken (tenzij je een fix gaat doen in bestaande code die van die functies gebruik maakt). Die zijn officieel deprecated en gaan er in de toekomst helemaal uit.
Er zit ook helemaal geen voordeel aan, en mysqli is niet ingewikkelder ofzo.
pi_134349668
quote:
1s.gif Op maandag 16 december 2013 23:02 schreef RetRy32 het volgende:

[..]

Er zit ook helemaal geen voordeel aan, en mysqli is niet ingewikkelder ofzo.
True, maar ik had het er specifiek over dat je niet mysql_ moet gebruiken. mysqli_ kan prima, maar ik zou PDO aanraden.
  dinsdag 17 december 2013 @ 10:16:45 #14
125913 Devolution
Beep beep Richie
pi_134356822
quote:
1s.gif Op maandag 16 december 2013 23:02 schreef RetRy32 het volgende:

[..]

Er zit ook helemaal geen voordeel aan, en mysqli is niet ingewikkelder ofzo.
Wel als je geen OOP ervaring hebt.
"You know what Hell really is? It's not lakes of burning oil or chains of ice. It's being removed from God's sight."
pi_134357507
Dan word het eens tijd om OOP ervaring op te doen.
pi_134357704
quote:
12s.gif Op dinsdag 17 december 2013 10:16 schreef Devolution het volgende:

[..]

Wel als je geen OOP ervaring hebt.
Ook dan is PDO makkelijker. De syntax is prima in procedurele code te verwerken zonder enige kennis van OOP.
pi_134357786
quote:
14s.gif Op dinsdag 17 december 2013 10:49 schreef KomtTijd... het volgende:

[..]

Ook dan is PDO makkelijker. De syntax is prima in procedurele code te verwerken zonder enige kennis van OOP.
Klopt.
pi_134357868
Heck, misschien is het zelfs een goede eerste stap voor mensen die procedureel programmeren om vast wat inzicht te krijgen in OOP.

Heeft voor mij ook goed gewerkt, dat ik in het verleden wat gekloot heb met DateTime-objecten maakt dat ik nu het OOP programmeren toch wat makkelijker oppik.
  vrijdag 3 januari 2014 @ 22:27:27 #19
178444 DenS
Crientj <3
pi_135045259
Ik heb een probleempje!

Het volgende heb ik op dit moment:

1
2
3
4
<form  method="request" action="http://www.xxx.nl/cms/requests/request.php?func=Search&" id="searchform"> 
            <h1>Artiest</h1>
            <input type="text" name="searchtext" />
</form>

Het bovenstaande moet naar http://www.xxx.nl/cms/req(...)h&searchtext=artiest gaan, maar dat doet ie niet :(
Hij maakt er nu dit van: http://www.xxx.nl/cms/requests/request.php?searchtext=Misss

Dus het mist ?func=Search&

Iemand hier die kan helpen? :)
  vrijdag 3 januari 2014 @ 22:30:37 #20
85514 ralfie
!Yvan eht nioj
pi_135045428
1<input type="hidden" name="func" value="Search" />
pi_135045795
Volgens mij bestaat er geen request methode genaamt 'request'. En je zult idd een hidden input moeten gebruiken om extra variablen mee te geven aan een get request.
  vrijdag 3 januari 2014 @ 22:41:53 #22
178444 DenS
Crientj <3
pi_135046052
quote:
0s.gif Op vrijdag 3 januari 2014 22:30 schreef ralfie het volgende:

[ code verwijderd ]

Thanks, werkt! :D
  vrijdag 3 januari 2014 @ 22:49:39 #23
137776 boem-dikkie
Jedi Mind Baby!
pi_135046486
quote:
0s.gif Op vrijdag 3 januari 2014 22:27 schreef DenS het volgende:
Ik heb een probleempje!

Het volgende heb ik op dit moment:
[ code verwijderd ]

Het bovenstaande moet naar http://www.xxx.nl/cms/req(...)h&searchtext=artiest gaan, maar dat doet ie niet :(
Hij maakt er nu dit van: http://www.xxx.nl/cms/requests/request.php?searchtext=Misss

Dus het mist ?func=Search&

Iemand hier die kan helpen? :)
Waarom werk je via get variabelen in je URL om een zoek functie uit te voeren? Je kunt toch sowieso gewoon in je cms/request/search.php?query=artiestnaam doen en aan de achterkant uitzoeken of er op een artiest moet worden gezocht of een combinatie van variabelen?
Ik weet niks van Hindoes. Wel van Samoerai en andere dingen.
  vrijdag 3 januari 2014 @ 22:51:59 #24
178444 DenS
Crientj <3
pi_135046600
quote:
14s.gif Op vrijdag 3 januari 2014 22:49 schreef boem-dikkie het volgende:

[..]

Waarom werk je via get variabelen in je URL om een zoek functie uit te voeren? Je kunt toch sowieso gewoon in je cms/request/search.php?query=artiestnaam doen en aan de achterkant uitzoeken of er op een artiest moet worden gezocht of een combinatie van variabelen?
Gehele map /request/ wordt aangeleverd door de software maker van onze playout systeem. Dus wil er niet teveel in veranderen binnen die code vanwege updates etc. Voor nu de makkelijkste optie.
pi_135055617
quote:
0s.gif Op vrijdag 3 januari 2014 22:51 schreef DenS het volgende:

[..]

Gehele map /request/ wordt aangeleverd door de software maker van onze playout systeem. Dus wil er niet teveel in veranderen binnen die code vanwege updates etc. Voor nu de makkelijkste optie.
Daarom houdt je altijd een UPDATE log bij ;) de updates die je zelf maakt kunnen in het geval van een template update zo weer aangepast worden.
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_135057281
quote:
0s.gif Op zaterdag 4 januari 2014 03:02 schreef Chandler het volgende:

[..]

Daarom houdt je altijd een UPDATE log bij ;) de updates die je zelf maakt kunnen in het geval van een template update zo weer aangepast worden.
Protip: patch-files.
Tegenwoordig moet je Dr. Ir. zijn om een beetje correct Nederlands te kunnen neerpleuren.
Abusing semicolons since 1987.
pi_135057432
quote:
0s.gif Op zaterdag 4 januari 2014 08:49 schreef rekenwonder het volgende:

[..]

Protip: patch-files.
Juist. Url? verwijzing? :+
The people who lost my respect will never get a capital letter for their name again.
Like trump...
  zaterdag 4 januari 2014 @ 12:20:51 #28
187069 slacker_nl
Sicko pur sang
pi_135060129
quote:
0s.gif Op zaterdag 4 januari 2014 09:17 schreef Chandler het volgende:

[..]

Juist. Url? verwijzing? :+
http://lmgtfy.com/?q=how+to+create+a+patch

man diff, man patch

Overigens zou ik de wijzigingen doorvoeren in de code en die opsturen naar de leverancier in een patch file zodat zij de patch kunnen toevoegen aan hun source tree en daarna heb je minder problemen tijdens een upgrade. Zo werktte ik altijd met interne leveranciers (onze developers), wij de engineers wilden hun code soms aanpassen vanwege bugs of issues en ze kregen dan de patch terug zodat een volgende release de wijziging bevatte en niemand meer de code hoefde aan te passen.
In theory there is no difference between theory and practice. In practice there is.
pi_135152685
Hallo,

Ik wil urls decoden met rawurldecode();

probleem is als ik em echo werkt het prima, maar als ik em in een mysql tabel zet werkt het niet, als ik em bij phpbb in zo'n php bestand zet en dan in html bestand oproep met {BLABLA} werkt het niet, om de een of andere reden blijft ie dan gewoon geencode..

Iemand?
pi_135152915
eh. Sterkte?
  Moderator / Redactie Sport / Devops maandag 6 januari 2014 @ 17:47:36 #31
176766 zoem
zoemt
pi_135153187
Ik volg het niet helemaal. De functie rawurldecode() geeft een string terug. Wat wil je er mee kunnen doen? Want ik snap niet wat MySQL en/of html hiermee te maken heeft :?

[ Bericht 0% gewijzigd door zoem op 06-01-2014 18:03:13 ]
pi_135153642
quote:
0s.gif Op maandag 6 januari 2014 17:47 schreef zoem het volgende:
Ik volg het niet helemaal. De functie rawurlencode() geeft een string terug. Wat wil je er mee kunnen doen? Want ik snap niet wat MySQL en/of html hiermee te maken heeft :?
Ik doe:
$string = rawurldecode($string);
echo $string;

Werkt krijg de string gedecode terug..

mysql_query("UPDATE table SET veld='$string'");

In mysql staat de string nog steeds geencode..

Ik geef in phpbb dit mee aan het template bestand:
$template->assign_vars(array(
'STRING' => $string,
));

in template bestand zet ik em er zo in {STRING}
Het resultaat is een geencode string.. dus rawurldecode heeft weer niks gedaan. terwijl dat met echo wel het geval is.
Ja ik begrijp er ook niks van anders had ik het hier niet gevraagd..

EDIT: ah.. als je em echoed word ie uberhaupt gedecode.. dus waarschijnlijk doet rawurldecode uberhaupt niks.. kzal wel een andere functie nodig hebben ofzo..

[ Bericht 3% gewijzigd door Skunk-m op 06-01-2014 18:05:58 ]
pi_135153936
PHP Echo doet niets decoden hoor. Wellicht doet je browser dat als je de output in een internetbrowser bekijkt.

Verder snap ik het ook niet, lijkt me dat je ergens een typfout of volorde fout maakt ofzo. Debuggen dus.
  Moderator / Redactie Sport / Devops maandag 6 januari 2014 @ 18:08:54 #34
176766 zoem
zoemt
pi_135153945
quote:
0s.gif Op maandag 6 januari 2014 17:59 schreef Skunk-m het volgende:
Ja ik begrijp er ook niks van anders had ik het hier niet gevraagd..
Geeft niet, alleen je verhaal was ietwat wazig ;)
quote:
EDIT: ah.. als je em echoed word ie uberhaupt gedecode.. dus waarschijnlijk doet rawurldecode uberhaupt niks.. kzal wel een andere functie nodig hebben ofzo..
Ah kijk, dan heb je iig een aanknopingspunt. Je kunt beter var_dump() gebruiken ipv echo, omdat dan de weergave (beter) overeenkomt met de inhoud van je variabele en kijk bij voorkeur naar de bron van je pagina ipv de pagina zelf.
pi_135154081
quote:
Ah kijk, dan heb je iig een aanknopingspunt. Je kunt beter var_dump() gebruiken ipv echo, omdat dan de weergave (beter) overeenkomt met de inhoud van je variabele en kijk bij voorkeur naar de bron van je pagina ipv de pagina zelf.
Ja ik had em al tussen script tags gezet en daarna in de bron gekeken..
schijnbaar was ie gehtmlentitied nu heb k html_entity_decode() gebruikt en dat werkt.

iig bedankt
pi_135154486
quote:
0s.gif Op maandag 6 januari 2014 18:12 schreef Skunk-m het volgende:

[..]

Ja ik had em al tussen script tags gezet en daarna in de bron gekeken..
schijnbaar was ie gehtmlentitied nu heb k html_entity_decode() gebruikt en dat werkt.

iig bedankt
HTML <script> tags bedoel je? Dat is een manier om javascript code te embedden, heb je ook niets aan. <pre> tags kunnen soms nuttig zijn, maar om je rauwe output te zien moet je altijd gewoon de paginabron bekijken inderdaad.

iig bug gevonden dus ^O^

Ik moet het toch even vragen: Die mysql_ functie was alleen voor het voorbeeld toch hoop ik?
pi_135154921
quote:
HTML <script> tags bedoel je? Dat is een manier om javascript code te embedden, heb je ook niets aan. <pre> tags kunnen soms nuttig zijn, maar om je rauwe output te zien moet je altijd gewoon de paginabron bekijken inderdaad.

iig bug gevonden dus ^O^

Ik moet het toch even vragen: Die mysql_ functie was alleen voor het voorbeeld toch hoop ik?
oja in de bron kijken had misschien ook gekunt, maar ik keek bij element bekijken gebeuren in chrome zeg maar en daar was het ook gewoon gedecode, maar ik moest bij phpbb in een javascript code hebben en daar stond ie wel verkeerd, dus had ik bij mn testbestandje ook maar even script tags eromheen gezet.. maar het is iig opgelost ja.
pi_135261224
Bheheh.
quote:
delete

delete — See unlink() or unset()

Description

This is a dummy manual entry to satisfy those people who are looking for unlink() or unset() in the wrong place.
http://www.php.net/manual/en/function.delete.php
  FOK!mycroftheld donderdag 9 januari 2014 @ 01:31:08 #39
128465 verified  bondage
Ingewikkeld
  Moderator / Redactie Sport / Devops donderdag 9 januari 2014 @ 01:36:32 #40
176766 zoem
zoemt
pi_135261421
Waarom noemt php het dan ook unlink ipv delete :')
pi_135262052
quote:
0s.gif Op donderdag 9 januari 2014 01:36 schreef zoem het volgende:
Waarom noemt php het dan ook unlink ipv delete :')
Volgens mij staat dat aardig beschreven, omdat de unlink functie ook in C gebruikt wordt... oh en delete oftewel del is een 'dos' commando :+

Maar dit zal noobs helpen (hoop ik)
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_135262076
quote:
0s.gif Op donderdag 9 januari 2014 01:36 schreef zoem het volgende:
Waarom noemt php het dan ook unlink ipv delete :')
Omdat delete() ook voor directory's is (dan roept die eigenlijk rmdir() op) unlink is enkel voor files.

http://stackoverflow.com/a/15124886
  donderdag 9 januari 2014 @ 10:00:34 #43
187069 slacker_nl
Sicko pur sang
pi_135264675
quote:
0s.gif Op donderdag 9 januari 2014 01:36 schreef zoem het volgende:
Waarom noemt php het dan ook unlink ipv delete :')
Omdat je de inode pointer breekt en dus de link verbreekt. Je verwijderd de file niet, maar de link naar de file.

http://perldoc.perl.org/functions/unlink.html
http://linux.die.net/man/2/unlink
In theory there is no difference between theory and practice. In practice there is.
  Moderator / Redactie Sport / Devops donderdag 9 januari 2014 @ 12:49:30 #44
176766 zoem
zoemt
pi_135269507
Mijn opmerking was eigenlijk meer een sneer naar php. Ik vond het wel ironisch dat de manual poogt grappig te zijn door te impliceren dat de php-functieset logisch in elkaar zit. Ze jatten functies en conventies van verschillende talen bij elkaar - waaronder inderdaad van C.
quote:
6s.gif Op donderdag 9 januari 2014 03:07 schreef Chandler het volgende:

[..]

Volgens mij staat dat aardig beschreven, omdat de unlink functie ook in C gebruikt wordt... oh en delete oftewel del is een 'dos' commando :+

Maar dit zal noobs helpen (hoop ik)
Unlink() is een Posix-functie en is een variant op de C-functie remove(). Over het algemeen zijn C runtime functies zoals remove() meer portable dan Posix-functies. Beide functies bestaan overigens in de C runtime headers in Windows. Dat del een dos-commando is en unlink een Linux commandlinefunctie heeft er verder weinig mee te maken, omdat dat system utilities zijn en geen C/Posix-functies.
quote:
1s.gif Op donderdag 9 januari 2014 03:18 schreef d4v1d het volgende:

[..]

Omdat delete() ook voor directory's is (dan roept die eigenlijk rmdir() op) unlink is enkel voor files.

http://stackoverflow.com/a/15124886
Het klopt inderdaad dat unlink() (en ook remove()) alleen bestanden kunnen 'verwijderen'. System utilities als del (delete zit niet in ms-dos) hebben weinig te maken met de C/Posix-functies.
quote:
0s.gif Op donderdag 9 januari 2014 10:00 schreef slacker_nl het volgende:

[..]

Omdat je de inode pointer breekt en dus de link verbreekt. Je verwijderd de file niet, maar de link naar de file.

http://perldoc.perl.org/functions/unlink.html
http://linux.die.net/man/2/unlink
Klopt, maar in ruime zin mag het bestand na unlink niet meer (op normale wijze) vindbaar zijn. Voor een taal als php maakt het niet veel uit of het beestje nu unlink, delete, erase of remove heet, omdat het enige doel het 'verwijderen' van het bestand is. Hoe dat low-level gebeurt is voor een taal als php niet interessant, zolang het maar portable is en een consistent gedrag vertoont tussen de verschillende besturingssystemen. Zoals ik hierboven al zei kunnen ze dan beter focussen op een consiste naming convention ipv bij verschillende talen wat functienamen bij elkaar te grabbelen.
  donderdag 9 januari 2014 @ 13:15:18 #45
187069 slacker_nl
Sicko pur sang
pi_135270435
quote:
0s.gif Op donderdag 9 januari 2014 12:49 schreef zoem het volgende:
Klopt, maar in ruime zin mag het bestand na unlink niet meer (op normale wijze) vindbaar zijn. Voor een taal als php maakt het niet veel uit of het beestje nu unlink, delete, erase of remove heet, omdat het enige doel het 'verwijderen' van het bestand is. Hoe dat low-level gebeurt is voor een taal als php niet interessant, zolang het maar portable is en een consistent gedrag vertoont tussen de verschillende besturingssystemen. Zoals ik hierboven al zei kunnen ze dan beter focussen op een consiste naming convention ipv bij verschillende talen wat functienamen bij elkaar te grabbelen.
PHP is gebasseerd op Perl, en in perl heet het unlink en Perl is weer in C geschreven, waar het ook unlink is. Dus de naming convention is correct.
Ik ben het 100% met je eens dat ze in PHP een betere conventie moeten gaan hanteren, idem voor needle-haystack conventies, maar om dan unlink als voorbeeld te nemen is ridicuul.
In theory there is no difference between theory and practice. In practice there is.
pi_135270563
Ze zouden voor PHP6 of 7 gewoon een goeie naming convention moeten ontwerpen, en al die duizenden aliases de deur uit doen.
pi_135270593
quote:
14s.gif Op donderdag 9 januari 2014 13:18 schreef KomtTijd... het volgende:
Ze zouden voor PHP6 of 7 gewoon een goeie naming convention moeten ontwerpen, en al die duizenden aliases de deur uit doen.
eensch.
  donderdag 9 januari 2014 @ 13:29:40 #48
230788 n8n
Pragmatisch
pi_135270973
Ik heb een class::functie() die een return geeft van een array of null. Nu werkt het alleen niet als ik if (empty(class::functie()) doe. Waarom is dat? ;(
Specialization is for insects”.—Robert Heinlein
  Moderator / Redactie Sport / Devops donderdag 9 januari 2014 @ 13:42:06 #49
176766 zoem
zoemt
pi_135271419
quote:
0s.gif Op donderdag 9 januari 2014 13:15 schreef slacker_nl het volgende:

[..]

PHP is gebasseerd op Perl, en in perl heet het unlink en Perl is weer in C geschreven, waar het ook unlink is. Dus de naming convention is correct.
Dat is historisch zo gegroeid inderdaad, maar dat wil niet zeggen dat de naming convention in php als geheel klopt (waar het me om ging). Ik denk dat iedereen deze inmiddels wel kent: PHP: a fractal of bad design
quote:
Ik ben het 100% met je eens dat ze in PHP een betere conventie moeten gaan hanteren, idem voor needle-haystack conventies, maar om dan unlink als voorbeeld te nemen is ridicuul.
Dan heb je mijn eerste alinea niet gelezen ;) Het ging me niet om unlink, maar om de manualuitleg onder het kopje 'delete'. Wat ik in reactie op jou er even uit wilde lichten is dat de low-level implementatie van een deletiefunctie in een high-level taal als php geen rol mag spelen, zolang het maar doet wat het moet doen: een bestand verwijderen.
quote:
0s.gif Op donderdag 9 januari 2014 12:49 schreef zoem het volgende:
Mijn opmerking was eigenlijk meer een sneer naar php. Ik vond het wel ironisch dat de manual poogt grappig te zijn door te impliceren dat de php-functieset logisch in elkaar zit. Ze jatten functies en conventies van verschillende talen bij elkaar - waaronder inderdaad van C.
  donderdag 9 januari 2014 @ 13:55:55 #50
118585 Crutch
Filantroop || Taalzwengel
pi_135272008
Weet iemand nog goede Project Management Software die ik lokaal kan draaien (web based)?

Open source het liefst.

Ik heb natuurlijk het een en ander uitgezocht, maar net niet echt gevonden wat ik zoek.

Wat helemaal tof zou zijn is iets als activecollab
Maar daar moet je voor betalen.
Je moeder is een hamster
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')