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

Lieber Support,

bei der Erstellung eines Fragebogens möchte ich im Hintergrund Rechenoperationen an Farbcodes durchführen.
Die Eingabe der Farbcodes erfolgt als Hex-Code (über Html5 in eine interne Variable), die weitere Rechnung basiert aber auf den RGB-Werten.

Zur Konvertierung möchte ich eine PHP-Funktion in etwa so nutzen:

function HEXtoRGB ($RGB) {
$R = hexdec(substr($RGB,1,2));
$G = hexdec(substr($RGB,3,2));
$B = hexdec(substr($RGB,5,2));
return array($R,$G,$B);
}

Leider gibt die Funktion 3 Fehler aus, die wohl darauf beruhen, dass die PHP-interne Funktion: hexdec(); nicht von SoSci freigegeben ist.
Gibt es hier eine Möglichkeit zur Abhilfe?

Besten Dank und freundliche Grüße!

Fehlermeldungen:

  • Warnung: Die Funktion hexdec() ist nicht zur Verwendung im Fragebogen
    freigegeben.
  • Der PHP-Code enthält unzulässige Funktionsaufrufe oder
    Schlüsselwörter und wurde daher nicht ausgeführt
  • Die für den
    Fragebogen definierten PHP-Funktionen konnten aufgrund von
    Sicherheitsbeschränkungen nicht geladen werden.
in SoSci Survey (dt.) by s147105 (145 points)
Es sollte voraussichtlich kein Problem sein, diese Funktion innerhalb der nächsten Tage freizugeben.
Vielen Dank für die schnelle Antwort, das wäre natürlich ideal!

Ich habe soeben noch eine alternative Berechnungsmethode gefunden, falls das in Bezug auf die Freigabe einfacher wäre.
Der Fehler tritt leider aber auch hier auf.
Es handelt sich um die Funktion sscanf() die ich wie folgt verwenden würde:

    function HEXtoRGB ($hex) {
    list($r, $g, $b) = sscanf($hex, "#%02x%02x%02x");
    return array($r, $g, $b);
    }

Lassen Sie mich einfach wissen, wie ich es im Ergebnis lösen soll!

Freundliche Grüße
Als kurzfristiger Workaround sollte intval() wahrscheinlich erlaubt sein:

$R = intval(substr($RGB,1,2), 16);
Perfekt, vielen Dank! Damit lässt sich arbeiten :)

1 Answer

+1 vote
 
Best answer

Auf www.soscisurvey.de ist nun ein Update installiert, welches die Verwendung von hexdec() und dexhex() erlaubt.

by SoSci Survey (252k points)
selected by s147105
...