Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Ajax向数据库插入数据_Php_Jquery_Html_Ajax - Fatal编程技术网

Php Ajax向数据库插入数据

Php Ajax向数据库插入数据,php,jquery,html,ajax,Php,Jquery,Html,Ajax,我想使用Ajax插入数据。单击按钮(接受)时,应插入值1,并将按钮更改为接受。我尝试了以下代码 <script> $(function(){ $('#submit').on('click', function() { var name = $('#app').val(); if (name.length > 0) { $.ajax({

我想使用Ajax插入数据。单击按钮(接受)时,应插入值1,并将按钮更改为接受。我尝试了以下代码

<script>
    $(function(){
        $('#submit').on('click', function() {
            var name = $('#app').val();
            if (name.length > 0) {
                $.ajax({
                    url: 'approve.php',
                    method: 'POST'
                    data: { app: name },
                    success: function() {
                        alert("success");
                    }
                });
            }
        });
    });
</script>
当我运行这个时,什么都没有发生。请帮忙

试试这个

HTML

approve.php(使用PDO)

connection.php

$username = 'YourUsernameOfDatabase';
$password = 'YourPasswordOfDatabase';

try {
    $YourConnectionName = new PDO('mysql:host=Yourhost; dbname=YourDatabaseName', $username, $password);
    $YourConnectionName->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $YourConnectionName->exec("SET CHARACTER SET utf8");
} catch (PDOException $e) {
    echo 'You are not connected';
    $e->getMessage() . "<br/>";
    die();
}
$username='YourUsernameOfDatabase';
$password='YourPasswordOfDatabase';
试一试{
$YourConnectionName=new PDO('mysql:host=Yourhost;dbname=YourDatabaseName',$username,$password);
$YourConnectionName->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_异常);
$YourConnectionName->exec(“设置字符集utf8”);
}捕获(PDO$e){
回声“你没有连接”;
$e->getMessage()。“
”; 模具(); }
您的javascript错误。首先,您试图在隐藏的表单字段上设置“提交”事件处理程序。只有
会自然触发
submit
事件。其次,您没有设置
方法
参数,因此$.ajax通过
GET
提交数据,这意味着您的PHP代码不会看到任何值

最好在“提交”按钮上设置单击事件:

 <script>
    $(function(){
        $('#submit').on('click', function() {
            var name = $('#app').val();

            if (name.length > 0) {
                $.ajax({
                    url: 'approve.php',
                    method: 'POST'
                    data: { app: name },
                    success: function() {
                        alert("success");
                    }
               });
           }
        });
    });
</script>

这个
$(“#app”)。在(“#submit”上,…
在我看来没有任何意义。第十八,将侦听器设置为表单,并让它在
'submit'
上触发,或者在提交按钮上“单击”侦听器。尝试基本操作,
$(“#app”).submit
将调用AJAX
submit
事件需要绑定到
表单
,你的代码真的没有意义这可能是一个愚蠢的评论:但是你已经包含了jQuery库,不是吗?但是仍然没有发生任何事情。它没有进入数据库编辑,请检查它。您好,将数据:{app:name}更改为数据:{'app':name}在ajax代码中,我不知道出了什么问题,我也试过了。什么都没有发生,只是在approve.php中回显$appinfo和$u_id值并更改success:function(result){alert(result);}所以很明显,问题不是来自于值我在该页面中没有得到它。approve.php不会显示,因为我在索引页面中运行的ajax代码是否将session_start();放在connection.php或approve.php file.bcs中,如果您没有获取$u_id,则表示您没有获取当前用户id。
<input type="hidden" value="1" id="app">
<input type="submit" value="SUBMIT" id="submit">
$('#submit').click(function() {
var name = $('#app').val();

$.ajax({
    url: 'approve.php',
    data:"app="+ name,
    success:function(){
           alert("success");
    }
  });
});
include('connection.php');


$u_id  = $_SESSION['UserID'];

if(isset($_POST['app'])) {
    $appinfo  = $_POST['app'];

    $queryUpdate = $YourConnectionName->prepare("UPDATE tbl_bides SET selected=:appinfo WHERE bidder_id=:u_id");
    $queryUpdate->execute(array(':u_id' => $u_id, ':appinfo'=> $appinfo));
}
$username = 'YourUsernameOfDatabase';
$password = 'YourPasswordOfDatabase';

try {
    $YourConnectionName = new PDO('mysql:host=Yourhost; dbname=YourDatabaseName', $username, $password);
    $YourConnectionName->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $YourConnectionName->exec("SET CHARACTER SET utf8");
} catch (PDOException $e) {
    echo 'You are not connected';
    $e->getMessage() . "<br/>";
    die();
}
 <script>
    $(function(){
        $('#submit').on('click', function() {
            var name = $('#app').val();

            if (name.length > 0) {
                $.ajax({
                    url: 'approve.php',
                    method: 'POST'
                    data: { app: name },
                    success: function() {
                        alert("success");
                    }
               });
           }
        });
    });
</script>
$u_id  = $_SESSION['UserID'];
$appinfo = $_POST['app'];
$sql = "UPDATE tbl_bides SET selected='$appinfo' WHERE bidder_id = '$u_id'";
$Result = mysql_query($sql, $con) or die(mysql_error());
 Add One more parameter in ajax for submitting post data 

    $.ajax({
                url: 'approve.php',
                type: 'POST'
                data:"app="+ name,
                success:function(){
                    alert("success");
                }
           }));