将数据从PHP发送到Javascript再发送到PHP
我不明白如何解释我的问题,但我想说我想做什么 我已经为每个人创建了一个提交“付款”的模式。我已经用PHP循环在一个表中创建了人员列表,并针对每个人创建了一个按钮,这样就可以通过 点击按钮。 当我点击按钮时,一个模式弹出窗口。 但我如何理解按下了哪个人按钮。每个人都有唯一的id。现在,我必须将button click的id发送到我的PHP代码中。 我该怎么做? 创建人员列表的代码:将数据从PHP发送到Javascript再发送到PHP,javascript,php,html,Javascript,Php,Html,我不明白如何解释我的问题,但我想说我想做什么 我已经为每个人创建了一个提交“付款”的模式。我已经用PHP循环在一个表中创建了人员列表,并针对每个人创建了一个按钮,这样就可以通过 点击按钮。 当我点击按钮时,一个模式弹出窗口。 但我如何理解按下了哪个人按钮。每个人都有唯一的id。现在,我必须将button click的id发送到我的PHP代码中。 我该怎么做? 创建人员列表的代码: while ($row = $result->fetch_assoc()) { $sl++;
while ($row = $result->fetch_assoc()) {
$sl++;
echo "<tr><td>". $sl. "</td><td>". $row['name']. "</td><td>". $row['Total_Trip']."</td><td>".$row['Total_Amount']."</td><td>".$row['Total_Pay']."</td><td>".$row['Total_Due']."</td><td>"."<button id='mbutton' onclick=btn()>Pay</button><button id='mbutton' onclick=btn()>Report</button>"."</td></tr>";
}
我需要从模式代码发送相应的id和金额到我的PHP代码,在那里付款将被处理
请提供帮助,对于“支付”按钮,请附加一个函数,该函数获取ID作为参数。我假设$sl
就是您提到的ID
while ($row = $result->fetch_assoc()) {
$sl++;
echo "<tr><td>". $sl. "</td><td>". $row['name']. "</td><td>". $row['Total_Trip']."</td><td>".$row['Total_Amount']."</td><td>".$row['Total_Pay']."</td><td>".$row['Total_Due']."</td><td>"."<button id='mbutton' onclick=btn(". $sl. ")>Pay</button><button id='mbutton' onclick=btn()>Report</button>"."</td></tr>";
}
然后更新HTML表单以将用户ID绑定到:
<div id="myModal" class="modal">
<div class="modal-content">
<div class="modal-header">
<span class="close">×</span>
<h2>Pay to</h2>
</div>
<div class="modal-body">
<form action="test.php" method="POST">
<label>Payment Amount</label><br>
<input type="hidden" id="userId" name="userId"><br>
<input type="text" name="paymodal" placeholder="Amount"><br>
<input type="submit" name="smitModal">
</form>
</div>
</div>
</div>
&时代;
支付给
付款金额
我想给出的一个建议是,保持服务器端代码和客户端代码不同,不要混淆它们。您可以对PHP文件进行API调用,从该API获取数据,并使用javascript(或其任何库)进行渲染。现在回到您的问题,您在哪里使用这个onclick=btn()
,将参数传递给这个函数,比如onclick=btn(““.”$row['name']。”)
,在javascript中,您将获得有关使用的数据。您可以将数据保存在JavaScriptSession
中并相应地使用它。关键是从一开始就使用persons ID。例如,当您创建表并在脚本中使用它来告诉后端选择了哪个人时,您可以将其保留为html属性,如'id=“pay button-”.$the_person\u id.”“
。
while ($row = $result->fetch_assoc()) {
$sl++;
echo "<tr><td>". $sl. "</td><td>". $row['name']. "</td><td>". $row['Total_Trip']."</td><td>".$row['Total_Amount']."</td><td>".$row['Total_Pay']."</td><td>".$row['Total_Due']."</td><td>"."<button id='mbutton' onclick=btn(". $sl. ")>Pay</button><button id='mbutton' onclick=btn()>Report</button>"."</td></tr>";
}
var modal = document.getElementById("myModal");
var span = document.getElementsByClassName("close")[0];
var formUserId = document.getElementById("userId");
function btn(userId) {
formUserId.value = userId;
modal.style.display = "block";
}
span.onclick = function() {
modal.style.display = "none";
}
window.onclick = function(event) {
if (event.target == modal) {
modal.style.display = "none";
}
}
<div id="myModal" class="modal">
<div class="modal-content">
<div class="modal-header">
<span class="close">×</span>
<h2>Pay to</h2>
</div>
<div class="modal-body">
<form action="test.php" method="POST">
<label>Payment Amount</label><br>
<input type="hidden" id="userId" name="userId"><br>
<input type="text" name="paymodal" placeholder="Amount"><br>
<input type="submit" name="smitModal">
</form>
</div>
</div>
</div>