我正在尝试使用此代码将项目添加到数据库中,但它不会将它们添加到数据库中。如何使用带有 ajax 的 PHP CODE 使用 POST METHOD?

Posted

技术标签:

【中文标题】我正在尝试使用此代码将项目添加到数据库中,但它不会将它们添加到数据库中。如何使用带有 ajax 的 PHP CODE 使用 POST METHOD?【英文标题】:I'm trying to use this code to add items to the database, but it doesn't add them to database. How to use POST METHOD using PHP CODE with ajax? 【发布时间】:2016-02-22 22:37:29 【问题描述】:

有人帮帮我吗?

这是我的代码:

      <?php
       $q1=$_POST["q1"];
       $q2=$_POST["q2"];
       $q3=$_POST["q3"];

      $con = mysql_connect('localhost', 'root', '');
      if (!$con)

     
      die('Could not connect: ' . mysql_error());
     

      mysql_select_db("stud", $con);

      $sql="INSERT INTO stud_info(IDno, LName, FName) VALUES ('$q1', '$q2', '$q3')";

      if (!mysql_query($sql,$con))
      
       die('Error: ' . mysql_error());
      


     mysql_close($con);
     ?>

这是我的 ajax 代码:应该不能为空

     // javascript Document
     var xmlHttp;

     function showStud(id)
     
    xmlHttp=GetXmlHttpObject();
   if (xmlHttp==null)
    
     alert ("Browser does not support HTTP Request");
     return;
    
     var url="getStud.php";
     url=url+"?q="+id;   
     xmlHttp.onreadystatechange=stateChanged;
     xmlHttp.open("GET",url,true);
     xmlHttp.send(null);
    

     function addStud(id, ln, fn)
     
    xmlHttp=GetXmlHttpObject();
    if (xmlHttp==null)
    
    alert ("Browser does not support HTTP Request");
    return;
    
    var url="addStud.php";
    url=url+"?q1="+id+"&q2="+ln+"&q3="+fn;  
    xmlHttp.onreadystatechange=stateChanged;
    xmlHttp.open("GET",url,true);
    xmlHttp.send(null);
    

    function editStud(id, ln, fn)
    
   xmlHttp=GetXmlHttpObject();
   if (xmlHttp==null)
   
   alert ("Browser does not support HTTP Request");
   return;
  
   var url="editStud.php";
   url=url+"?q1="+id+"&q2="+ln+"&q3="+fn;
   xmlHttp.onreadystatechange=stateChanged;
   xmlHttp.open("GET",url,true);
   xmlHttp.send(null);
   

   function deleteStud(id)
    
   xmlHttp=GetXmlHttpObject();
   if (xmlHttp==null)
   
   alert ("Browser does not support HTTP Request");
   return;
   
   var url="deleteStud.php";
   url=url+"?q="+id;   
   xmlHttp.onreadystatechange=stateChanged;
   xmlHttp.open("GET",url,true);
   xmlHttp.send(null);
   

   function stateChanged() 
    
   if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
    
   document.getElementById("txtHint").innerhtml=xmlHttp.responseText;
    
   

   function GetXmlHttpObject()
   
    var xmlHttp=null;
   try
   
   // Firefox, Opera 8.0+, Safari
   xmlHttp=new XMLHttpRequest();
   
   catch (e)
   
   //Internet Explorer
   try
    
    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    
   catch (e)
   
      xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
   
  
   return xmlHttp;
  

【问题讨论】:

不懂你的问题请贴完整代码。 你只是在这里为一些变量赋值。我没有看到任何与插入数据库相关的东西。 合并语法以减少大代码..这不是一个答案,只是提高可读性的提示..您可以使用 $con = mysql_connect('localhost','root',''')或死(mysql_error());你可以使用 mysql_query($sql,$con) 或 die(mysql_error());不再使用mysql,尝试使用mysqli 【参考方案1】:

添加 jQuery 库并在集成以下代码后检查您的控制台。

替换你的addStud(id, ln, fn):

<script src="//code.jquery.com/jquery-1.11.3.min.js"></script>

function addStud(id, ln, fn)  
    var q1 = id;
    var q2 = ln;
    var q3 = ln;
    $.ajax(
        url: "addStud.php",
        type: 'POST',
        data: q1: q1,q2:q2,q3:q3,
        success: function (data) 
               //Response here
        
    );

【讨论】:

以上是关于我正在尝试使用此代码将项目添加到数据库中,但它不会将它们添加到数据库中。如何使用带有 ajax 的 PHP CODE 使用 POST METHOD?的主要内容,如果未能解决你的问题,请参考以下文章

我正在尝试使用动态按钮将 id 发送到控制器,但它不起作用

Doctrine 不会在我的 OneToMany 关联中保存数据

将 AJAX/jQuery 添加到简单的 PHP 表单

如何将 CAGradientLayer 添加到 CAShapeLayer?

我正在尝试在 jsx-react 中动态添加图像,但它不会显示

我正在尝试向 HTML 表中添加一些行,但它失败了