如何使用php和md5将数据库中存储的图像与用户输入的图像进行比较

时间:2018-12-22 05:26:33

标签: php mysql image md5

我想将图像与数据库中存储的图像进行比较。是否可以使用md5?我的意思是说,存储在数据库中的文件将具有与原始文件相同的md5值吗?

//the input image
$image1 = $_FILES['image1']['tmp_name'];
$image1 =addslashes(file_get_contents($image1));

//the stored image
$image2=mysqli_fetch_array(mysqli_query($con,"select image from 
civilregistry where nationalnumb=12345678900"));
$image2 = $image2[0];

$image1md5=md5(file_get_contents($image1));
$image2md5=md5(file_get_contents($image2));

if($image1md5==$image2md5)
{echo"compatible";}
else
{echo"not compatible";}

注意:在将图像存储到数据库之前,我使用了addlashes。

1 个答案:

答案 0 :(得分:0)

不要直接使用file_get_contents

$image1md5=MD5($image1);
$image2md5=MD5($image2);

进行比较,您可能会得到正确的比较。

注意:file_get_contents()函数将读取文件的内容,您可以看到以下参考URL:https://www.w3schools.com/php/func_filesystem_file_get_contents.asp