Willkommen im Online-Support von SoSci Survey.

Hier bekommen Sie schnelle und fundierte Antworten von anderen Projektleitern und direkt von SoSci Survey.

→ Eine Frage stellen


Welcome to the SoSci Survey online support.

Simply ask a question to quickly get answers from other professionals, and directly from SoSci Survey.

→ Ask a Question

0 votes

Guten Tag,

ich habe eine Frage bezüglich der Funktion einen Fragebogen nur für bestimmte Geräte zuzulassen.
Mein Fragebogen muss ausreichend groß dargestellt werden und sollte deshalb nicht von einem Smartphone oder Tablet aus angewählt werden können. Das habe ich über eine Filterfrage des Fragentyps "Gerät und übermittelte Variablen" eingestellt und es funktioniert größtenteils sehr gut.
Allerdings ist es möglich, den Filter zu umgehen indem man auf dem Smartphone (bemerkt haben wir es in Google Chrome) den Desktop-Modus im Browser aktiviert (Desktop-Webseite anzeigen anschaltet).

Gibt es in Sosci Survey eine Möglichkeit, dies zu unterbinden?

Vielen Dank im Voraus!

in SoSci Survey (dt.) by s137634 (330 points)

1 Answer

+1 vote
 
Best answer

Allerdings ist es möglich, den Filter zu umgehen indem man auf dem Smartphone (bemerkt haben wir es in Google Chrome) den Desktop-Modus im Browser aktiviert

Ich empfehle, dass Sie über die o.g. Frage nicht (nur) die Art des Gerät, sondern auch die Bildschirmbreite abfragen. Dies sollte nicht so einfach zu umgehen sein.

Wenn Sie tatsächlich mit vorsätzlicher Umgehung des Filters rechnen, dann könnten Sie z.B. mittels JavaScript noch messen, ob die Bedienung mittels Klicks oder Touch erfolgt. Dies ist dann aber ein wenig aufwändiger. Oder Sie könnten für das Fortfahren einen Druck auf die Leertaste einfordern - dazu hatte wir kürzlich eine Frage hier im Support.

Bitte beachten Sie auch, dass einige Nutzer auf ihrem Smartphone einen besseren Bildschirm haben als auf dem Laptop ;)

by SoSci Survey (125k points)
selected by s137634
Vielen Dank für Ihre Antwort!

Das mit der Bildschirmgröße ist eine gute Idee.

Ist es möglich, diese als Filter zu verwenden? Also, dass Nutzer mit Bildschirmen von z.B. kleiner als 13 Zoll die Studie gar nicht starten können?
Ich habe für die Gerätevariable, die Smartphones und Tablets erfasst, einen solchen Filter mittels PHP-Code eingebaut. Dort findet man aber unter "Frage bearbeiten" und "Variablen" auch die zugehörigen Werte der jeweiligen Geräte. Für die Bildschirmgröße werden mir aber keine Werte angezeigt, die ich für den Filter verwenden kann. Bzw. es handelt sich dabei vermutlich eh um eine kontinuierliche Variable, die die Pixel in Höhe oder Breite angibt. D.h. ich müsste vermutlich mit einem "<" Befehl arbeiten. Ich weiß aber nicht genau, welche Werte die Variable annehmen kann und somit auch nicht, welche Werte ich in dem Filter eintragen muss.

Können Sie mir da weiterhelfen? Vielen Dank im Voraus!
> Also, dass Nutzer mit Bildschirmen von z.B. kleiner als 13 Zoll die Studie gar nicht starten können?

Sie bekommen die Größe in Pixeln. Wie viele Zoll das sind, hängt von der Display-Auflösung ab.

Aber ja, Sie könnten z.B. alle Geräte mit einer Bildschirmbreite und 1024 Pixeln per IF-Filter abweisen.

>  Für die Bildschirmgröße werden mir aber keine Werte angezeigt

Stellen Sie sicher, dass Sie den IF-Filter erst auf der Seite nach (!) der Frage "Gerät und übermittelte Variablen" platzieren. Die Bildschirmgröße muss beim Teilnehmer gemessen werden und wird erst mit dem Klick auf "Weiter" zum Server übermittelt.
Die Abfrage "Gerät und übermittelte Variablen" ist auf der ersten Seite meines Fragebogens und auf der folgenden habe ich den PHP-Code

if ((value('KF09_ScW') < 1240)) {
  text('PC-Kontrolle', 'spacing=default');   
  buttonHide();   
}

platziert, damit bei Nutzern mit einem Bildschirm kleiner als 1240 Pixeln Breite bloß ein Infotext angezeigt wird und der Fragebogen nicht weiter bearbeitet werden kann. Allerdings greift der Filter nun immer, egal ob mein Bildschirm größer oder kleiner als die angegebene Pixelanzahl ist.
Vermutlich habe ich also noch einen Fehler in meinem Code?
>  Allerdings greift der Filter nun immer, egal ob mein Bildschirm größer oder kleiner als die angegebene Pixelanzahl ist.

Haben Sie den Test ab der ersten Fragebogen-Seite gestartet?

Was zeigt denn die Debug-Information an?
> Haben Sie den Test ab der ersten Fragebogen-Seite gestartet?
Ja, das habe ich.

Ich gebe Ihnen zwei Pretest-Links:

https://www.soscisurvey.de/test196703/?act=ugEtwqLCqIOyy49grHTfOku3
(hier greift der Filter bei < 1240 Pixeln)

https://www.soscisurvey.de/test196703/?act=67bNVEuO7TLMF5xln1BW1sYN
(hier bei < 12 Pixeln)

da ich in den Debug-Optionen nichts auffälliges gesehen habe.
Ich benötige bitte von Ihnen die vollständigen Debug-Informationen, die nach dem Klick auf "Weiter" angezeigt werden: https://www.soscisurvey.de/help/doku.php/de:create:debugging
Welchen Klick auf "Weiter" meinen Sie? Im Augenblick ist es so, dass der Fragebogen direkt beim Start den Text anzeigt, dass der Bildschirm zu klein ist. Dabei wird der "Weiter"-Knopf ausgeblendet.
Verstehe - das heißt, Sie haben auf Seite 1 keine weiteren Inhalte (z.B. eine Begrüßung) als die Frage "Gerät und übermittelte Variablen"? Ich denke, darin liegt das Problem. Fügen Sie dort bitte zumindest folgenden HTML-Code ein:

<script type="text/javascript">
window.addEventListener("load", SoSciTools.submitPage);
</script>
Genau, die Begrüßung kommt erst nachdem sichergestellt ist, dass der Proband den Fragebogen auch ausfüllen darf. Auf Seite 1 befindet sich nur der erste Filter mit der Frage "Gerät und übermittelte Variablen" zum Endgerät, um Smartphones und Tablets rauszufiltern. Aber so funktioniert es nun!
Vielen Dank! :)
Der Knackpunkt ist, dass die Daten erst beim Nutzer gesammelt und mit "Weiter" an den Server geschickt werden müssen, damit sie im PHP-Code zur Verfügung stehen.

Der obige HTML-Code sorgt nun einfach dafür, dass die Seite angezeigt wird und klickt dann selbst auf "Weiter".
...