Php Can';t检索数值输入并将其分配给变量

Php Can';t检索数值输入并将其分配给变量,php,variables,input,Php,Variables,Input,我试图检索数值输入并将其存储在variabe q中,但我似乎无法使用post方法以这种方式访问它 <?php $sql = "SELECT * FROM produit"; $result = mysqli_query($conn, $sql); while($row = mysqli_fetch_assoc($result)){ ?> <div class="prod<?php echo $row['ID_produit']?>&

我试图检索数值输入并将其存储在variabe q中,但我似乎无法使用post方法以这种方式访问它

<?php 
$sql = "SELECT * FROM produit";
$result = mysqli_query($conn, $sql);
while($row = mysqli_fetch_assoc($result)){

?>
<div class="prod<?php echo $row['ID_produit']?>">
<img src="images/<?php echo $row['image']?>" alt="image">
<h3><?php echo $row['nom_produit']?></h3>
<h3>Prix:<?php echo $row['prix']?>&euro;</h6>
<form action="" method="post">
<label name="qte">QTE:</label>
<input type="number" name="qte"><br><br>

<a href="panier.php?action=ajout&amp;
l=<?php echo $row['nom_produit']?>&amp;
q=<?php $_POST['qte']?>&amp;
p=<?php echo $row['prix']?>" 
onclick="window.open(this.href, '', 'toolbar=no, location=no, directories=no, status=yes, 
scrollbars=yes, resizable=yes, copyhistory=no, width=600, height=350'); return false;">
GOGOGO  </a>
</form>
</div>
<?php
}
?>
 </div>


这段代码有几个问题。您试图通过
$\u POST
变量在每个循环中引用
qte
,而您真正想要的只是从用户那里获取输入。为了稍微整理一下代码,使内容更具可读性,我更改了那大

//然后在循环之外是函数
功能gogoLink(id,prix){
让url=“panier.php?action=ajout”
url+=“&l=“+id”
url+=“&q=“+document.getElementById(“qte_3;”+id).value;
url+=”&p=“+prix;
打开(url,,'工具栏=否,位置=否,目录=否,状态=是,
滚动条=是,可调整大小=是,复制历史=否,宽度=600,高度=350’;
}

q=?这一切都是在提交表格后发生的吗?或者,当你点击GOGO链接时,你是在试图获取输入元素的值吗?@Kinglish在我点击GOGO链接后,我被发送到另一个页面,其中显示了我想要的变量l和p的值,而不是q的值。虽然当我给q一个设置值时,比如2,它是有效的。表单上没有提交按钮,
$\u POST['qte']
很可能从未设置过
<?php
 if (isset($_POST['submit'])) {
 $example = $_POST['qte'];
 echo $example;
 }
 ?>
<?php 
$sql = "SELECT * FROM produit";
$result = mysqli_query($conn, $sql);
while($row = mysqli_fetch_assoc($result)){    
?>
<div class="prod<?php echo $row['ID_produit']?>">
<img src="images/<?php echo $row['image']?>" alt="image">
<h3><?php echo $row['nom_produit']?></h3>
<h3>Prix:<?php echo $row['prix']?>&euro;</h6>
<form action="" method="post" onsubmit="return false;">
<label for="qte">QTE:</label>
<input type="number" name="qte" id="qte_<?php echo $row['ID_produit']?>"><br><br>

<a href='javascript:void(0)' 
  onclick='gogoLink("<?php echo $row['ID_produit']?>", "<?php echo $row['prix']?>")'>
GOGOGO  </a>
</form>
</div>
<?php
}
?>

// then outside the loop is the function 

<script>
function gogoLink(id, prix) {
  let url ="panier.php?action=ajout"
  url += "&l=" + id
  url += "&q=" + document.getElementById("qte_"+id).value;
  url += "&p=" + prix;

  window.open(url, '', 'toolbar=no, location=no, directories=no, status=yes, 
  scrollbars=yes, resizable=yes, copyhistory=no, width=600, height=350'); 
}
</script>