使用Java删除SQL数据库上的行

时间:2018-12-08 13:59:32

标签: javascript php html ajax pdo

我想从HTML页面中删除一行 我正在使用此功能

function delete_row(no)
    {

        var row=document.getElementById("frm"+no).value;
        var data= {};
        data.row = row;


        $.ajax({
          url: 'delete_formation.php',
          type: 'POST',
          data: data,

          success: function(output){
            //alert(output);
          }
        });
        document.getElementById("row"+no+"").outerHTML="";

    }

我的delete_formation.php包含一个php脚本,用于删除我的sql数据库中的该行:

<?php 

    /* Connexion à une base MySQL avec l'invocation de pilote */
    $pdo = 'mysql:dbname=TDW;host=127.0.0.1';
    $user = 'root';
    $password = '00000000';

    try {
        $pdo = new PDO($pdo, $user, $password);
    } catch (PDOException $e) {
        echo 'Connexion échouée : ' . $e->getMessage();
    }

$d=$_POST['row'];




try {
    // sql to delete a record
    $sql = 'DELETE FROM Types_formation WHERE type_id="'.$d.'"';
    echo $sql ;

    // use exec() because no results are returned
    $pdo->exec($sql);
    echo "Record deleted successfully";
    }
catch(PDOException $e)
    {
    echo $sql . "<br>" . $e->getMessage();
    }?>

这不起作用,看来我的js脚本没有在id =“ frm1”(例如)中得到该文本

2 个答案:

答案 0 :(得分:0)

使用var row=document.getElementById("frm"+no).innerText; 而不是var row=document.getElementById("frm"+no).value;会解决此问题

答案 1 :(得分:0)

我认为您是ajax数据变量中的传递值,并且您获得了数据$ _post ['row'],但是您需要$ _post ['data'] ['row']。

如果这不起作用,那么我将举一个完整的例子。