0 votes
in SoSci Survey (dt.) by s166224 (110 points)
edited by SoSci Survey

Guten Tag,

Ich habe für meine Umfrage einen Zufallsgenerator für Fotos in php generiert (für Code siehe unten) und eine interne Variable erstellt, in der das jeweils gezogene Foto aufgelistet werden sollte. Nun hab ich meine Datenerhebung beendet und in der besagten Variable sind nur teilweise die Namen der gezogenen Fotos beinhaltet. Für einige Proband*innen steht statt der Bezeichnung für das Foto jedoch ein php-Link in der Variable (z.B. index.php?i=Z42EEQOPOIPJ&file=1&rnd=4478). Warum wird mir das in meinen Daten so wiedergegeben und gibt es eine Möglichkeit wie ich nun im Nachhinein noch auf die gezogenen Bilder zurückschließen kann?
Vielen Dank und herzliche Grüße

// Die Listen mit bildern
$noMOld = array("m_jung_Blaetter_Arm.png","m_jung_Blatt_Hals.png ","m_jung_Totenkopf_Arm.png ","m_jung_Totenkopf_Hals.png ","pro://w_alt_Totenkopf_Arm.png ","w_alt_Blaetter_Arm.png ", "w_alt_Blaetter_Hals1.png ", "w_alt_Totenkopf_Hals.png ","pro://w_jung_Blatt_Arm.png ","pro://w_jung_Totenkopf_Arm.png ","pro://w_jung_Totenkopf_Hals.png ", "pro://w_jung_blatt_Hals.png");
$noMYoung = array("m_alt_Blaetter_Arm.png","m_alt_Blaetter_Hals.png","m_alt_Totenkopf_Arm.png", "m_alt_Totenkopf_Hals.png","pro://w_alt_Totenkopf_Arm.png ","w_alt_Blaetter_Arm.png ", "w_alt_Blaetter_Hals1.png ", "w_alt_Totenkopf_Hals.png ","pro://w_jung_Blatt_Arm.png ","pro://w_jung_Totenkopf_Arm.png ","pro://w_jung_Totenkopf_Hals.png ", "pro://w_jung_blatt_Hals.png");
$noWOld = array("m_alt_Blaetter_Arm.png","m_alt_Blaetter_Hals.png","m_alt_Totenkopf_Arm.png", "m_alt_Totenkopf_Hals.png","m_jung_Blaetter_Arm.png","m_jung_Blatt_Hals.png ","m_jung_Totenkopf_Arm.png ","m_jung_Totenkopf_Hals.png ","pro://w_jung_Blatt_Arm.png ","pro://w_jung_Totenkopf_Arm.png ","pro://w_jung_Totenkopf_Hals.png ", "pro://w_jung_blatt_Hals.png");
$noWYoung = array("m_alt_Blaetter_Arm.png","m_alt_Blaetter_Hals.png","m_alt_Totenkopf_Arm.png", "m_alt_Totenkopf_Hals.png","m_jung_Blaetter_Arm.png","m_jung_Blatt_Hals.png ","m_jung_Totenkopf_Arm.png ","m_jung_Totenkopf_Hals.png ","pro://w_alt_Totenkopf_Arm.png ","w_alt_Blaetter_Arm.png ", "w_alt_Blaetter_Hals1.png ", "w_alt_Totenkopf_Hals.png ");
 
// Der wert aus dem ersten Random Generator
$random_num = value("F101");
 
if ($random_num == 1){
    $list = $noWOld;
    // wir wollen w_alt nicht usw...
 
}elseif ($random_num ==2) {
    $list = $noWYoung;
}elseif ($random_num ==3) {
    $list = $noMOld;
}elseif ($random_num ==4) {
    $list = $noMYoung;
}
// debug sind nur zur übersicht
//debug($list); 
 
$index = random(0, count($list)-1); // Ziehe eine zahl zwischen 0 und der listenlänge
//debug($index);
$drawnVal = $list[$index]; // den Wert holen wir uns dann aus der liste.
//debug($drawnVal);
 
// Am besten den Wert in einer Internen Variable speichern, dann weißt du, was die Versuchsperson gesehen hat!
put("F103_01", $drawnVal);
 
// Jetzt das bild mit den neuen Pfaden bauen...
$newStr = '<div style="text-align: center; margin: 3em 0"><img src="' . $drawnVal . '" style= "max-width: 50%" alt=""></div>';
// und ausgeben...
html($newStr); 

1 Answer

0 votes
by SoSci Survey (327k points)

Die genannten Links erzeugt SoSci Survey, wenn Bilder aus der geschützten Dateiablage (pro://...) eingebunden werden. Allerdings sollte der Link erst in der Ausgabe umgewandelt werden. Zum Zeitpunkt wenn Ihr PHP-Code läuft, müsste nocht der ursprüngliche Dateiname abgelegt werden.

Könnte es womöglich sein, dass Sie F103 nicht nur via put() eingebunden haben, sondern dass Sie die Frage zusätzlich noch in den Fragebogen gezogen haben? Wenn das der Fall ist, wären die Links dort ausgetauscht und "falsch" in den Datensatz geschrieben worden.

gibt es eine Möglichkeit wie ich nun im Nachhinein noch auf die gezogenen Bilder zurückschließen kann?

Ich befürchte nicht ... da steht vermutlich immer file=1 im Link, weil nur jeweils eine pro://...-Datei in der Seite vorhanden war. Das rnd ist nur ein Zufallswert, u, ungewolltes Caching im Browser zu vermeinden und der Text hinter dem i= ist nur die interne Interview-Kennung (Token).

Hier sind leider zwei Sachen zusammengekommen, von denen wir abraten: (1) Die Verwendung von random() und (2) das hineinziehen einer internen Variablen in die Fragebogen-Seite, wenn man sie nicht per JavaScript ansprechen will. Bei einem gründlichen technischen Funktiontest hätte das aber eigentlich auffallen sollen.

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

...