【问题标题】:sending data with AJAX into Database fails使用 AJAX 将数据发送到数据库失败
【发布时间】:2015-12-15 05:36:44
【问题描述】:

我想通过 AJAX 将数据发送到 PHP 文件,并且在 PHP 文件中数据将保存到 mysql 数据库中。

这是我的 AJAX 代码:

$('a').on('click', function(){
    var href = $(this).attr('href'); 
    var JsSessionID = $(this).data('info');
    var data = 'url=' + href + '&JsSessionID=' + JsSessionID;
    $.ajax({
        url: "/wp-content/themes/twentyfifteen/js/test.php",
        type: "POST",
        data: data,
        success: function(data) {

        }
    });          
});

这是我的 PHP 代码: 是的没有mysqli..它只是为了测试。

$url = $_POST['url'];
$JsSessionID = $_POST['JsSessionID'];

$verbindung = mysql_connect ("abc","db1", "123")
or die ("keine Verbindung möglich. Benutzername oder Passwort sind falsch");

mysql_select_db("db1")
or die ("Die Datenbank existiert nicht.");


$eintrag = "INSERT INTO test (ID, JsSessionID, URL) VALUES ('', $JsSessionID, $url)";
$eintragen = mysql_query($eintrag);

此代码不起作用。

数据没有保存到我的数据库中,我不知道为什么。 连接正确,AJAX 将正确的数据发送到我的 PHP 文件。 我对其进行了测试 - 我尝试捕获数据并将其保存到 txt 文件中。

这行得通。

$datei = fopen("daten.txt","w");
echo fwrite($datei, $url,100);

【问题讨论】:

标签: php mysql ajax


【解决方案1】:

您在 MySQL 查询中插入字符串 (VARCHAR) 数据,不带单引号:

变化:

$eintrag = "INSERT INTO test (ID, JsSessionID, URL) 
VALUES ('', $JsSessionID, $url)";

收件人:

$eintrag = "INSERT INTO test (ID, JsSessionID, URL) 
VALUES ('', '$JsSessionID', '$url')"; // Observe additional single quotes.

【讨论】:

  • 它有效。我在你的帖子之前看到了我的问题......真的是星期五吗?我感觉好像是星期一。谢谢。
猜你喜欢
  • 2019-10-16
  • 2013-09-14
  • 2013-09-20
  • 1970-01-01
  • 1970-01-01
  • 2014-09-26
  • 1970-01-01
  • 2013-08-28
  • 2022-07-28
相关资源
最近更新 更多