我正在尝试从数据库$oldfile中获取一个文件名,并用一个新的$newfile替换它。问题是$oldfile返回一个空值,但是在数据库中它有一个值。

$oldfile = '';
if(isset($_POST['submit'])){

    $styles=$_POST['styles'];
    $id=intval($_GET['id']);
    $sql=mysqli_query($con,"update styles set stylename='$styles' where id='$id'");

    $file = $oldfile.'.php';

    $tempfile = strtolower($styles);
    $newfile = $tempfile.'.php';

    if(!rename($file, $newfile)){
        $_SESSION['delmsg']="File Not Replaced!";
    }

    $_SESSION['msg']="Styles Updated!".$file;

}

$id=intval($_GET['id']);
$query=mysqli_query($con,"select * from styles where id='$id'");

while($row=mysqli_fetch_array($query)){
    $disp = $row['stylename'];
    $oldfile = strtolower($row['stylename']);
}

最佳答案

看起来您可能在第一行中返回了一个空变量。如果您将该行注释掉,输出是什么:

//$oldfile = ' ';


同样,仅供参考...,您正在设置$ sql变量,但未在其他任何地方使用它:

$sql=mysqli_query($con,"update styles set stylename='$styles' where id='$id'");

关于php - 我无法从PHP的数据库中获取存储的值(存储的值是没有扩展名的文件名),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52895561/

10-11 06:33