如何在$_POST[]中传递参数?

How to pass parameter in $_POST[]?

我有一个名为 main.php 的文件,其中有一个表单,表单的操作是另一个 php 文件,即 brand.php.That 表示,在提交表单时main.php 文件 brand.php 文件将作为操作触发。

main.php 文件的表格部分在这里:-

 <form action="brand.php" method="POST">
 <input type="submit" value="Brand Name" id="b1" name="brand_button">
 </form>


现在 brand.php 文件的表格部分在这里:-

echo "<form action='size.php' method='POST'>";
while($row = $result->fetch_assoc()) 
{


    echo "<input type='submit' name=".$row["brand"]." value=" .   $row["brand"] . " style='height:20px;width:100px'>";

    echo '<br>';
    echo '<br>';
    $count=$count+1;
}
echo "</form>";


现在实际问题是每次在 brand.php 文件循环中提交时我需要触发另一个 php 文件,即 size.php .

size.php文件的代码在这里:-

$db=new mysqli('localhost',$user,$pass,$db) or die("Abhra...unable");
if($db->connect_error)
{
     echo "Unable to connect"; 
}

$bname=$_POST[];

echo '<br>';
$q1= "select DISTINCT size from garments where brand='.$bname.'";
$result=$db->query($q1);
if ($result->num_rows > 0) 
{

     $count=1;
     echo "<form action='size.php' method='POST'>";
     while($row = $result->fetch_assoc()) 
     {


          echo "<input type='submit' name=.$count. value=" . $row["size"] . " style='height:20px;width:100px'>";

       echo '<br>';
       echo '<br>';
       $count=$count+1;
     }
     echo "</form>";
} 

$db->close();
?>


现在我怀疑在size.php文件的第7行,$_POST[]的参数是什么,特别是在调用页面中按钮对应的名称部分也是一个查询字符串$row[ "brand"].

在您目前的工作方式中,存在两个明显的问题:

  • main.php 生成的 HTML 页面提交 brand_button 数据,这些数据在 brand.php 脚本中可用,但不是 size.php 脚本!
    您可以通过生成(在 brand.php 中)类似
    的内容来解决此问题 <input type="hidden" name="brand_button" value=<?php echo $_POST['brand_button']; ?> />

  • 即使以上确保您将 POST 数据传输到 size.php,您也必须正确使用它:对于 $bname=$_POST[];,您只得到一个数组到 $bname!
    应该是$bname = $_POST['brand_button'];