0

所以我在一个页面上有 3 个表单,并且取决于提交的表单 - 某些内容被输入到数据库中。现在,如果我将其全部包含在同一页面上,此代码可以完美运行,但当然,它需要刷新,所以我希望实现 AJAX。现在,我已经将插入 php 代码移到了一个新页面上,并且正在寻找一些帮助来构建 AJAX 调用以将数据传递到 php 页面,该页面将继续插入正确的数据。

本质上:

  1. 共有三种形式,每种活动类型一种。
  2. 根据提交的表单,将一些不同的数据输入到数据库中
  3. 需要帮助构建 AJAX 调用以确定提交的表单,将数据成功传递到下一页,以便 PHP 代码可以插入 DB。
  4. 我将使用 PDO 重写 SQL,所以请在当前代码中忽略它。

    <form id="form1"  method="post">
    <input type="submit" id="activity1" name="activity1" class="btn btn-info span3 mhm" value="<?php echo htmlspecialchars($type1);?>">
    </form>
    
    <form id="form2" action="registerresults.php" method="post">
      <input type="submit" id="activity2" name="activity2" class="btn btn-info span3 mhm" value="<?php echo htmlspecialchars($type2);?>">
    </form>
    
    <form id="form3" action="registerresults.php" method="post">
      <input type="submit" id="activity3" name="activity3" class="btn btn-info span3 mhm" value="<?php echo htmlspecialchars($type3);?>">
    </form>
    

    //registerresults.php - 插入数据库

         $id = $_SESSION['id'];
         $competitionId = $_GET['competitionId'];
         $organisationId = $_SESSION['organisationId'];
    
    
        if (isset($_POST['activity1']) && !empty($_POST['activity1']))
        {
            //insert new points into database
            $today = date("Y-m-d h:i:s");
            $insertCall = mysql_query("INSERT INTO `entries` (`userid`, `competitionId`, `activity_type`, `activity_id`, `points`, `date`) VALUES ('$id', '$competitionId', '$type1', '1', '$weighting1', '$today');");
    
        }
    
        if (isset($_POST['activity2']) && !empty($_POST['activity2']))
        {
            $today = date("Y-m-d h:i:s");
            $insertCall = mysql_query("INSERT INTO `entries` (`userid`, `competitionId`, `activity_type`, `activity_id`, `points`, `date`) VALUES ('$id', '$competitionId', '$type2', '2', '$weighting2', '$today');");
    
        }
    
        if (isset($_POST['activity3']) && !empty($_POST['activity3']))
        {
            $today = date("Y-m-d h:i:s");
            $insertCall = mysql_query("INSERT INTO `entries` (`userid`, `competitionId`, `activity_type`, `activity_id`, `points`, `date`) VALUES ('$id', '$competitionId', '$type3', '3', '$weighting3', '$today');");
    
        }
    ?>
    
4

0 回答 0