> Fehler im Fragebogen: Undefined offset: 1
Das bedeutet, dass Sie auf den Index 1 eines Arrays zugreifen möchten, dieser aber nicht existiert. Also vermutlich hier:
010 $itemIDs[] = (int)trim(substr($keys[$i], 5), '0');
Es geht um die Variable $keys -der einzige Array-Zugriff mit eckigen Klammern. Die Variable wir hier definiert:
> $keys = array_keys($ranks);
Vermutlich wurde nur ein Rang vergeben, deshalb kann auf die Ränge 2 und 3 nicht zugegriffen werden. Die Lösung ist denkbar einfach:
> for ($i=0; $i<min(3, count($keys); $i++) {
Durch das min() wird entweder bis 3 gezählt oder bis zur Anzahl der vorhandenen Werte, was mittels count($keys) ermittelt wird.