Hola. Tengo el siguiente problema. Hice un sistema de noticias donde guardo en la bd el Titulo, Copete,Noticia, etc y no tego problema con eso. Quise agregarle tambien uan iagen a la noticia, despues intentar hacerlo por mismo busque un script y encontre uno que hacia lo que queria. El tema es q por separado eset script si gaurda la ruta en una base de datos pero una vez integrado ya no. Que es lo que puede esatr mal? Aca dejo el codigo.
<?PHP
include ("conectar.php");
if (isset($_POST['enviar'])) { //Se comprueba si el boton enviar ha sido pulsado
if (!empty($_POST['titulo']) && !empty($_POST['noticia']) && !empty($_POST['copete']) && !empty($_POST['categoria'])) { //Se comprueba si los campos no estan vacios
//Imagenes
error_reporting(0);
$change="";
$abc="";
define ("MAX_SIZE","400");
function getExtension($str) {
$i = strrpos($str,".");
if (!$i) { return ""; }
$l = strlen($str) - $i;
$ext = substr($str,$i+1,$l);
return $ext;
}
$errors=0;
if($_SERVER["REQUEST_METHOD"] == "POST")
{
$image =$_FILES["file"]["name"];
$image = str_replace(" ","_",$image);
$prefijo = substr(md5(uniqid(rand())),0,8);
$uploadedfile = $_FILES['file']['tmp_name'];
$size=filesize($_FILES['file']['tmp_name']);
if ($image)
{
$filename = stripslashes($_FILES['file']['name']);
$extension = getExtension($filename);
$extension = strtolower($extension);
if (($extension != "jpg") && ($extension != "jpeg") && ($extension != "png") && ($extension != "gif"))
{
$change='<div class="msgdiv">Unknown Image extension </div> ';
$errors=1;
}
else
{
$size=filesize($_FILES['file']['tmp_name']);
if ($size > MAX_SIZE*1024)
{
$change='<div class="msgdiv">You have exceeded the size limit!</div> ';
$errors=1;
}
if($extension=="jpg" || $extension=="jpeg" )
{
$uploadedfile = $_FILES['file']['tmp_name'];
$src = imagecreatefromjpeg($uploadedfile);
}
else if($extension=="png")
{
$uploadedfile = $_FILES['file']['tmp_name'];
$src = imagecreatefrompng($uploadedfile);
}
else
{
$src = imagecreatefromgif($uploadedfile);
}
echo $src;
list($width,$height)=getimagesize($uploadedfile);
$newwidth=624;
$newheight=($height/$width)*$newwidth;
$tmp=imagecreatetruecolor($newwidth,$newheight);
$newwidth1=125;
$newheight1=($height/$width)*$newwidth1;
$tmp1=imagecreatetruecolor($newwidth1,$newheight1) ;
imagecopyresampled($tmp,$src,0,0,0,0,$newwidth,$ne wheight,$width,$height);
imagecopyresampled($tmp1,$src,0,0,0,0,$newwidth1,$ newheight1,$width,$height);
$filename = "images/".$prefijo."_".$image;
$filename1 = "images/small/".$prefijo."_".$image;
imagejpeg($tmp,$filename,100);
imagejpeg($tmp1,$filename1,100);
imagedestroy($src);
imagedestroy($tmp);
imagedestroy($tmp1);
}}
}
//If no errors registred, print the success message
if(isset($_POST['Submit']) && !$errors)
{
$change=' <div class="msgdiv">Image Uploaded Successfully!</div>';
}
//fin imagenes
$sql = "INSERT INTO `noticias` (titulo,copete,noticia,categoria,fuente,foto,autor ) values"; //Definimos el codigo para...
$sql.= "('".$_POST['titulo']."','".$_POST['copete']."','".$_POST['noticia']."','".$_POST['categoria']."','".$_POST['fuente']."','$filename','Admin')"; //...Ingresar los datos del formulario en la DB
if (mysql_query($sql)) { //Aquí se ingresa y se comprueba si se ha ingresado bien
echo "Noticia Enviada Correctamente";
} else { //Si algo ha fallado
echo "Ha ocurrido un error, no se ha procesado la noticia";
}
} else { //Si faltan campos por completar
echo "La noticia no se ha enviado, completa el formulario";
}
} else { ?>
<form action="enviar.php" method="POST">
Titulo:<br />
<input name="titulo" type="text" value="Titulo de la noticia" size="60"><br>
Copete:<br />
<input name="copete" type="text" value="Copete" size="60"><br>
Noticia:<br />
<textarea name="noticia" cols="60" rows="10">El texto de la noticia</textarea><br>
Categoria:<br />
<select name="categoria" id="categoria">
<option>PHP</option>
<option>MySql</option>
<option>CSS</option>
<option>AJAX</option>
<option>Seguridad</option>
</select><br>
Fuente:<br />
<input name="fuente" type="text" value="Fuente" size="60"><br>
Foto:<br />
<input size="25" name="file" type="file" /><br>
<input type="submit" name="enviar" value="Enviar Noticia">
</form>
<? } ?>
</body>
</html>