0

我尝试向 db 提交文本,但在 db 字段中没有插入任何文本。

你能分析一下我的假在哪里吗?

我试试这样。

谢谢你的帮助。

<script type="text/javascript">
$(document).ready(function() {
    $('#myForm').submit(function() {
        var namaklasifier = document.getElementByName("tfklasifier").value;
        var inputpos= document.getElementByName("tacaripos").value;
        var inputnet = document.getElementByName("tacarinet").value;
        var inputneg = document.getElementByName("tacarineg").value;    
   $.ajax({
        type: 'POST',
        url:  $(this).attr('action'),
        data: $(this).serialize(),
        success: function(data) {
        $('#resultcoba').html(data);}
    })
        return false;
  });
    })
</script>    
<form id="myForm" method="post" action="proses.php">
<td align="center" valign="top" style="width:420px"><textarea style="width:420px" name="tacaripos" rows="4" cols="70"><?PHP echo htmlspecialchars($_POST['tacaripos']);?></textarea></td>
<td align="center" valign="top" style="width:420px"><textarea style="width:420px" name="tacarinet" rows="4" cols="70"><?PHP echo htmlspecialchars($_POST['tacarinet']);?></textarea></td>
<td align="center" valign="top" style="width:420px"><textarea style="width:420px" name="tacarineg" rows="4" cols="70"><?PHP echo htmlspecialchars($_POST['tacarineg']);?></textarea></td>
</tr>
<td align="center"><input type="submit" name="btklasifier" id="btklasifier" value="Buat" /></td></form>

散文.php

    <?php    
       $namaklasifier=$_POST['namaklasifier'];
$jadipos=$_POST['inputpos'];
$jadinet=$_POST['inputnet'];
$jadineg=$_POST['inputneg'];

$link=mysqli_connect("localhost", "root", "","skripsi");
mysqli_select_db($link,"skripsi");
mysqli_query($link,"INSERT INTO namaklasifier(username,datapos,datanet,dataneg,user) VALUES('$namaklasifier','$jadipos','$jadinet','$jadineg','{$_SESSION['username']}')"); ?>

谢谢 :)

4

3 回答 3

2

您正在尝试访问您在此处声明的变量名下的 GET 数据:

var namaklasifier = document.getElementByName("tfklasifier").value;
var inputpos= document.getElementByName("tacaripos").value;
var inputnet = document.getElementByName("tacarinet").value;
var inputneg = document.getElementByName("tacarineg").value;

然而,您正在发送它们,$(this).serialize()这意味着您必须使用输入名称访问 GET 变量,因为这就是 serialize 所做的(使用它们的名称从表单元素创建一个对象)。例如

$jadipos=$_POST['tacaripos'];
$jadinet=$_POST['tacarinet'];
$jadineg=$_POST['tacarineg'];

您还需要更改$_GET$_POST您正在使用的方法。

于 2013-06-15T11:39:43.487 回答
1

proses.php$_GET改成$_POST

既然是使用POST方法提交数据,自然就得使用$_POST变量。

于 2013-06-15T11:38:02.713 回答
1

它们是POST而不是GET值

$jadipos=$_POST['inputpos'];
$jadinet=$_POST['inputnet'];
$jadineg=$_POST['inputneg'];

并尝试使用 mysqli_* 函数或 PDO 语句,而不是 mysql_* 函数,因为它们已被弃用

编辑:也试试

var namaklasifier = document.getElementByName("tfklasifier").value;
    var inputpos= document.getElementByName("tacaripos").value;
    var inputnet = document.getElementByName("tacarinet").value;
    var inputneg = document.getElementByName("tacarineg").value;    
 $.ajax({
      type: 'POST',
      url:  $(this).attr('action'),
      data: {inputpos:inputpos,inputnet:inputnet,inputneg:inputneg},
      success: function(data) {
         $('#resultcoba').html(data);}
     })
    return false;
 });
于 2013-06-15T11:38:34.533 回答