用AJAX向数据库发送数据失败


sending data with AJAX into Database fails

我想通过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代码:是的,不,我…仅供测试使用。
$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);

您正在插入字符串(VARCHAR)数据在MySQL查询中没有单引号:

改变:

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

:

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