Вопрос от чайника по типам
23 ноября 2010, 2:51
Автор: NewUse
Я полный чайник в пхп, но как я понял fetchRow() умеет возвращать два различных типа, что не поддерживается php5, скрипт для старой версии php4, помогите, плз, сделать проверку на тип, или как-то ещё устранить ошибку:
Ошбка:
Скрипт:
Ошбка:
Цитата:
PHP Fatal error: Call to a member function fetchRow() on a non-object in /usr/local/www/data/index.php on line 1
Скрипт:
while ($row = $query->fetchRow()) {
unset($ROW);
$row[packet] = "<A HREF=packet.php?gid=$row[gid]>$row[packet]\n";
$TMP_ROW = "<A HREF=edit_packet.php?gid=$row[gid]><img src=images/edit.gif alt=\"".$INDEX_PAGE[edit]."\" border=0></A>\n";
if ($row[action] > 0){
$TMP_ROW.=" | <A HREF=edit_price.php?gid=$row[gid]><img src=images/price.gif alt=\"".$INDEX_PAGE[price]."\" border=0></A>\n";
}
$TMP_ROW.=" | <A HREF=del_packet.php?gid=$row[gid]><img src=images/delete.gif alt=\"".$NIBS_TEXT[delete]."\" border=0></A>\n";
$row[action] = $TMP_ROW;
$count = $db->getRow("select count($username) as $username from users where gid=$row[gid]");
$row[num_users] = $count[$username];
$TOTAL_USER += $count[$username];
$TRAF_ARRAY = $db->GetRow("select sum(in_bytes) as in_bytes, sum(out_bytes) as out_bytes from ".NIBS_ACCT_TABLE." where gid=".$row[gid]);
$row[gid] = round($TRAF_ARRAY[in_bytes]/(1024*1024),$ROUND_DIGIT)."/";
$row[gid].= round($TRAF_ARRAY[out_bytes]/(1024*1024),$ROUND_DIGIT);
$TOTAL_IN += $TRAF_ARRAY[in_bytes];
$TOTAL_OUT += $TRAF_ARRAY[out_bytes];
while(list($key,$val)=each($row)){
if ($HEADER){
$TMP_HEADER[] = array(VARS => $NIBS_TEXT[$key],
TD_CLR => HDR_CLR,
TH => true);
}
$ROW[] = array(VARS => $val,
TD_PAR => "align=middle",
TD_CLR => DEF_CLR);
}
if($HEADER){
$HEADER = false;
$ARRAY[] = $TMP_HEADER;
}
$ARRAY[]=$ROW;
}
unset($ROW);
$row[packet] = "<A HREF=packet.php?gid=$row[gid]>$row[packet]\n";
$TMP_ROW = "<A HREF=edit_packet.php?gid=$row[gid]><img src=images/edit.gif alt=\"".$INDEX_PAGE[edit]."\" border=0></A>\n";
if ($row[action] > 0){
$TMP_ROW.=" | <A HREF=edit_price.php?gid=$row[gid]><img src=images/price.gif alt=\"".$INDEX_PAGE[price]."\" border=0></A>\n";
}
$TMP_ROW.=" | <A HREF=del_packet.php?gid=$row[gid]><img src=images/delete.gif alt=\"".$NIBS_TEXT[delete]."\" border=0></A>\n";
$row[action] = $TMP_ROW;
$count = $db->getRow("select count($username) as $username from users where gid=$row[gid]");
$row[num_users] = $count[$username];
$TOTAL_USER += $count[$username];
$TRAF_ARRAY = $db->GetRow("select sum(in_bytes) as in_bytes, sum(out_bytes) as out_bytes from ".NIBS_ACCT_TABLE." where gid=".$row[gid]);
$row[gid] = round($TRAF_ARRAY[in_bytes]/(1024*1024),$ROUND_DIGIT)."/";
$row[gid].= round($TRAF_ARRAY[out_bytes]/(1024*1024),$ROUND_DIGIT);
$TOTAL_IN += $TRAF_ARRAY[in_bytes];
$TOTAL_OUT += $TRAF_ARRAY[out_bytes];
while(list($key,$val)=each($row)){
if ($HEADER){
$TMP_HEADER[] = array(VARS => $NIBS_TEXT[$key],
TD_CLR => HDR_CLR,
TH => true);
}
$ROW[] = array(VARS => $val,
TD_PAR => "align=middle",
TD_CLR => DEF_CLR);
}
if($HEADER){
$HEADER = false;
$ARRAY[] = $TMP_HEADER;
}
$ARRAY[]=$ROW;
}