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

Ich beiße mir doch erneut die Zähne aus...
Meine Daten sind nun mittlerweile alle schön in die DB geschrieben. Spalte 'Schlüssel' zeigt Schlüssel mit 3 unterschiedlichen Präfixen inkl. caseToken() und Spalte 0 übernimmt meinen Freitext aus der offenen Texteingabe. Code für Präfix '125D-'
$key = '125D-'.caseToken();
$kommentar125D = value('IE08_01');
if (value('IE08_01') !='') dbSet($key, $kommentar125D);

Nun möchte ich die dbGet() Funktion nutzen um auf einer neuen Seite auch an die entsprechend hinterlegeten Daten in Spalte '0' zu kommen. Habe hierzu alles mögliche bereits versucht (For loops, arrays, keys in variablen etc.). Die Funktion gibt bei mir nur ein Ergebnis, wenn ich einen exakten Schlüssel eingebe, z.B. also dbGet(125D-C3QHMAZIAQTW);

Was mache ich hier falsch? Ich dachte es würde wie oben beschrieben ganz einfach gehen mit der Abfrage dbGet('125D-'); alle Daten zu den Schlüssel mit Präfix 125D- zu bekommen. Die Fehlermeldung bezieht sich aber immer darauf, dass es den exakten Wert nimmt und dementsprechend keinen gültigen Schlüssel zu 125D- findet. Habe auch verschiedene Wildcards versucht mit * etc. klappt nicht bei mir.
Selbst wenn ich versuche alle Daten ohne Präfix auszulesen bekomme ich keine Ergebnisse:
html('

Bisher wurde kommentiert:

'.implode('
', dbGet($key)).'

');

Die Funktion dbKeys('125D-') funktioniert problemlos und es werden mir alle Schlüssel mit dem entsprechenden Präfix ausgegeben.

Danke für die Hilfe!!

in SoSci Survey (dt.) by s091537 (170 points)

1 Answer

+1 vote
 
Best answer

Im anderen posting hatte ich auf die bisher nicht dokumentierte Funktion dbLoad() verwiesen. Diese liefert ein Array aus Arrays:

$data = dbLoad('125D');
$html = '';
foreach ($data as $entry) {
  $html.= '<p>'.htmlspecialchars($entry[0]).'</p>';
}
html($html);
by SoSci Survey (56k points)
selected by s091537
Super das klappt einwandfrei!!
Im anderen Post hatten Sie leider auf den Befehl dbData('A') verwiesen, womit ich nichts anfangen konnte.. :)
Pardon, das war keine Absicht.
...