php - 不在选定的特定单选按钮上显示其他结果

标签 php mysql database mysqli

使用 4 单选按钮作为选项来选择付款列以对所有数字进行求和。我写过如果 select 等于first 则运行第一个查询,如果是第二个则运行第二个查询。即使我选择第二次付款,它也会显示在第一次付款上。是因为我的代码末尾有 echo 吗?有人可以帮忙吗?应该使用 for 吗?

HTML 编码 (paycal.html):

<body>
<form name="input" action="paycal.php" method="post">
<fieldset>
<legend>Which payment do you want to SUM up:</legend>
    <input type="radio" name="payment" value="first" /> First 
    <input type="radio" name="payment" value="second" /> Second
    <input type="radio" name="payment" value="third"  /> Third
    <input type="radio" name="payment" value="fourth"  /> Fourth

</fieldset>
<input type="submit" value="Submit" />   
</form>
</body>
</html>

PHP 编码(paycal.php):

<?php
error_reporting(E_ALL);
ini_set("display_errors", 1);


$pay=$_REQUEST['payment']; 

// MySQL database connection, username, password, database name
$con=mysqli_connect("localhost","username","password","database_name");

// Check connection
if (mysqli_connect_errno()) {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

if ($pay=="first") $query="SELECT *, SUM(first_payment) FROM `Customer Information`";
else if ($pay=="second") $query="SELECT *, SUM(second_payment) FROM `Customer Information`";
else if ($pay=="third") $query="SELECT *, SUM(third_payment) FROM `Customer Information`";
else if ($pay=="fourth") $query="SELECT *, SUM(fourth_payment) FROM `Customer Information`";


$result = mysqli_query($query);

// Executing and error checking of query
if (!mysqli_query($con,$query)) {
  die('Error: ' . mysqli_error($con));
}

while($row = mysqli_fetch_array($result)) {

 echo $row['first_payment'];
}

// Close MySQL
mysqli_close($con);
?>

最佳答案

while($row = mysqli_fetch_array($result)) {
    echo $row[$pay.'_payment'];
}

只需使用您使用的变量($pay)使生成的 key 动态化

换句话说,这是非常糟糕的表格设计。如果你有更好的设计,你就不会陷入这样的问题。我建议你改一下。

关于php - 不在选定的特定单选按钮上显示其他结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25032890/

相关文章:

sql - 如何在 SQL Server 中进行 10% 45% 45% 拆分

java - 从服务器发送数据的最佳方式

php - 无法关注其他用户

javascript - 从您的网站打开 Teamviewer

php - 使 auto_incremented 用户 id 可见的注意事项?

php - 将文件移动到回收站 (PHP)

php - 构建第一个自定义 CMS,并被告知使用 Dreamweaver 和一个名为 Horizo​​ntal Looper 的插件

mysql - MySQL 中是否可以有基于函数的索引?

database - 为什么 Postgres 从 9.4 开始对 ALTER TABLE ADD COLUMN 语句强制执行 ACCESS EXCLUSIVE 锁?

php - Wordpress 帖子循环显示 post_name/slug