Warning: Illegal offset type in /home2/travislp/public_html/users/bsa/private/class/admin.class.php on line 436
Okay, so just randomly while a guy was using one of my scripts he gets these errors. I looked them up and all php say's is,
You cannot use arrays or objects as keys. Doing so will result in a warning: Illegal offset type.
I dont really know what that means and The script worked fine before. The strange part is that this only occurs during a certain part of the script. Then it works fine.
$badges[][][] = array();
$Keys = array("A","B","C","D","E",
"F","G","H","I","J",
"K","L","M","N","O",
"P","Q","R","S","T",
"U","V","W","X","Y",
"Z");
$query = @mysql_query("SELECT * FROM meritbadge ORDER BY meritbadgeNAME");
while($myrow = mysql_fetch_array($query)) {
$letters = str_split($myrow['meritbadgeNAME']);
for($i=0;$i<26;$i++) {
if($Keys[$i]==$letters[0]) {
$badges[$i][0][0]++;
$count = $badges[$i][0][0];
$badges[$i][$count][0] = $myrow['meritbadgeNAME']; //436
if($myrow['meritbadgeEAGLE'] == 1) {
$badges[$i][$count][1] = 1; //438
} else {
$badges[$i][$count][1] = 0; //440
}
$badges[$i][$count][2] = $myrow['meritbadgeID']; //442
}
}
}
- $badges[][][] = array();
- $Keys = array("A","B","C","D","E",
- "F","G","H","I","J",
- "K","L","M","N","O",
- "P","Q","R","S","T",
- "U","V","W","X","Y",
- "Z");
-
-
- $query = @mysql_query("SELECT * FROM meritbadge ORDER BY meritbadgeNAME");
- while($myrow = mysql_fetch_array($query)) {
- $letters = str_split($myrow['meritbadgeNAME']);
- for($i=0;$i<26;$i++) {
- if($Keys[$i]==$letters[0]) {
- $badges[$i][0][0]++;
- $count = $badges[$i][0][0];
- $badges[$i][$count][0] = $myrow['meritbadgeNAME']; //436
- if($myrow['meritbadgeEAGLE'] == 1) {
- $badges[$i][$count][1] = 1; //438
- } else {
- $badges[$i][$count][1] = 0; //440
- }
- $badges[$i][$count][2] = $myrow['meritbadgeID']; //442
-
-
- }
- }
- }
From what I can see it doesnt like when $i = 0, this being the 'A'. After a's the script works fine.
Moderator Remark: removed repeated error lines
#define NULL (::rand() % 2)