2017-08-06 52 views
1

我想通过JS函数更新我的数据库。谷歌搜索一段时间后,我明白,如果不使用AJAX,显然是不可能的。用JavaScript更新SQL数据库

所以这是我第一次和我试过了,这里是我的JS代码:

$("#update").click(function(event){ 
    var showArr = document.forms['ownForm'].elements['showArr'].value; 

    $.ajax({ 
     url: './../pages/updateDatabase.php', 
     type: 'POST', 
     data: { 
      showArr: showArr 
     } , 
     success: function(msg) { 
      alert("Data Saved: " + msg); 
     } 
    }); 
    return false; 
}); 

,我的PHP文件:

<?php 

try { 
    $conn = new PDO('mysql:host=localhost;dbname=+++', '+++', ''); 
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 

    $sql = "UPDATE Users SET SHOWARR = true WHERE ID = 1"; 

    $stmt = $conn->prepare($sql); 
    $stmt->execute(); 

    echo $stmt->rowCount() . " records UPDATED successfully"; 
} 
catch(PDOException $e) 
{ 
    echo $sql . "<br>" . $e->getMessage(); 
} 

$conn = null; 

?> 

但没有任何反应!我的错误在哪里?

+0

当然我从代码中删除凭据和我通一个“showArr”变量,但我现在并没有在php文件中使用它,因为我认为这可能是错误的。在这种情况下,我只想触发SQL语句 – TheBlackBird

+0

如果您只是将浏览器指向更新页面,它是否正常工作。这是一个确定哪个部分失败的案例 - 也直接调用页面更容易显示错误并找出如何修复它(尽管只有在不使用参数的情况下才有效)。 –

+0

调用PHP页面直接成功更新数据库!所以这似乎是AJAX方法的问题,我猜 – TheBlackBird

回答

1

你在AJAX功能URL看起来不正确: -

给予充分的URL这样

url:'http://yourdomain.com/page.php'; 

我希望工程

+0

试过了!工作! “http://”是重要的部分! – TheBlackBird