在数据库PHPMYSQL中插入图像

在数据库PHPMYSQL中插入图像,php,mysql,sql,blob,sql-insert,Php,Mysql,Sql,Blob,Sql Insert,因此,我试图上传/主机图像在我的数据库,但由于某些原因,我不能存档它 插入图像: <form method="post" action="actions/dados_insert.php" enctype="multipart/form-data"> <input type="file" name="imagem" /> </form> <form method="post" action="actions/dados_update.php?id=&l

因此,我试图上传/主机图像在我的数据库,但由于某些原因,我不能存档它

插入图像:

<form method="post" action="actions/dados_insert.php" enctype="multipart/form-data">
<input type="file" name="imagem" />
</form>
<form method="post" action="actions/dados_update.php?id=<?php echo $row['id']; ?>" enctype="multipart/form-data">
<input type="file" name="imagem" />
</form>

dados_insert.php

<?php
if ( ! empty( $_POST ) ) {

$mysqli = new mysqli( 'localhost', 'root', '', 'valsil' );
$mysqli->set_charset("utf8");

if ( $mysqli->connect_error ) {
die( 'Connect Error: ' . $mysqli->connect_errno . ': ' . $mysqli->connect_error );
}

$sql = "INSERT INTO dados ( id_proposta, quantidade, posicao, unitario, titulo, `desc`, imagem ) VALUES ( '{$mysqli->real_escape_string($_POST['id_proposta'])}', '{$mysqli->real_escape_string($_POST['quantidade'])}', '{$mysqli->real_escape_string($_POST['posicao'])}', '{$mysqli->real_escape_string($_POST['unitario'])}', '{$mysqli->real_escape_string($_POST['titulo'])}', '{$mysqli->real_escape_string($_POST['desc'])}', '{$mysqli->real_escape_string($_FILES['imagem'])}' )";
$insert = $mysqli->query($sql);

if ( $insert ) {

header("Location: ". $_SERVER['HTTP_REFERER']); 
exit();

} else {
die("Error: {$mysqli->errno} : {$mysqli->error}");
}

$mysqli->close();
}
?>
<?php
if ( ! empty( $_POST ) ) {

$mysqli = new mysqli( 'localhost', 'root', '', 'valsil' );
$mysqli->set_charset("utf8");
$id = $_GET['id'];

if ( $mysqli->connect_error ) {
die( 'Connect Error: ' . $mysqli->connect_errno . ': ' . $mysqli->connect_error );
}

$sql = "UPDATE dados SET quantidade = '{$mysqli->real_escape_string($_POST['quantidade'])}', posicao = '{$mysqli->real_escape_string($_POST['posicao'])}', unitario = '{$mysqli->real_escape_string($_POST['unitario'])}', titulo = '{$mysqli->real_escape_string($_POST['titulo'])}', `desc` = '{$mysqli->real_escape_string($_POST['desc'])}', imagem = '{$mysqli->real_escape_string($_FILES['imagem'])}' WHERE id =".$id;

$insert = $mysqli->query($sql);

if ( $insert ) {

header("Location: ". $_SERVER['HTTP_REFERER']);
exit();

} else {
die("Error: {$mysqli->errno} : {$mysqli->error}");
}

$mysqli->close();
}
?>

我认为您尝试的方式需要将图像存储为BLOB,这是我从未尝试过的。。我的方法是将文件存储在一个专用目录中,可能命名为uploads,然后将实际文件名存储在数据库中,这样我以后就可以取回该文件。我认为您尝试的方法是将图像存储为BLOB,这是我从未尝试过的。。我的方法是将文件存储在一个专用目录中,可能名为uploads,然后将实际的文件名存储在数据库中,以便稍后可以取回该文件