首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >删除PHP中的mysql json数据

问删除PHP中的mysql json数据
EN

Stack Overflow用户
提问于 2022-03-05 12:45:01
回答 1查看 82关注 0票数 1

下面我和你分享我的密码。我可以将新的数据作为json保存在我的数据库中,但是我想不出如何从这些数据中删除我想要的内容。我该怎么办?

代码语言:javascript
复制
<?php
include("matta/database.php");
?>
<html>
<meta charset="UTF-8">

<?php 
$sorgum = mysql_query("SELECT * FROM birlikler WHERE id = 1", $vtbaglan);
$sorgu = mysql_fetch_array($sorgum);

$uyelerim = $sorgu['uyeler'];
$uyesim = json_decode($uyelerim, true);


foreach($uyesim as $bubirtest){
    echo ''.$bubirtest['kullanici'].'<br>';
}
echo ''.$uyebilgileri.'

<form method="post">
    <input type="text" name="kullaniciadi" placeholder="kullaniciadi"s>
    <input type="text" name="rutbe" placeholder="rutbe">
    <input type="text" name="kadi" placeholder="karakteradi">
    <button type="submit" name="verigir">verigir</button>
</form>';
if(isset($_POST["verigir"])){
    $kullaniciadi = $_POST["kullaniciadi"];
    $rutbe = $_POST["rutbe"];
    $karakteradi = $_POST["kadi"];
    $arr = [
        'kullanici' => ''.$kullaniciadi.'',
        'rutbe' => ''.$rutbe.'',
        'karakteradi' => ''.$karakteradi.''
    ];
    $uyesim[] = $arr;
    $arrim = json_encode($uyesim);

    //echo '<br>'.$uyeler.','.$arrim.'';

    $veriekle = mysql_query("UPDATE birlikler SET uyeler =  '$arrim' WHERE id = 1", $vtbaglan);
}
?>

我的前一个问题:PHP MySQL Json data saving

编辑:

我尝试了@gguney声明的代码,但没有达到结果。我把"uyeler“列放在我的数据库下面,这样我就可以清楚地解释我想要的方式。

代码语言:javascript
复制
[{"kullanici":"matta","rutbe":"20","karakteradi":"Vitality_Test"},{"kullanici":"Linuxy","rutbe":"19","karakteradi":"Linuxy_Test"}]

为了给出一个我想要做的操作的例子,我想从这一行中删除"kullanici“值为"matta”的用户。换句话说,我希望通过我的操作获得的新数据如下;

代码语言:javascript
复制
[{"kullanici":"Linuxy","rutbe":"19","karakteradi":"Linuxy_Test"}]

我使用的PHP版本有点旧。我知道这一点,但我必须用这个版本作为我目前的工作。如果你能帮忙,我将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2022-03-05 13:05:04

你可以更新那个json字段。或者和其他数组字段一样。只需使用未设置的。

例如:

代码语言:javascript
复制
unset($arr['rutbe']);

并再次使用update mysql查询删除该字段。

也可以使用MySQL JSON_REMOVE函数。

代码语言:javascript
复制
UPDATE birlikler
SET birlikler.uyeler = JSON_REMOVE(birlikler.uyeler, 'rutbe');
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71362299

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档