[PHP / MySQL] Automatische database formulieren

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

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik probeer door middel van commentaar in mijn mysql tabellen ervoor te zorgen dat deze vervolgens kunnen worden gebruikt om automatisch formulieren te genereren voor het toevoegen of bewerken van de data.

Dus een php script zou de veldlengtes en veldtypen van de tabel opvragen om daarmee een formulier te maken. De commentaar regel van een veld van de tabel kan dan worden gebruikt om aan te geven of een veld een speciaal soort invoerveld nodig heeft of bijvoorbeeld niet bewerkt mag worden.

Maar mijn vraag is nu eigenlijk of er misschien een betere manier bestaat om dit aan te pakken, want ik krijg het gevoel dat dit niet echt een nette manier is... Heeft iemand een idee?

Acties:
  • 0 Henk 'm!

  • orf
  • Registratie: Augustus 2005
  • Laatst online: 00:44

orf

Ik werk de andere kant op, bij een formulier worden (mede aan de hand van de validatie voor het veld) automatisch tabellen kolommen aangemaakt.

PHP:
1
2
3
4
5
$oForm = new cForm();
$oForm->textfield('Titel', 'naam', INTEGER);
$oForm->textfield('Titel', 'naam', TEXT);

$oForm->output();


Dit zorgt ervoor dat er een formulier getoond wordt, de velden gevalideerd worden op de 'validatie constante' en de bijbehorende tabel of kolommen aangemaakt worden. Bij radiobuttons, checkboxes en selects wordt het wat moeilijker, ik heb daarbij de optie gemaakt om koppeltabellen e.d. te maken.

Als basis gebruik ik www.formhandler.net

Acties:
  • 0 Henk 'm!

  • Michali
  • Registratie: Juli 2002
  • Laatst online: 29-05 22:54
Ik zou het idd. scheiden van je DB zelf. Je kunt je DB bijvoorbeeld beschrijven in een soort configuratiebestand. Dat kan in de vorm van XML zijn, of pure PHP code. Op deze manier kun je het ook zo maken dat het geschikt is voor meedere databases. Met commentaar van de tabel/velden zelf heb je daar weinig kans op.

Noushka's Magnificent Dream | Unity


Acties:
  • 0 Henk 'm!

  • Genoil
  • Registratie: Maart 2000
  • Laatst online: 12-11-2023
Op zich kun je natuurlijk best dit soort functionaliteit bouwen, maar je moet niet proberen er formulieren mee te genereren voor je end-user. Maw alleen voor jezelf, om op simpele wijze snel wat data in je applicatie te stoppen/updaten/verwijderen, zonder de complexiteit van rauwe SQL of phpMyAdmin. In hedendaagse MVC frameworks zit dat er vaak standaard bij en heet het "scaffolding" (steigerbouw). Deze methodes doen alles puur op basis van table en field metadata en dus niet in het commentaar.

Acties:
  • 0 Henk 'm!

  • kunnen
  • Registratie: Februari 2004
  • Niet online
Probeer eens een MVC framework uit, zoals Ruby on Rails. Of als je PHP wilt: CakePHP, dit is hetzelfde, in PHP nagemaakt. Kijk daar eens in de source hoe scaffolding geregeld wordt.

Acties:
  • 0 Henk 'm!

  • MaNdM
  • Registratie: April 2001
  • Laatst online: 22:37

MaNdM

1000-dingen-doekje

Ik ben hier ook een tijdje mee bezig geweest en ik heb daar een testbestandje voor opgezet waar je misschien wat mee zou kunnen. Bekijk de demo maar hier

En download de bron maar hier

Het is nog erg eenvoudig gehouden maar het kan je misschien in de goede richting helpen.

To be determined...

Pagina: 1