Bien, cuando subo una imagen a mysql de poco peso como (300KB) se sube correctament a la BD y no aparece ningn error, pero cuando subo una foto de 1.5 MB o algo parecido, me aparecen estos 2 errores
Warning: fread(): supplied argument is not a valid stream resource in C:\xampp\htdocs\curso1\subir.php on line 26
Warning: fclose(): supplied argument is not a valid stream resource in C:\xampp\htdocs\curso1\subir.php on line 31
Tengo una tabla en Mysql
donde para guardar el contenido de la imagen esta en tipo Medium BLOB
uso xampp
Y no se porque ocurren esos errores, espero que me puedan apoyar.
Les adjunto el codigo de subir.php
El archivo config.php es simple y no creo que hay este el error.
Yo creo que talvez deberia de configuar un archivo de mysql o de php
porque es curioso que archivos menores de 1 MB los suba bien, mientras que mayores a 1 MB no.
Gracias por sus respuestas.
SAludos
<html>
<head>
<title>Subir archivo a mysql</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
.box {
font-family: Arial, Helvetica, sans-serif;
font-size: 12px;
border: 1px solid #000000;
}
-->
</style>
</head>
<body>
<?
if(isset($_POST['upload'])) //Si se ha hecho click en el boton upload
{ //entonces
$fileName = $_FILES['userfile']['name']; //variable $filename es al elemento del arreglo $_FILES['userfile']['name']
$tmpName = $_FILES['userfile']['tmp_name']; //ahora para $tmpname
$fileSize = $_FILES['userfile']['size']; //con el tamano
$fileType = $_FILES['userfile']['type']; //con el tipo
$fp = fopen($tmpName, 'r');
$content = fread($fp, $fileSize);
$content = addslashes($content);
fclose($fp);
if(!get_magic_quotes_gpc())
{
$fileName = addslashes($fileName);
}
include 'config.php';
$connection=mysql_connect("localhost","root","pass wor")
or die("Error conectando a la base de datos");
$db=mysql_select_db("basededatos",$connection)
or die ("Error seleccionando la base de datos");
$query = "INSERT INTO upload (name, size, type, content ) ".
"VALUES ('$fileName', '$fileSize', '$fileType', '$content')";
mysql_query($query) or die('Error, query failed');
echo "<br>File $fileName uploaded<br>";
}
?>
<form action="" method="post" enctype="multipart/form-data" name="uploadform">
<table width="350" border="0" cellpadding="1" cellspacing="1" class="box">
<tr>
<td width="246"><input type="hidden"
name="MAX_FILE_SIZE" value="2000000"><input name="userfile"
type="file" class="box" id="userfile">
</td>
<td width="80"><input name="upload" type="submit" class="box" id="upload" value=" Upload "></td>
</tr>
</table>
</form>
</body>
</html>