【问题标题】:how do i update image data如何更新图像数据
【发布时间】:2022-08-18 01:53:09
【问题描述】:

我在一个有 crud 表的页面上工作,我卡在更新功能上, 它的所有更新和图像旁边的工作。 谢谢您的帮助

    if(isset($_POST[\'update_player\']))
{
    $player_id = mysqli_real_escape_string($conn, $_POST[\'player_id\']);
    $Photo = mysqli_real_escape_string($conn,$_FILES[\'Photo\'][\'tmp_name\']);
    $ID = mysqli_real_escape_string($conn, $_POST[\'Id\']);
    $Fname = mysqli_real_escape_string($conn, $_POST[\'Fname\']);
    $Lname = mysqli_real_escape_string($conn, $_POST[\'Lname\']);
    $Age = mysqli_real_escape_string($conn, $_POST[\'Age\']);
    $Email = mysqli_real_escape_string($conn, $_POST[\'Email\']);
    $Phone = mysqli_real_escape_string($conn, $_POST[\'Phone\']);
    

    $query = \"UPDATE players SET Photo=\'$Photo\', ID=\'$ID\', Fname=\'$Fname\', Lname=\'$Lname\' , Age = \'$Age\' , Email = \'$Email\' , Phone = \'$Phone\' WHERE id=\'$player_id\' \";
    $query_run = mysqli_query($conn, $query);

    if($query_run)
    {   
        $_SESSION[\'message\'] = \"player Updated Successfully\";
        header(\"Location: stam.php\");
        exit(0);
    }
    else
    {
        $_SESSION[\'message\'] = \"player Not Updated\";
        header(\"Location: stam.php\");
        exit(0);
    }

}
  • 相反会发生什么?您尝试过什么来解决问题?另外,请注意,给定的UPDATE 查询对于 SQL 注入是广泛开放的。查看准备好的语句以避免被黑客入侵

标签: php html crud


【解决方案1】:

您应该使用move_uploaded_file 将图像保存到“上传”目录,然后将文件名或 url 存储在数据库中。保存用户上传的文件时,您绝对应该采取措施保护自己。例如,通过检查文件扩展名以仅允许图像。

请参阅https://www.w3schools.com/php/php_file_upload.asp 上的简单指南

HTML

<form action="upload.php" method="post" enctype="multipart/form-data">
  Select image to upload:
  <input type="file" name="Photo" id="Photo">
  <input type="submit" value="Upload Image" name="submit">
</form>

PHP

<?php
$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["Photo"]["name"]);
$imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));
// check $imageFileType here to be jpeg, jpg, bmp, png, gif etc
if (move_uploaded_file($_FILES["Photo"]["tmp_name"], $target_file)) {
    echo "The file ". htmlspecialchars( basename( $_FILES["Photo"]["name"])). " has been uploaded.";
} else {
    echo "Sorry, there was an error uploading your file.";
} 

SQL

$query = "UPDATE players SET Photo='$target_file', ID='$ID', Fname='$Fname', Lname='$Lname' , Age = '$Age' , Email = '$Email' , Phone = '$Phone' WHERE id='$player_id' ";

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-09-10
    • 2020-01-22
    • 2014-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多