猿问

如何使用 PHP 和 Javascript 通过获取单选按钮值来计算总计?

我使用 php 表示数据库中的问题。我使用数组将它们显示在表格中。单选按钮通过在 php 中指定变量“i”作为名称进行分组。因此,我无法将这些单选按钮的值传递给 JavaScript 函数来计算总数。

该表的表示方式如下:

我想计算所选单选按钮值的总计并将该值发送到另一个页面。我怎么做?预先非常感谢!


下面是我的代码。


<html>


<body>


 <?php

$DATABASE_HOST = 'localhost';

$DATABASE_USER = 'root';

$DATABASE_PASS = '';

$DATABASE_NAME = 'psych';


$connect = mysqli_connect($DATABASE_HOST, $DATABASE_USER, $DATABASE_PASS, $DATABASE_NAME);


    $res = mysqli_query($connect, "SELECT questions FROM questions");


    $quests = mysqli_fetch_array($res);  


  ?>

<form name="form1" id="form1" method="post" action="../../Algorithms/score.php"> 


<table> 

  <th>

  <td width=100>Strongly agree </td>

  <td width=100>Agree </td>

  <td width=100>Neutral </td>

  <td width=100>Disagree </td>

  <td width=100>Strongly disagree </td>

  </th>

<?php 


$score=0;


    $i=1;

  while($row = mysqli_fetch_array($res))

    {

     echo "<tr> <td width=500>".$i.". ".$row['questions']."</td>";

     echo '<td width=100> <input type="radio" name="'.$i.'"  value="1" > </td>';

     echo '<td width=100> <input type="radio" name="'.$i.'"  value="2" > </td>';

     echo '<td width=100> <input type="radio" name="'.$i.'"  value="3" > </td>';

     echo '<td width=100> <input type="radio" name="'.$i.'"  value="4" > </td>';

     echo '<td width=100> <input type="radio" name="'.$i.'"  value="5" > </td>';

       // if (score."$i") {echo "score$i";}

     echo "</tr>"; 

     // echo $scores[$i];

     //$scores[$i]=$_POST['score'.$i];

     $i++;


      }


    echo "</table>"; 

    echo "<br>"; 


  ?> 


  <input type='submit' name='submit' value='Submit'/>    


aluckdog
浏览 151回答 2
2回答

倚天杖

首先,最好用有意义的名称来命名您的输入。例如echo '<td width=100> <input type="radio" name="score['.$i.']"  value="1" > </td>'这将帮助您区分其他字段 - 如果您需要添加其他字段 -在服务器端,您现在有一个名为 的输入数组,您可以使用如下方法score求和/计算总数:array_sumif (isset($_POST['score'])) {     $total = array_sum($_POST['score']); }要保存该值,您可以使用sessionthis

蝴蝶刀刀

您可以使用相同的单选按钮但不同的值<input type="radio" name="score" value="1" >,<input type="radio" name="score" value="2" >。在单选按钮中传递自定义类,如下所示<input type="radio" class="cstm-radio" name="score" value="1" >;使用单击java脚本或jquery事件来获取单击的单选按钮的值并执行ajax请求,传递您必须在其中执行后端操作的文件的url或文件名。您可以使用此代码来执行ajax请求!$('.cstm-radio').click(function () {&nbsp; var radio_val = $(this).val();&nbsp; &nbsp;$.ajax({&nbsp; &nbsp; //url of your php file&nbsp; &nbsp; url: "post.php",&nbsp; &nbsp; type: "POST",&nbsp; &nbsp; data: {score: radio_val},&nbsp; &nbsp; success: function (data) {&nbsp; &nbsp; &nbsp; &nbsp; // alert radio value here&nbsp; &nbsp; &nbsp; &nbsp; alert(data);&nbsp; &nbsp; }&nbsp;});});
随时随地看视频慕课网APP

相关分类

Go
我要回答