Pre nekoliko dana sam postavio sajt na jedan free hosting kako bih isprobao sve funkcionalnosti (pre prelaska na novi hosting) ali se sada javlja greska koju nisam dobijao na predhodnom hostingu. Poruka je sledeca:
"Warning: strlen() expects parameter 1 to be string, array given in /home1/.../index.php on line 138"
<?
$sqlCategories = "SELECT * FROM products, categories where products.CategoryID=categories.CategoryID and products.SellerID=".$_REQUEST['SellerID']." and productstatus=1 order by Category asc";
$resultCategories = mysql_query($sqlCategories, $conn);
if (@mysql_num_rows($resultCategories)!=0){
$strcategory="";
while($row_categories = @mysql_fetch_array($resultCategories))
{
$categoryduplicate=0;
$arrcat = explode(",",$strcategory);
for($i=0;$i<strlen($arrcat);$i++)
{
if($arrcat[$i]==$row_categories['CategoryID'])
{
$categoryduplicate=1;
}
}
if($categoryduplicate==0)
{
if($strcategory=="")
{
$strcategory=$row_categories['CategoryID'];
}
else
{
$strcategory=$strcategory.",".$row_categories['CategoryID'];
}
$sqlCategories2 = "SELECT * FROM products where CategoryID=".$row_categories['CategoryID']." and productstatus=1 and SellerID=".$_REQUEST['SellerID'];
$resultCategories2 = mysql_query($sqlCategories2, $conn);
echo "
<Tr>
<td width='3'><img src='../images/arrow.gif'></td>
<td class='content'><a href='products.php?CategoryID=".$row_categories['CategoryID']."&SellerID=".$_REQUEST['SellerID']."&Category=".$row_categories['Category']."' class='industry'>".$row_categories['Category']."</a> [".@mysql_num_rows($resultCategories2)."]</td>
</Tr>
";
}
}
}
?>
Koliko sam uspeo da saznam, problem je u for($i=0;$i<strlen($arrcat);$i++) koja vraca pogresan podatak ili kako vec, ali ne uspevam to da resim. Probao sam sa mb_strlen (mada nisam siguran da sam to dobro zamenio) ali nista. Da li ovo sve ima veze sa prelaskom na free hosting (nesto sa verzijom PHP-a, PHP 5.2 i PHP 5.3) ili je problem u kodu.
Hvala unapred !!!