Php Can';t检索数值输入并将其分配给变量
我试图检索数值输入并将其存储在variabe q中,但我似乎无法使用post方法以这种方式访问它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']?>&
<?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']?>€</h6>
<form action="" method="post">
<label name="qte">QTE:</label>
<input type="number" name="qte"><br><br>
<a href="panier.php?action=ajout&
l=<?php echo $row['nom_produit']?>&
q=<?php $_POST['qte']?>&
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']?>€</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>