我正在尝试使用PHP将图片上传到我的MySql数据库,但是代码到达了else语句,好像图像有一个NULL值,但我从我的目录中选择了一个文件。
我的HTML表单:
<form action="cadastrar.php" method="post">
Nome: <input type="text" name="nome" value=""><br>
Descrição: <input type="text" name="descricao" value=""><br>
Cor: <input type="text" name="cor" value=""><br>
Imagem: <input type="file" name="imagem"/><br>
<input type="submit" name="botao" value="CADASTRAR">
</form>
我的PHP代码:
<?php
if(isset($_POST['botao']) && isset($_FILES['imagem'])){
if(getimagesize($_FILES['imagem']['tmp_name']) == FALSE) //SEEMS LIKE THE CODE NEVER REACH THIS CONDITION..
{
echo "Please select an image.";
}
else
{
$imagem = addslashes($_FILES['imagem']['tmp_name']);
$imagem = file_get_contents($imagem);
$imagem = base64_encode($imagem);
$nome = $_POST["nome"];
$descricao = $_POST["descricao"];
$cor = $_POST["cor"];
$dP = new DaoProduto;
$p = new Pessoa;
$p->setProdNome($nome);
$p->setProdDescricao($descricao);
$p->setProdCor($cor);
$p->setProdImagem($imagem);
$dP->inserirProduto($p);
}
}else{
echo "The code reach this ELSE..."; //<-- CODE REACHES HERE!!
}
?>
答案 0 :(得分:1)
您必须以以下格式添加加密:
<form action="cadastrar.php" method="post" enctype="multipart/form-data" >