Invulformulier

Status
Niet open voor verdere reacties.

kenneth123

Gebruiker
Lid geworden
27 apr 2012
Berichten
82
Wij willen voor onze vereniging een webformulier maken wat mensen kunnen invullen die willen inschrijven voor ons ledenfeest.

Bestaat er een website waar dit gratis kan aangemaakt worden? (eventueel mag het iets kosten)
Belangrijk is dat de personen automatisch een mailtje ontvangen als bevestiging én met betalingsinstructies.
Ik heb google formulieren geprobeerd maar deze stuurt geen automatische mails terug (enkel een kopie van hun antwoorden).

Als iemand me tips kan geven of zo een website weet, altijd welkom!


Bedankt.
 
Wufoo www.wufoo.com (alleen geschikt voor smartphone als breedte wordt ingesteld op max 300 pixels)

EmailMeForm www.emailmeform.com (standaard geschikt voor smartphone, tablet en andere apparaten)

Google Forms www.google.com/forms/about/ (Response wordt opgelsgaen in Google Drive. Ik weet niet of je een email krijgt)

- aanvulling.
Er is een (niet zo dure) browser Add-On voor Google Forms waarmee Email Notificatie mogelijk is.
Google Forms werkt standaard op smartphone, tablet en andere apparaten.
 
Laatst bewerkt:
Je kan (zonder kosten) email notificaties van Google Formulieren ontvangen.

Resultaten van de ingevulde formulieren worden verzameld in Google Spreadsheet.
Google Script kan email notificaties versturen:

1. In Google Formulieren klik je op tabblad Antwoorden, en dan op knopje [+] (Antwoorden weergeven in spreadsheet).
2. Google Spreadsheet wordt geopend, ga in de spreadsheet naar menu Extra > Scripteditor.
3. Haal de standaard scriptcode weg en kopieer/plak de onderstaande scriptcode in het grote vak.
4. Klik op Ctrl+S (Cmd+S bij Mac) om het script op te slaan met naam "Verstuur Google Forms per email" (als dit wordt gevraagd)
5. Ga naar menu Uitvoeren > Functie uitvoeren > Initialize. Klik dan op "Accepteren".

Onderstaand script is gemaakt door Amit www.labnol.org
Code:
function Initialize() {
  var triggers = ScriptApp.getProjectTriggers();
  for(var i in triggers) {
    ScriptApp.deleteTrigger(triggers[i]);
  }
  // Maak een nieuwe SendGoogleForm "onFormSubmit" trigger
  ScriptApp.newTrigger("SendGoogleForm")
  .forSpreadsheet(SpreadsheetApp.getActiveSpreadsheet())
  .onFormSubmit()
  .create();
}
function SendGoogleForm(e) {
  try {
    // Hieronder kan een ander emailadres worden ingevuld, bijv. var email = "abc@def.nl";
    var email = Session.getActiveUser().getEmail();
    // Het onderwerp van de email kan hieronder zelf worden bepaald.
    var subject = "Google Formulier ingevuld";
    var s = SpreadsheetApp.getActiveSheet();
    var columns = s.getRange(1,1,1,s.getLastColumn()).getValues()[0];
    var message = "";
    // Alleen formulier velden die zijn ingevuld worden in de email gezet
    for ( var keys in columns ) {
      var key = columns[keys];
      if ( e.namedValues[key] && (e.namedValues[key] != "") ) {
        message += key + ' :: '+ e.namedValues[key] + "\n\n";
      }
    }
    // MailApp is de Mailer Service van Google Apps Script.
    // Als alternatief kan de GmailApp voor html mail worden gebruikt.
    MailApp.sendEmail(email, subject, message);
  } catch (e) {
    Logger.log(e.toString());
  }
}

Als je geen notificaties meer wilt ontvangen dan ga je in de Google Spreadsheet naar Extra > Scripteditor.
Kies dan menu Bewerken > Triggers Project, en verwijder de formulier trigger die gekoppeld is aan dit formulier.
 
Laatst bewerkt:
Heb dit net geprobeerd maar als ik in de spreadsheet op "scripteditor" klik krijg ik volgende foutmelding:

Google Drive -- Pagina niet gevonden - Google Chrome_2019-03-29_20-31-10.jpg

De andere websites wat je opnoemt zijn ook betalend, op zich is dat niet zo duur maar wel veel als je voor een jaar moet betalen en we hebben dit maar nodig tot 1-6-2019.

Hopelijk kan ik nog iets vinden.
 
Bij de foutmelding lijkt het alsof je in Google Drive zit.
Ben je vanuit Google Forms naar de spreadsheet gegaan? (zie puntje 1).
 
Laatst bewerkt:
zonet nogmaals geprobeerd, telkens hetzelfde.
In afbeelding hieronder screenshots met de stappen die ik uitvoer

googleformuliertest.jpg
 
Ik heb alles doorlopen, geen foutmeldingen. Mogelijk heb je tussendoor niet de spreadsheet én het script opgeslagen met "Bestand > Alles opslaan". Alles opslaan moet ook worden gedaan voordat je Initialize kiest. Zie bijlage voor de stappen die ik heb gedaan.

Wel kom ik een ander probleem tegen.
Bij de laatste stap wordt gevraagd om autorisatie en als ik mijn Google account kies dan zegt Spreadsheet (waarin alle formulier resultaten worden verzameld) dat de maker van de app (ik dus) niet door Google is geautoriseerd. Dit heeft er denk ik mee te maken dat er een script is toegevoegd. Omdat ik geen Gmail gebruik en ook geen Google apps gebruik ben ik deze vraag nooit eerder tegengekomen. Misschien is dit simpel te autoriseren, geen idee. Heb nu weinig tijd om hier verder in te duiken.
 

Bijlagen

  • Google Forms.txt
    1,5 KB · Weergaven: 31
Het kan anders :D

Het script weghalen (en Alles opslaan) en dan het volgende doen

Klik in Google Forms op tabblad Antwoorden
Klik op | en kies "E-mailmeldingen ontvangen ..." (er komt een vinkje voor te staan).

Klik rechtsboven op knop Verzenden.
Kies bij "Verzenden via" de middelste icon.
Zet een vinkje bij URL verkorten.
Kopieer de URL link en zet die op je website (of mail deze link naar alle leden).

Als je in de browser naar deze link gaat dan verschijnt het formulier.
Zodra iemand het formulier heeft ingevuld wordt er een email naar Gmail gestuurd en verschijnt het antwoord in tabblad Antwoorden.

Je kan voor formulieren en antwoorden eventueel een nieuw Google account aanmaken.

- aanvulling notificaties
Smartphones en tablets geven een notificatie bij een nieuwe email. Als je dit ook op je pc of laptop wilt dan kan dit met Pop Peeper Pro (de Pro versie wordt -als je het niet koopt- na 30 dagen een freeware versie die je goed kan gebruiken).
 
Laatst bewerkt:
Heb het getest met uw code en het werkt. Dit is echter niet helemaal wat ik voor ogen had. Ikzelf krijg nu wel mails aan (dat kon idd ook al standaard met de functie e-mailmeldingen ontvangen). Maar de bedoeling is dat degene wat het formulier invult een mail krijgt met allerlei info wat tevens ook de bevestingingsmail is.

De standaardmail die hij nu als antwoord krijgt is gewoon een kopie van zijn gekozen antwoorden.

2019-04-01 13_45_51-Naamloos formulier - Google Formulieren.png
 
Verschillende emails, eentje met instructies voor degene die het formulier invult, en een andere email voor jou als bevestiging. Ik weet niet of dit in Google Forms is te doen zonder programmeerwerk in Google Script.

Is het, omdat het om een korte tijdperiode gaat, niet eenvoudiger de leden een email te sturen met informatie, instructies en een betaallinkje?

Vraaagje:
Je geeft aan dat de 'code' werkt, bedoel je de code van #3 met gebruik van de regel: var email = Session.getActiveUser().getEmail();
 
Ja, ik heb enkel de regel code veranderd naar mijn eigen e-mailadres zoals je aangaf in het txt bestand.
 
Wil je de var email regel aanpassen naar
Code:
var email = Session.getActiveUser().getEmail();

en een eindje verder in de code deze message regel ertussen zetten
Code:
    ....
    message += "Dit is een instructie." + "\n\n";
    // MailApp is de Mailer Service van Google Apps Script.
    ....
en testen of de invuller een email krijgt?

Haal dan wel even het vinkje weg bij Antwoordbevestiging (zie #9) voordat je gaat testen.


Aanv. Ik lees net dat er max. 100 emails per dag mogelijk zijn.
Dit is hét nadeel van gratis email diensten.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan