0

目前我试图弄清楚为什么这个函数没有按预期工作(在一个 php 类中):

function actualizarPromos($nombre,$desc,$motivo,$id){
global $mysqli;
$sql="update promociones set nombre='".utf8_decode($nombre)."', desc='".utf8_decode($desc)."', motivo='".$motivo."' where id='".$id."'";
$mysqli->query($sql);
if($mysqli->insert_id>0){
            //It saved the data
    echo "Salvado";
}
else{
    //It didn't save the data   
        echo "No salvado";
    echo $mysqli->insert_id;
    echo "<br>".$sql;
}

}

我无法获得更新数据库内容的功能。我已经尝试在 phpmyadmin 上编写 SQL 语句,即:

update promociones set nombre='cumple', desc='muy buen cumple', motivo='mCumple' where id='13';

它根本不执行。任何人都可以帮助我吗?提前致谢!

4

1 回答 1

1

desc是 MySQL 中的一个Revered Word,因此您的查询很可能会失败。您需要使用反引号将其转义 - `

$sql="update promociones set nombre='".utf8_decode($nombre)."', `desc`='".utf8_decode($desc)."', motivo='".$motivo."' where id='".$id."'";
于 2013-03-08T04:01:03.373 回答