Tom: Zugriff auf ein Array

Beitrag lesen

Ahoi leuts!

folgendes Problem:

ich habe eine Datenbank und da möchte ich die Datenbank optimieren, und zwar nicht belegte positionsnummern löschen und alle darauffolgenden zurückzählen.

folgender Quelltext:

function db_opt($table,$value_to_optimize){
$val = $value_to_optimize;
$ok = false;
$i = 0;
while(!$ok){
   $sql = "SELECT ".$val." FROM ".$table;
   $facts = $this->sqlarray($sql);
   $max = count($facts);

echo "$facts -> $max";

if(($facts) && ($i<$max)){
      if(($facts[$i]+1) < ($facts[$i+1])){
          $interval = $facts[$val][$i+1] - $facts[$i] -1;
          $sql = "UPDATE ".$table." SET ".$val." = ".$val;
          $sql.= " - ".$interval." where ".$val." > ".$facts[$i];
          $this->sqlquery($sql);
      }
      $i++;
    }else{
      $ok = true;
    }
}
}

folgende Ausgabe:

Array -> 2
Warning: Undefined offset: 1 in E:\Webserver\include\navi_class.inc on line 113
Array -> 2
Warning: Undefined offset: 1 in E:\Webserver\include\navi_class.inc on line 113

Warning: Undefined offset: 2 in E:\Webserver\include\navi_class.inc on line 113
Array -> 2

Problem: also egal wie ich auf das Array zugreife, es kommen immer diese Warnings.. aber inhalt hat es ja (2) - wo liegt mein Fehler?