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

Hallo,

ich möchte in meinem Fragebogen mit Hilfe eines Zufallsgenerators die Teilnehmer einer von 6 Experimentalgruppen zuteilen.
Der Zufallsgenerator soll 1. unterscheiden, ob die Teilnehmer Textbaustein 1 oder Textbaustein 2 erhalten.
Weiter soll der Zufallsgenerator entscheiden, welchen von drei möglichen Sätzen der Teilnehmer bei Textbaustein 1 bzw. Textbaustein 2 beim Platzhalter %name% bekommen soll.
Ich habe also zwei Faktoren: einmal den Textbaustein und einmal den Satz beim Platzhalter.
Mein Zufallsgenerator teilt die Personen oben auf der Seite einer von 6 Gruppen ein.
Mein php-Code (s. unten) funktioniert aber leider nicht, ich bekomme eine Fehlermeldung angezeigt, wenn ich die Funktion testen will.

Bisher habe ich nicht herausgefunden, wo das Problem liegt.

//Ziehung der Experimentalgruppe

//Formulierung der Experimentalgruppen

    replace('%image%','Cannabis_479.jpg'); 
    replace('%message%','');// hier alles replacen, was nur mit dem Thema zusammenhängt
    replace('%datum%', '17.06'); 
        replace('%Uhrzeit%', '17:01'); 
        replace('%nummer%', '167');


    if (value('UN02') == 1) // Fake News Typ 1 / ohne Kommentar (Irreführende Inhalte / Misinterpreted Content)
        { 
        text('StimulusoK');
        replace('%message%','');
        replace('%name%','Cannabis wird legalisiert: Lidl weitet sein Sortiment aus und bietet zwei Produkte mit Cannabidiol (CBD) an.');
        replace ('%emoti%', '  ');
        
        }

    elseif (value('UN02') == 2) // Fake News Typ 2  / ohne Kommentar (falsche Zusammenhänge / Manipulated Content)
        {
        text('StimulusoK');
        replace('%message%','');
        replace('%name%','Cannabis wird legalisiert: "Weder intelligent noch zielführend" sei das Verbot von Cannabis, sagte der Vorsitzende des Bundes Deutscher Kriminalbeamter.');
        replace('%emoti%', ' ');
     
        }

 elseif (value('UN02') == 3) // Fake News Typ 3  / ohne Kommentar (Erfundene Inhalte / Fabricated Content)
        {
        text('StimulusoK');
        replace('%message%','');
        replace('%name%','Abstimmung im Bundestag ergibt: Cannabis wird legalisiert“ Lidl legte bereits Pläne vor, Cannabis zu verkaufen.');
        replace('%emoti%', ' ');
        
        }

elseif (value('UN02') == 4) // Fake News Typ 1  / mit Kommentar (Irreführende Inhalte / Misinterpreted Content)
        {
        text('StimulusmK');
        replace('%message%','');
        replace('%name%','Cannabis wird legalisiert: "Weder intelligent noch zielführend" sei das Verbot von Cannabis, sagte der Vorsitzende des Bundes Deutscher Kriminalbeamter.');
        replace('%emoti%', ' ');
        replace('%user%', 'Monika Liebermann'); 
        replace('%Counter%', 'Das stimmt so nicht. Erstens handelt es sich hierbei um LIDL Schweiz, nicht LIDL Deutschland. Zweitens werden die Produkte, die LIDL Schweiz bald anbieten wird, kein THC enthalten und somit keinen Rausch auslösen.'); 
        replace('%time%', 'vor 5 Minuten'); 
        replace('%Profilbild%', 'ursi.jpg');
        }

 elseif (value('UN02') == 5) // Fake News Typ 2  / mit Kommentar (falsche Zusammenhänge / Manipulated Content)
        {
        text('StimulusmK');
        replace('%message%','');
        replace('%name%','Cannabis wird legalisiert: "Weder intelligent noch zielführend" sei das Verbot von Cannabis, sagte der Vorsitzende des Bundes Deutscher Kriminalbeamter.');
        replace('%emoti%', ' ');
        replace('%user%', 'Monika Liebermann'); 
        replace('%Counter%', 'Das stimmt so nicht. Erstens handelt es sich hierbei um LIDL Schweiz, nicht LIDL Deutschland. Zweitens werden die Produkte, die LIDL Schweiz bald anbieten wird, kein THC enthalten und somit keinen Rausch auslösen.'); 
        replace('%time%', 'vor 5 Minuten'); 
        replace('%Profilbild%', 'ursi.jpg');
        }

    else // Fake News Typ 3  / mit Kommentar (Erfundene Inhalte / Fabricated Content)
        {
        text('StimulusmK');
        replace('%message%',''); 
        replace('%name%','Abstimmung im Bundestag ergibt: Cannabis wird legalisiert“ Lidl legte bereits Pläne vor, Cannabis zu verkaufen.');
        replace('%emoti%', ' ', '');
        replace('%user%', 'Monika Liebermann'); 
        replace('%Counter%', 'Das stimmt so nicht. Erstens handelt es sich hierbei um LIDL Schweiz, nicht LIDL Deutschland. Zweitens werden die Produkte, die LIDL Schweiz bald anbieten wird, kein THC enthalten und somit keinen Rausch auslösen.'); 
        replace('%time%', 'vor 5 Minuten'); 
        replace('%Profilbild%', 'ursi.jpg');
        }
in SoSci Survey (dt.) by s060400 (155 points)
edited by SoSci Survey
>  ich bekomme eine Fehlermeldung angezeigt, wenn ich die Funktion testen will.

Dann ergänzen Sie diese doch bitte noch im Posting. Nichts ist hilfreicher bei der Fehlersuche als eine Fehlermeldung :)

Nur zur Sicherheit: Den Zufallsgenerator haben Sie in die Seite gezogen, damit er auch aktiv wird, ja?
Danke für die schnelle Antwort!
Den Zufallsgenerator habe ich auf der Seite gezogen. Die Fehlermeldung zeigt an, dass die Platzhalter nicht ersetzt werden. Und zwar werden nur die Platzhalter nicht ersetzt, die ab "if (value ('UN02') == 1)" etc. kommen. Ganz oben habe ich ja schon ein paar Platzhalter definiert, die für alle 6 Gruppen gleich bleiben, die werden auch richtig ersetzt...

Warnung (Seite 7)
Für den Platzhalter %name% wurde weder ein Eingabefeld mit prepare_input() vorbereitet, noch ein Inhalt mit replace() festgelegt.

Warnung (Seite 7)
Für den Platzhalter %Profilbild% wurde weder ein Eingabefeld mit prepare_input() vorbereitet, noch ein Inhalt mit replace() festgelegt.

Warnung (Seite 7)
Für den Platzhalter %user% wurde weder ein Eingabefeld mit prepare_input() vorbereitet, noch ein Inhalt mit replace() festgelegt.

Warnung (Seite 7)
Für den Platzhalter %Counter% wurde weder ein Eingabefeld mit prepare_input() vorbereitet, noch ein Inhalt mit replace() festgelegt.

Warnung (Seite 7)
Für den Platzhalter %time% wurde weder ein Eingabefeld mit prepare_input() vorbereitet, noch ein Inhalt mit replace() festgelegt.
Das spricht dafür, dass es am Filter hakt. Könnten Sie bitte einmal die Debug-Information der entsprechenden Seite posten: https://www.soscisurvey.de/help/doku.php/de:create:debugging - Danke.
Alles klar!
Hier die Debug Informationen:

[Information]    Interview gestartet (neue Nummer 133)
[Information]    Der Fragebogen base im Projekt fb-beitraege wird verwendet
[Verarbeitung]    Erstelle Fragebogen-Seite Nr. 7
[Inhalt]    Erstelle Frage UN02
[Information]    Vom Zufallsgenerator UN02 wurden folgende Codes gezogen: 4
[Information]    value("UN02") = 4
[Information]    value("UN02") = 4
[Information]    value("UN02") = 4
[Information]    value("UN02") = 4
[Inhalt]    Zeige Text StimulusmK
[Inhalt]    Erstelle Frage WG01
[Inhalt]    Erstelle Frage GW01
[Information]    Folgende Platzhalter sind vorbereitet:
%image% = (Text) Cannabis_479.jpg
%message% = (Text)
%datum% = (Text) 17.06
%Uhrzeit% = (Text) 17:01
%nummer% = (Text) 167
%name% = (Text) Cannabis wird legalisiert: ...
%emoti% = (Text)
%user% = (Text) Monika Liebermann
%Counter% = (Text) Das stimmt so nicht. Ersten...
%time% = (Text) vor 5 Minuten
%Profilbild% = (Text) ursi.jpg

Danke!!

1 Answer

+1 vote

Der Platzhalter wird laut der Debug-Information korrekt gesetzt:

%name% = (Text) Cannabis wird legalisiert: ...

Allerdings erst, nachdem der Text schon eingebunden wurde. Setzen Sie den PHP-Code bitte einfach über/vor den Text.

by SoSci Survey (82.1k points)
Ahhhh es funktioniert jetzt! Dass es an der Reihenfolge liegt, darauf wäre ich nicht gekommen. Tausend Dank für den super Support!
...