Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 试图从MySql恢复损坏的图像时检索到该图像_Php_Html_Mysqli - Fatal编程技术网

Php 试图从MySql恢复损坏的图像时检索到该图像

Php 试图从MySql恢复损坏的图像时检索到该图像,php,html,mysqli,Php,Html,Mysqli,我编辑了前面的文本,因为我在编码时犯了很多错误,因为这方面的知识泄露 我在mysqli的最后一步“INSERT”中仍然有一个错误 现在这是前端 <body> <form action="consulta.php" method="post" enctype="multipart/form-data"> <input type="file" name="imagen" id="imagen" placeholder="Subir Foto"> <input

我编辑了前面的文本,因为我在编码时犯了很多错误,因为这方面的知识泄露

我在mysqli的最后一步“INSERT”中仍然有一个错误

现在这是前端

<body>
<form action="consulta.php" method="post" enctype="multipart/form-data">
<input type="file" name="imagen" id="imagen" placeholder="Subir Foto">
<input type="submit">
</form>
</body>

这是后端

$conexion=mysqli_connect("localhost", "root", "", "imagenes") or die("Error en la conexion") or die('error en la seleccion de la bd');
    if (!isset($_FILES['imagen']) || $_FILES['imagen']['error']>0) {
        echo "Ha ocurrido un error";
    }else {
        $permitidos= array("image/jpg","image/jpeg","image/gif","image/png");
        $limite_kb=16384;
        if (in_array($_FILES['imagen']['type'], $permitidos) && $_FILES['imagen']['size'] <=$limite_kb*1024) {
            //Archivo temporal
            $imagen_temporal=$_FILES['imagen']['tmp_name'];
            $tipo=$_FILES['imagen']['type'];
            //leer el archivo temporal en binario
            $data=file_get_contents($imagen_temporal);
            //Escapar los caracteres (Ni idea, tengo que averiguar)
            $data=mysqli_escape_string($conexion,$data);
    mysqli_query($conexion,"INSERT INTO imagenes(imagen,tipo_imagen) VALUES('".$data."','".$tipo."')") or die("Error en la carga de imagen");

        }
    }
$conexion=mysqli_connect(“localhost”、“root”、“imagenes”)或die(“conexion错误”)或die(“bd选择错误”);
如果(!isset($_文件['imagen'])|$_文件['imagen']['error']>0){
回声“Ha ocurrido un error”;
}否则{
$permitidos=array(“image/jpg”、“image/jpeg”、“image/gif”、“image/png”);
$limite_kb=16384;

如果(在数组($\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\你应该认真考虑一下.HI过路人,我遵循你说的话,我修正了几个错误。所以我编辑了原始的帖子,我把我正在处理的当前代码放进去。我仍然有一个错误,但是就在插入MySQLI的那一刻,我希望这可以更多的读取。比上一行更容易。提前感谢。请确保插入到的字段足够大,可以容纳数据。例如,Blob、文本或类似的内容。此外,您可能需要对进入数据库的文件进行base64_encode()和base64_decode()从数据库中读取数据时会出现问题。嗨,山姆,问题出在数据库本身,因此问题可以用相对简单的方法解决,我的电脑已经用完了,但很快我就会回来。让我在几个小时内检查一下,我会看看我是否能够解决它。