Quantcast
Channel: Tópicos
Viewing all articles
Browse latest Browse all 14700

Como resolvo isto?

$
0
0
neste codigo estou a receber um erro que não consigo resolver... (Warning: file_get_contents() [function.file-get-contents]: Filename cannot be empty in /home/index.php on line 23)

alem disso mal abre a pagina grava-me logo o registo e exibe o anterior, quando so o deveria fazer apos enviar o form pra base de dados.



<?php
//LIGA-SE Á BASE DE DADOS

include('ligar-bd.php');

//SE FOR PEDIDO UMA CONSULTA

if(!isset($_GET["getfile"])){

//SE ELA NÃO EXISTIR MOSTRA A MENSAGEM DE ERRO

if ($_FILES["file"]["error"] > 0){
echo "Erro: " . $_FILES["file"]["error"] . "<br>";

//CASO CONTRÁRIO

}else{

//EXECUTA AÇÕES DE TRATAMENTO E CODIFICAÇÃO DAS IMAGENS

move_uploaded_file($_FILES["file"]["tmp_name"], $_FILES["file"]["name"]);

$bin_string = file_get_contents($_FILES["file"]["name"]);
$hex_string = base64_encode($bin_string);

//CARREGA TODAS AS OPÇÕES DO FORMULÁRIO

$nome = $_POST['nome'];

//INSERE OS DADOS NA BASE DE DADOS

$mysqli->query(" INSERT INTO teste(imagem,nome) VALUES ('" . $hex_string . "','$nome') ");
}

//SE AINDA NADA FOI PEDIDO PARA SER MOSTRADO

}else{

//SELECIONA NA BASE DE DADOS A ULTIMA ENTRADA

if ($result = $mysqli->query(" SELECT * FROM teste ORDER BY id DESC ")){

if($row = $result->fetch_assoc()){
$output_hex_string = $row["imagem"];
$output_bin_string = base64_decode($output_hex_string);

header("Content-Type: image/png");
header("Content-Length: " . strlen($output_bin_string));

//MOSTRA A ULTIMA ENTRADA

$result->free();
echo $output_bin_string;
}
}
  }
?>  






<html>
<body>

<form action="" method="POST" enctype="multipart/form-data">
Nome: <input type="text" name="nome">
<br>
Imagem: <input type="file" name="file">
<br>
<input type="submit">
</form>






<?php
//MOSTRA OS RESULTADOS

echo "<h2>Nome:<i> $nome </i></h2>";
?>

<img src="index.php?getfile=1">

</body>
</html>

Viewing all articles
Browse latest Browse all 14700