Toon posts:

[PHP/JS] Google Forms, maar dan in Laravel/PHP

Pagina: 1
Acties:

Vraag


  • HollowGamer
  • Registratie: Februari 2009
  • Niet online
Mijn vraag
Google Forms werkt ontzettend simpel en goed, zoiets zou mooi zijn in een systeem dat wordt gebouwd.
De bedoeling is dus dat (geverifieerde) gebruikers eigen formulieren kunnen maken (met input, checkbox, radio, select, etc.).

Opzicht is dat geen probleem:
- Question model
- Answer model
- Form model (eventueel)

Alleen ben ik nog niet uit hoe je dit het beste kunt opbouwen en beheerbaar kunt houden.
Elk element zal een record hebben en gebruikers dienen zich ook te houden aan een ruleset.

Zaken die mij bijvoorbeeld te binnen schieten:
- Er moet een optie zijn om te bepalen of enkel geregistreerde gebruikers het formulier mogen invullen.
- Er zullen uitzonderingen zijn van vragen (als je X invult, dan niet Y bijvoorbeeld)
- We werken veelal met enums, tags, etc. - zodat we zeker weten dat het antwoord ook bestaat. Als gebruiker X dus een optie selecteert, dan moet dit ook weer gevalideerd worden.
- Wat doen we met antwoord data? Het lijkt me gewenst de antwoorden te encrypten bijvoorbeeld, zodat we de privacy kunnen waarborgen bij eventuele lekken (*dat willen we absoluut niet, maar voorkomen is beter dan genezen)
- De hele front-end zal moeten worden gebouwd voor dit, wat nog niet zo eenvoudig is om te doen.

Hoe meer ik erover nadenk, hoe minder ik er voor voel. Niet dat ik het geen uitdaging vind, maar het lijkt me nog niet zo eenvoudig als dat het lijkt.

Er zijn form builders, die zouden we als een soort wrapper kunnen gebruiken, maar welke zijn bijvoorbeeld geschikt voor zoiets?

Wat is jullie ervaring? Bestaan er goede packages? Kunnen we eventueel de Google API gebruiken?

Alvast bedankt!

Relevante software en hardware die ik gebruik
- Laravel 9x
- Livewire
- Alpine JS
- Tailwind

Wat ik al gevonden of geprobeerd heb
https://github.com/filamentphp/filament
https://www.reddit.com/r/...er_like_google_forms_for/

Alle reacties


  • DJMaze
  • Registratie: Juni 2002
  • Niet online
Er zijn al heel veel oplossingen, wat heb je daar al tussen gevonden wat je zoekt?

De antwoorden encrypten is veilig, maar hoe ga je dan rap statistieken uitdraaien?
En als je op de server moet decrypten en je server is gehackt, dan hebben ze je private key.

Maak je niet druk, dat doet de compressor maar


  • CH4OS
  • Registratie: April 2002
  • Niet online

CH4OS

It's a kind of magic

Je zou eens kunnen kijken naar LaraForm. Dat doet volgens mij precies wat je wilt. :) Gevonden met twee tellen zoeken bij google naar 'Laravel Google Forms'. Of het origineel: Laravel-GoogleForms.

[Voor 44% gewijzigd door CH4OS op 12-02-2023 13:49]


  • HollowGamer
  • Registratie: Februari 2009
  • Niet online
DJMaze schreef op zondag 12 februari 2023 @ 13:45:
Er zijn al heel veel oplossingen, wat heb je daar al tussen gevonden wat je zoekt?

De antwoorden encrypten is veilig, maar hoe ga je dan rap statistieken uitdraaien?
En als je op de server moet decrypten en je server is gehackt, dan hebben ze je private key.
Die vraag wilde ik eigenlijk hier stellen, want ik ben niet zo bekend (nog) met goede oplossingen. :)
Google Forms ben ik redelijk bekend mee, maar heb nog nooit zoiets zelf gebouwd.

Ik kom voornamelijk form builders tegen, maar dat is een beetje het tegenover gestelde. We zouden wel bijvoorbeeld deze kunnen gebruiken voor het parsen ervan.

Encrypten/decrypten gaat toch vrij snel? Het is idee van de encryptie, is dat wij niet zomaar de antwoorden kunnen inzien, bijvoorbeeld met een database dump op een backup systeem. Deze zijn in mijn ogen vertrouwelijk, ook lijkt met het veiliger aangezien wij de backup schrijven naar een andere opslag.

  • HollowGamer
  • Registratie: Februari 2009
  • Niet online
CH4OS schreef op zondag 12 februari 2023 @ 13:48:
Je zou eens kunnen kijken naar LaraForm. Dat doet volgens mij precies wat je wilt. :) Gevonden met twee tellen zoeken bij google naar 'Laravel Google Forms'. Of het origineel: Laravel-GoogleForms.
Thanks! Het nadeel is alleen dat deze packages al 3-5 jaar niet meer zijn bijgewerkt. Nu kan ik wel de logica hiervan eventueel af kijken en deze porten naar de stack die wij gebruiken.

  • DJMaze
  • Registratie: Juni 2002
  • Niet online
Als jij de antwoorden niet mag zien en je backups niet veilig zijn, dan moet je even bedenken hoe je dat kan doen zonder encryptie.

Ik weet hoeveel een artiest verdient, wie er waar in een hotel overnacht, etc. Dat is mijn zorg over de privacy en mag ik niet vertellen, anders ben ik het lek.
Dat vertrouwen hebben ze in mij samen met een contract over privacy waarborging.
En hierdoor kan ik mijn werk goed doen en problemen oplossen enzo.

Daarvoor heb je als ondersteuning ook ISO en NEN normen/certificeringen.

[Voor 7% gewijzigd door DJMaze op 12-02-2023 13:57]

Maak je niet druk, dat doet de compressor maar


  • HollowGamer
  • Registratie: Februari 2009
  • Niet online
DJMaze schreef op zondag 12 februari 2023 @ 13:55:
Als jij de antwoorden niet mag zien en je backups niet veilig zijn, dan moet je even bedenken hoe je dat kan doen zonder encryptie.

Ik weet hoeveel een artiest verdient, wie er waar in een hotel overnacht, etc. Dat is mijn zorg over de privacy en mag ik niet vertellen, anders ben ik het lek.
Dat vertrouwen hebben ze in mij samen met een contract over privacy waarborging.
En hierdoor kan ik mijn werk goed doen en problemen oplossen enzo.
Ik zeg niet dat onze systemen niet veilig zijn, maar meer 'als'.

Ja, we hebben permissie controle en iedereen gaat er zorgvuldig mee om, maar toch blijft het een belangrijk vraagstuk: hoe goed om te gaan met userdata.
Pagina: 1


Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee