Foros del Web » Programando para Internet » PHP »

Ayuda con formulario para publicar Noticia más imagen

Estas en el tema de Ayuda con formulario para publicar Noticia más imagen en el foro de PHP en Foros del Web. Amigos, Les ruego encarecidamente, por favor, ayúdenme con este formulario que me tiene loco. Trato de publicar una noticia y logro inyectar la data correctamente ...
  #1 (permalink)  
Antiguo 06/05/2009, 07:58
Avatar de Dragon_Mandarin  
Fecha de Ingreso: marzo-2005
Ubicación: Santiago de Chile
Mensajes: 231
Antigüedad: 19 años, 1 mes
Puntos: 14
Ayuda con formulario para publicar Noticia más imagen

Amigos,

Les ruego encarecidamente, por favor, ayúdenme con este formulario que me tiene loco. Trato de publicar una noticia y logro inyectar la data correctamente a la base de datos MySQL, con categoría y todo, lo cual mi formulario hace sin problemas; funciona como relojito. Pero cuando trato que el nombre de la foto quede almacenada en el campo 'notFoto' no pasa nada. Estoy usando un campo varchar 255, para almacenar el nombre de la foto, no me gustan los campos BLOB (de hecho, no tengo pensado hacerlo, me carga esta solución, así es que, porfa, no me lo aconsejen! jeje).

Dentro del formulario está la programación para subir una foto, de hecho lo hace, queda en la carpeta seleccionada para tales efectos, pero -repito- el nombre de la foto no queda registrado en la BDD. Tengo listo el index.php en la parte del frontpage para mostrar la noticia publicada y funciona de lo más bien, cero problemas. pero no hay foto ... la base de datos (reitero) no contiene el nombre de la foto en el campo $notFoto y, por lo tanto, muestra la clásica x de que ... no hay foto!!

Estoy ya rayado con esto, a punto de pegarme un tiro poco menos ... ¿qué estoy haciendo mal????

Acá va el formulario:

Código PHP:
<?php
// incluimos el archivo de conexion
include ('db-cnx.php');
// recibimos el formulario
if(isset($_POST['enviar']) && $_POST['enviar'] == 'Enviar'){
    
// comprobamos que el formulario no envie campos vacios
    
if(!empty($_POST['notTitulo']) && $_POST['notTexto'] && $_POST['catCategoria'] && $_POST['fecha']){
        
// creamos las variables y les asignamos los valores a insertar
        
$notTitulo $_POST['notTitulo'];
        
$notTexto $_POST['notTexto'];
  
$notFoto $_POST['notFoto'];
        
$fecha $_POST['fecha'];
        
$catCategoria $_POST['catCategoria'];
        
// hacemos el INSERT en la BD
        
$sqlInsertNot mysql_query("INSERT INTO sn_noticias
                         (notTitulo, notTexto, notFoto, catCategoria, fecha)
                         VALUES ('$notTitulo', '$notTexto','$notFoto', '$catCategoria', '$fecha')"
,
                         
$db_link) or die(mysql_error());
        
// enviamos un mensaje de exito
        
echo "<b>Los datos fueron guardados correctamente</b>&nbsp; | <a href=\"index.php\">Volver a la Administración</a>";
    }else{
        
// si el formulario envia algun campo vacio
        // enviamos un mensaje de error
        
echo "Debe llenar todos los campos del formulario<br />";
    }
}
//Subimos le imagen a la carpeta, en este caso "fotos"
if (isset($_POST['enviar'])) { 
    if(
is_uploaded_file($_FILES['notFoto']['tmp_name'])) { // verifica haya sido cargado el archivo
  
$ruta"../fotos/".$_FILES['notFoto']['name']; // Se guardaría dentro de "fotos" con el nombre original
// $ruta= "carpeta/nuevo_nombre.jpg"; si también se quiere renombrar
 
move_uploaded_file($_FILES['notFoto']['tmp_name'], $ruta);
        if(
move_uploaded_file($_FILES['notFoto']['tmp_name'], $_FILES['notFoto']['name'])) { // se coloca en su lugar final
             
echo "<b>Upload exitoso!. Datos:</b><br>";
            echo 
"Nombre: <i><a href=\"".$_FILES['notFoto']['name']."\">".$_FILES['notFoto']['name']."</a></i><br>";
            echo 
"Tipo MIME: <i>".$_FILES['notFoto']['type']."</i><br>";
                    echo 
"Peso: <i>".$_FILES['notFoto']['size']." bytes</i><br>";
                        echo 
"<br><hr><br>";
        }
    }
 
// A continuación el formulario
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
<title>Agregar Noticia</title>
<LINK HREF="style.css" REL="stylesheet" TYPE="text/css">
<script type="text/javascript" src="jscripts/tiny_mce/tiny_mce.js"></script>
<script type="text/javascript">
 tinyMCE.init({
  // General options
  mode : "textareas",
  theme : "advanced",
  plugins : "safari,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template",
  // Theme options
  theme_advanced_buttons1 : "save,newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,styleselect,formatselect,fontselect,fontsizeselect",
  theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|,insertdate,inserttime,preview,|,forecolor,backcolor",
  theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,emotions,iespell,media,advhr,|,print,|,ltr,rtl,|,fullscreen",
  theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,pagebreak",
  theme_advanced_toolbar_location : "top",
  theme_advanced_toolbar_align : "left",
  theme_advanced_statusbar_location : "bottom",
  theme_advanced_resizing : true,
  // Example content CSS (should be your site CSS)
  content_css : "css/content.css",
  // Drop lists for link/image/media/template dialogs
  template_external_list_url : "lists/template_list.js",
  external_link_list_url : "lists/link_list.js",
  external_image_list_url : "lists/image_list.js",
  media_external_list_url : "lists/media_list.js",
  // Replace values for the template plugin
  template_replace_values : {
   username : "Some User",
   staffid : "991234"
  }
 });
</script>
<!-- /TinyMCE -->
<style type="text/css">
<!--
@import url("css-add-noti.css");
body {
 margin-left: 20px;
 margin-top: 15px;
}
-->
</style>
</head>
<body text="#17334a" vlink="#000040" alink="#000040" link="#000040" bgcolor="#ffffff" background="images/index_bg.gif">
<div class="ts-1">
  <!-- el formulario -->
  <form action="<?php $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data" name="noticia">
    <p>Agregar las noticias preferible en formato HTML     </p>
    <p>T&iacute;tulo de la Noticia<br />
      <input type="text" name="notTitulo" size="70" />
    </p>
    <p>
      Texto de la Noticia<br />
      <textarea name="notTexto" rows="20" cols="90"></textarea>
      <br />
      <input name="fecha" type="hidden" value="<?=date("Y-m-d"); ?> <?=date("h:i:s");?>" />
      <br />
      <label>
        <input type="file" name="notFoto" id="notFoto" />
      </label>
      <br />
    </p>
    <p>
      Categor&iacute;a<br />
      <select name="catCategoria">
        <option value="">Escoger de la Lista</option>
        <?php
    
// asignamos una categoria a la noticia
    // mediante un select
    
$sqlQueryCat mysql_query("SELECT * FROM sn_categorias"$db_link)
                                or die(
mysql_error);
    
// creamos un bucle while
    // que nos muestre todas las categorias
    // que tenemos guardadas en la BD
    
while($rowCat mysql_fetch_array($sqlQueryCat)){ ?>
<!-- echo "<option value='$rowCat[cat_ID]'>$rowCat[catCategoria] - $rowCat[cat_ID]</option>";-->
<option value='<?=$rowCat[catCategoria]; ?>'><?=$rowCat[catCategoria]; ?></option>
    <? }    ?>
      </select>
      <br />
      <br />
  <input type="submit" name="enviar" value="Enviar" />   
</form>
</body>
</html>
  #2 (permalink)  
Antiguo 06/05/2009, 08:03
 
Fecha de Ingreso: febrero-2009
Ubicación: cancun!
Mensajes: 898
Antigüedad: 15 años, 2 meses
Puntos: 15
Respuesta: Por favr, Ayuda con formulario para publicar Noticia más imagen

si le das un echo a esto
$ruta que te sale??
es una dudilla nada mas saludines!
__________________
WHERE IS MY BLUE SUNNY SKY??
pd: todos los karmas son bienvenidos :D
  #3 (permalink)  
Antiguo 06/05/2009, 08:53
Avatar de Dragon_Mandarin  
Fecha de Ingreso: marzo-2005
Ubicación: Santiago de Chile
Mensajes: 231
Antigüedad: 19 años, 1 mes
Puntos: 14
Respuesta: Por favr, Ayuda con formulario para publicar Noticia más imagen

Cita:
Iniciado por harvestmoon Ver Mensaje
si le das un echo a esto
$ruta que te sale??
es una dudilla nada mas saludines!
Hola, amigo,

No lo he probado ... con ello debiera salir la ruta donde está almacenada la imagen, pero lo que necesito es que el formulario inyecte el nombre de la foto en el campo 'notFoto de la base de datos.

Ojalá alguien pueda ayudarme; les ruego no me dejen botado, porfis.

Bye
  #4 (permalink)  
Antiguo 06/05/2009, 09:10
 
Fecha de Ingreso: febrero-2009
Ubicación: cancun!
Mensajes: 898
Antigüedad: 15 años, 2 meses
Puntos: 15
Respuesta: Por favr, Ayuda con formulario para publicar Noticia más imagen

en realidad deberias hacerlo pues te da el nombre del archivo
saludines!!
__________________
WHERE IS MY BLUE SUNNY SKY??
pd: todos los karmas son bienvenidos :D
  #5 (permalink)  
Antiguo 06/05/2009, 09:13
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Por favr, Ayuda con formulario para publicar Noticia más imagen

Pues viendo tu codigo tienes un problema de logica, primero insertas la noticia en la BDD y luego copias la foto a su destino final, eso es un problema de logica y es por eso que no se registra en la BDD.

El proceso debe de ser:
- Copias la imagen a su ruta final
- Almacenas el nombre de la foto en una variable
- Insertas en la BDD los datos junto con el nombre de la foto.

Saludos.
  #6 (permalink)  
Antiguo 06/05/2009, 09:15
Avatar de Dragon_Mandarin  
Fecha de Ingreso: marzo-2005
Ubicación: Santiago de Chile
Mensajes: 231
Antigüedad: 19 años, 1 mes
Puntos: 14
Cita:
Iniciado por harvestmoon Ver Mensaje
en realidad deberias hacerlo pues te da el nombre del archivo
saludines!!

De acuerdo, y dónde debiera instalar el echo "$notFoto";

Cita:
Iniciado por GatorV Ver Mensaje
Pues viendo tu codigo tienes un problema de logica, primero insertas la noticia en la BDD y luego copias la foto a su destino final, eso es un problema de logica y es por eso que no se registra en la BDD.

El proceso debe de ser:
- Copias la imagen a su ruta final
- Almacenas el nombre de la foto en una variable
- Insertas en la BDD los datos junto con el nombre de la foto.

Saludos.

Hola, GatorV

Tienes razon ... es lo que pensaba. Bueno, soy poco experto en esto del php, me falta mucho aún. Te pido me indiques cómo debiera quedar el formulario, en definitiva.

Gracias por responder!

Última edición por GatorV; 06/05/2009 a las 10:42
  #7 (permalink)  
Antiguo 06/05/2009, 09:17
 
Fecha de Ingreso: febrero-2009
Ubicación: cancun!
Mensajes: 898
Antigüedad: 15 años, 2 meses
Puntos: 15
Respuesta: Por favr, Ayuda con formulario para publicar Noticia más imagen

$ruta= $_FILES['notFoto']['name'];
echo $ruta;
__________________
WHERE IS MY BLUE SUNNY SKY??
pd: todos los karmas son bienvenidos :D
  #8 (permalink)  
Antiguo 06/05/2009, 09:21
Avatar de Dragon_Mandarin  
Fecha de Ingreso: marzo-2005
Ubicación: Santiago de Chile
Mensajes: 231
Antigüedad: 19 años, 1 mes
Puntos: 14
Cita:
Iniciado por harvestmoon Ver Mensaje
$ruta= $_FILES['notFoto']['name'];
echo $ruta;

Ok, voy a probar!

Gracias

Cita:
Iniciado por harvestmoon Ver Mensaje
$ruta= $_FILES['notFoto']['name'];
echo $ruta;
Excelente!! Resultóoooo!! Por fin!

Gracias, amigo!!

Ahora, el otro desafío es lograr hacer un thumbnail y lograr arreglar el formulario para editar (uff jajaja)

Nuevamente, gracias harvestmoon!

Última edición por GatorV; 06/05/2009 a las 10:42
  #9 (permalink)  
Antiguo 06/05/2009, 10:01
 
Fecha de Ingreso: febrero-2009
Ubicación: cancun!
Mensajes: 898
Antigüedad: 15 años, 2 meses
Puntos: 15
Respuesta: Por favr, Ayuda con formulario para publicar Noticia más imagen

para servirte cualquier cosa aki esta el foro para echarte una mano
saludines!!
y suerte en todo!
__________________
WHERE IS MY BLUE SUNNY SKY??
pd: todos los karmas son bienvenidos :D
  #10 (permalink)  
Antiguo 06/05/2009, 10:05
Avatar de Dragon_Mandarin  
Fecha de Ingreso: marzo-2005
Ubicación: Santiago de Chile
Mensajes: 231
Antigüedad: 19 años, 1 mes
Puntos: 14
Cita:
Iniciado por harvestmoon Ver Mensaje
para servirte cualquier cosa aki esta el foro para echarte una mano
saludines!!
y suerte en todo!

Gracias, amigo!

Ahora estoy en el rollo de hacer la miniatura cuando publico todo. Así es que, si me da mucha guerra, les pido ayuda, nuevamente.

Hasta pronto

No me ha ido bien con la creación de las miniaturas (thumbs) desde el fomulario para agregar noticias. Como ya saben -y gracias a harvestmoon-, logré que el formulario inyectara el nombre de la foto en la base de datos. Pero ahora necesito generar la miniatura.

El formulario:

Código PHP:
<?php
//Subimos le imagen a la carpeta, en este caso "fotos"
if (isset($_POST['enviar'])) { 
    if(
is_uploaded_file($_FILES['notFoto']['tmp_name'])) { // verifica haya sido cargado el archivo
  
$ruta"../fotos/".$_FILES['notFoto']['name']; // Se guardaría dentro de "fotos" con el nombre original
// $ruta= "carpeta/nuevo_nombre.jpg"; si también se quiere renombrar
 
move_uploaded_file($_FILES['notFoto']['tmp_name'], $ruta);
        if(
move_uploaded_file($_FILES['notFoto']['tmp_name'], $_FILES['notFoto']['name'])) { // se coloca en su lugar final
             
echo "<b>Upload exitoso!. Datos:</b><br>";
            echo 
"Nombre: <i><a href=\"".$_FILES['notFoto']['name']."\">".$_FILES['notFoto']['name']."</a></i><br><br>";
            echo 
"Tipo MIME: <i>".$_FILES['notFoto']['type']."</i><br>";
                    echo 
"Peso: <i>".$_FILES['notFoto']['size']." bytes</i><br>";
                        echo 
"<br><hr><br>";
        }
    }
 
// A continuación el formulario
}
// incluimos el archivo de conexion
include ('db-cnx.php');
// recibimos el formulario
if(isset($_POST['enviar']) && $_POST['enviar'] == 'Enviar'){
    
// comprobamos que el formulario no envie campos vacios
    
if(!empty($_POST['notTitulo']) && $_POST['notTexto'] && $_POST['catCategoria'] && $_POST['fecha']){
        
// creamos las variables y les asignamos los valores a insertar
        
$notTitulo $_POST['notTitulo'];
        
$notTexto $_POST['notTexto'];
        
$notFoto $ruta$_FILES['notFoto']['name'];
        echo 
$ruta
        
$fecha $_POST['fecha'];
        
$catCategoria $_POST['catCategoria'];
        
// hacemos el INSERT en la BD
        
$sqlInsertNot mysql_query("INSERT INTO sn_noticias
                         (notTitulo, notTexto, notFoto, catCategoria, fecha)
                         VALUES ('$notTitulo', '$notTexto','$notFoto', '$catCategoria', '$fecha')"
,
                         
$db_link) or die(mysql_error());
        
// enviamos un mensaje de exito
        
echo "<b>Los datos fueron guardados correctamente</b>&nbsp; | <a href=\"index.php\">Volver a la Administración</a>";
    }else{
        
// si el formulario envia algun campo vacio
        // enviamos un mensaje de error
        
echo "Debe llenar todos los campos del formulario<br />";
    }
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
<title>Agregar Noticia</title>
<LINK HREF="style.css" REL="stylesheet" TYPE="text/css">
<script type="text/javascript" src="jscripts/tiny_mce/tiny_mce.js"></script>
<script type="text/javascript">
 tinyMCE.init({
  // General options
  mode : "textareas",
  theme : "advanced",
  plugins : "safari,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template",
  // Theme options
  theme_advanced_buttons1 : "save,newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,styleselect,formatselect,fontselect,fontsizeselect",
  theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|,insertdate,inserttime,preview,|,forecolor,backcolor",
  theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,emotions,iespell,media,advhr,|,print,|,ltr,rtl,|,fullscreen",
  theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,pagebreak",
  theme_advanced_toolbar_location : "top",
  theme_advanced_toolbar_align : "left",
  theme_advanced_statusbar_location : "bottom",
  theme_advanced_resizing : true,
  // Example content CSS (should be your site CSS)
  content_css : "css/content.css",
  // Drop lists for link/image/media/template dialogs
  template_external_list_url : "lists/template_list.js",
  external_link_list_url : "lists/link_list.js",
  external_image_list_url : "lists/image_list.js",
  media_external_list_url : "lists/media_list.js",
  // Replace values for the template plugin
  template_replace_values : {
   username : "Some User",
   staffid : "991234"
  }
 });
</script>
<!-- /TinyMCE -->
<style type="text/css">
<!--
@import url("css-add-noti.css");
body {
 margin-left: 20px;
 margin-top: 15px;
}
-->
</style>
</head>
<body text="#17334a" vlink="#000040" alink="#000040" link="#000040" bgcolor="#ffffff" background="images/index_bg.gif">
<div class="ts-1">
  <!-- el formulario -->
  <form action="<?php $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data" name="noticia">
    <p>Agregar las noticias preferible en formato HTML     </p>
    <p>T&iacute;tulo de la Noticia<br />
      <input type="text" name="notTitulo" size="70" />
    </p>
    <p>
      Texto de la Noticia<br />
      <textarea name="notTexto" rows="20" cols="90"></textarea>
      <br />
      <input name="fecha" type="hidden" value="<?=date("Y-m-d"); ?> <?=date("h:i:s");?>" />
      <br />
      <label>
        <input type="file" name="notFoto" id="notFoto" />
      </label>
      <br />
    </p>
    <p>
      Categor&iacute;a<br />
      <select name="catCategoria">
        <option value="">Escoger de la Lista</option>
        <?php
    
// asignamos una categoria a la noticia
    // mediante un select
    
$sqlQueryCat mysql_query("SELECT * FROM sn_categorias"$db_link)
                                or die(
mysql_error);
    
// creamos un bucle while
    // que nos muestre todas las categorias
    // que tenemos guardadas en la BD
    
while($rowCat mysql_fetch_array($sqlQueryCat)){ ?>
<!-- echo "<option value='$rowCat[cat_ID]'>$rowCat[catCategoria] - $rowCat[cat_ID]</option>";-->
<option value='<?=$rowCat[catCategoria]; ?>'><?=$rowCat[catCategoria]; ?></option>
    <? }    ?>
      </select>
      <br />
      <br />
  <input type="submit" name="enviar" value="Enviar" />   
</form>
</body>
</html>
Espero puedan ayudarme, nuevamente.

Gracias!

Última edición por GatorV; 06/05/2009 a las 14:23
  #11 (permalink)  
Antiguo 06/05/2009, 14:24
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Ayuda con formulario para publicar Noticia más imagen

No veo en que parte de tu codigo es que haces la llamada para hacer el thumbnail o el codigo para hacer el thumbnail.

Saludos.
  #12 (permalink)  
Antiguo 06/05/2009, 16:44
Avatar de Dragon_Mandarin  
Fecha de Ingreso: marzo-2005
Ubicación: Santiago de Chile
Mensajes: 231
Antigüedad: 19 años, 1 mes
Puntos: 14
Cita:
Iniciado por GatorV Ver Mensaje
No veo en que parte de tu codigo es que haces la llamada para hacer el thumbnail o el codigo para hacer el thumbnail.

Saludos.
Ups!! Torpe de mi!! Lo tenía instalado y lueg lo saqué ... y lo publiqué acá y bueno, así es la life ... estoy un poco mareado con esta! jajaja

Acá va el código que he intentado usar, sacado desde las FAQs del foro:

Código PHP:
function thumbjpeg($imagen,$altura) { 
     
// Lugar donde se guardarán los thumbnails respecto a la carpeta donde está la imagen "grande". 
     
$dir_thumb "../fotos/thumbs/"
     
// Prefijo que se añadirá al nombre del thumbnail. Ejemplo: si la imagen grande fuera "imagen1.jpg", 
     // el thumbnail se llamaría "tn_imagen1.jpg" 
     
$prefijo_thumb "tn_"
 
     
// Aquí tendremos el nombre de la imagen. 
     
$nombre=basename($imagen); 
     
// Aquí la ruta especificada para buscar la imagen. 
     
$camino=dirname($imagen)."/"
 
     
// Intentamos crear el directorio de thumbnails, si no existiera previamente. 
     
if (!file_exists($camino.$dir_thumb)) 
          @
mkdir ($camino.$dir_thumb0777) or die("No se ha podido crear el directorio ".$camino.$dir_thumb); 
 
     
// Aquí comprovamos que la imagen que queremos crear no exista previamente 
     
if (!file_exists($camino.$dir_thumb.$prefijo_thumb.$nombre)) { 
          echo 
$camino.$dir_thumb.$prefijo_thumb.$nombre." NO existía<br>\n"
          
$img = @imagecreatefromjpeg($camino.$nombre) or die("No se encuentra la imagen $camino$nombre<br>\n"); 
 
          
// miramos el tamaño de la imagen original... 
          
$datos getimagesize($camino.$nombre) or die("Problemas con $camino$nombre<br>\n"); 
 
          
// intentamos escalar la imagen original a la medida que nos interesa 
          
$ratio = ($datos[1] / $altura); 
          
$anchura round($datos[0] / $ratio); 
 
          
// esta será la nueva imagen reescalada 
          
$thumb imagecreatetruecolor($anchura,$altura); 
 
          
// con esta función la reescalamos 
          
imagecopyresampled ($thumb$img0000$anchura$altura$datos[0], $datos[1]); 
 
          
// voilà la salvamos con el nombre y en el lugar que nos interesa. 
          
imagejpeg($thumb,$camino.$dir_thumb.$prefijo_thumb.$nombre); 
     } 

Luego hay que llamar a la función mediante esta línea de código:

thumbjpeg($imagen, 125);

Pero, para ser honesto, no se dónde diantres debe ir en el formulario.

Agradeceré vuestra ayuda, nuevamente!

Gracias

Ok, listo!!

Resuelto el problema!!

Escarbando por aquí y por allá, recordé que tenía un sistema para subir y hacer miniaturas de las fotos.

Fue cosa de adaptar, cambiar parámetros y funciona como relojito!!

Formulario para publicar noticias con miniaturas de fotos y todo.

Bueno, todo este barullo ha sido para el enchuado del sistema de noticias de Roger, mejorado por otro usuario (DjMiki) y por quien escribe estas líneas. Luego estaré subiendo una demo y todo el script para que cualquiera puda usarlo a su regalado antojo.

El objetivo en mente ha sido generar una aplicación configurable por quien necesite de un mini-mini CMS, que puede ser adaptado a cualquier proyecto Web. Nunca está demás tener este tipo de soluciones a las cuales echar mano cuando tenemos que satisfacer vertiginosa y rápidamente los requerimientos de un cliente apurete (de ésos que no faltan que creen que todo esto es facilito, que hacer "paginitas Web" es cosa de nenes computines que con 2 ó 3 movidas de mouse, ya está listo el sitio). De hecho, ya lo estoy usando para un cliente.

Bien, ahora sigo con el formulario para editar/actualizar las noticias; espero que no me de guerra!! jajaja

Les aviso

Bye

Última edición por GatorV; 06/05/2009 a las 18:52
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:39.