如何使用PATCH更新简单的数据库字段?

时间:2017-02-02 06:39:27

标签: php mysql rest api

我是php和API的新手,我正在尝试学习这些方法。但我无法执行PATCH或PUT来更新我的简单mysql数据库。我使用了以下代码。

if(isset($_PATCH)){     
    $con = mysqli_connect("localhost", "root", "root","wordpress");
    $sql = "UPDATE trainsample SET Location = ('$_PATCH[Location]'), Data = ('$_PATCH[Data]') WHERE Name = ('$_PATCH[Name]')";
    mysqli_query($con,$sql);
    echo "Data Updated<br>";
}
else
{
    echo "Data Not found ";
}

我使用postman作为REST客户端并尝试发送数据来更新字段。任何帮助表示赞赏。提前谢谢。

2 个答案:

答案 0 :(得分:3)

我找到了使用POST的解决方法。我是初学者,如果有更好的方法请回复。

<?php
if(isset($_POST)){  

    $con = mysqli_connect("localhost", "root", "root","wordpress");
    $sql = "UPDATE `trainsample` SET `Location`='".$_POST['Location']."', 
            `Data`='".$_POST['Data']."' WHERE `Name`='".$_POST['Name']."'";
    if (mysqli_query($con, $sql)) {
        echo "Record updated successfully";
    } 
    else {
        echo "Error updating record: " . mysqli_error($con);
    }

    mysqli_close($con);
}
else
{
    echo "Data Not found ";
}
?>

答案 1 :(得分:2)

以下是PHP中功能齐全的REST服务器:

.LightContent

它确实:

  • 支持HTTP动词GET,POST,PUT,PATCH和DELETE
  • 正确转义所有数据以避免SQL注入
  • 正确处理空值

source