我正在尝试传递网址中的参数,但是收到此错误: * implode():在*
中传递的参数无效我知道原因是我将字符串作为参数而不是数组传递,但是如何直接传递数组呢?
我的代码:
$all_prod_cat="SELECT * FROM products GROUP BY product_category";
$run_all_prod_cat = mysqli_query($con,$all_prod_cat);
$sql= "SELECT * FROM products";
if(isset($_GET['product_category']) && $_GET['product_category']!="")
{
$risperpag = 16;
$limit = $risperpag * $_GET['p'] - $risperpag;
$prod_cat = $_GET['product_category'];
$sql.=",categories WHERE product_category IN ('".implode("','",$prod_cat)."') AND product_category = cat_id LIMIT $limit,$risperpag";
$get_cat_pro_total = "SELECT * FROM products,categories WHERE product_category IN ('".implode("','",$prod_cat)."') AND product_category = cat_id";
$run_cat_pro_total = mysqli_query($con,$get_cat_pro_total);
$num_cat_pro_total = mysqli_num_rows($run_cat_pro_total);
$npag = ceil($num_cat_pro_total / $risperpag);
$p = $_GET['p'];
echo "<ul>";
if($p!=1)
{
echo '<li class="numPagine"><a href="lista_prodotti.php?sort_price=&product_category='.urlencode($stringa).'&p='.($p-1).'">← Indietro</a></li>';
}
for($i=1;$i<=$npag;$i++){
if($p==$i)
{
echo '<li class="numPagine pagina_attuale">'.$i.'</li>';
}
else
{
echo '<li class="numPagine"><a href="lista_prodotti.php?sort_price=&product_category='.urlencode($stringa).'&p='.$i.'">'.$i.'</a></li>';
}
}
if($p!=$npag)
{
echo '<li class="numPagine"><a href="lista_prodotti.php?sort_price=&product_category='.urlencode($stringa).'&p='.($p+1).'">Avanti →</a></li>';
}
echo "</ul>";
}
问题是当我设置urlencode参数时,我试图序列化,但是我得到了另一个错误。我想我应该反序列化,但我不知道确切的意思。
提前致谢。
答案 0 :(得分:0)
可以使用http_build_query函数生成带有参数的url。
!msg.IsRead