Die Lösungmit dem Hash wird funktionierne, obwohl Sie noch ein wenig Salt ergänzen sollten, damit man das Verfahren nicht zu einfach umgehen kann:
$hash = hash('crc32b', $participantid.'938rtw7j94ufgqaw390846ztr');
Eine Alternative besteht darin, dass Sie in der "Datenbank für Inhalte" einfach eine Liste mit (zufälligen) Teilnahme-IDs und (zufälligen) Codes hinterlegen.
1234567ABC 213U
234567ABCD 13UX
34567ABCDE 3UX5
Zufalls-Strings können Sie sich z.B. von der Seriennummer-Funktion in SoSci erzeugen lassen, für die Bestätigungscodes können Sie in Excel dann einfach die ersten z.B. 4 Zeichen (eines anderen Codes, versteht sich) verwenden.
Wenn Sie den Code als REF oder SERIAL im Link übergeben, können Sie m Fragebogen dann über dbGet()
den Antwortcode abfragen.
$code = caseSerial();
$info = dbGet($code);
if ($info) {
$answer = $info[0];
} else {
$answer = 'invalid participant';
}
html('<h1>'.$answer.'</h1>');