Foros del Web » Programando para Internet » PHP »

multiples uploads - thumbnails

Estas en el tema de multiples uploads - thumbnails en el foro de PHP en Foros del Web. que tal, estoy intentando hacer un sistema de multiples uploads de imagenes y que a su vez genere de todas esas imagenes, sus respectivos thumbnails, ...
  #1 (permalink)  
Antiguo 27/04/2007, 12:06
 
Fecha de Ingreso: diciembre-2005
Ubicación: Mar del Plata
Mensajes: 146
Antigüedad: 18 años, 3 meses
Puntos: 2
multiples uploads - thumbnails

que tal,

estoy intentando hacer un sistema de multiples uploads de imagenes y que a su vez genere de todas esas imagenes, sus respectivos thumbnails,

los nombres de las imagenes que se suben deben ir a la base de datos, y los archivos directamente al servidor, pero la verdad es que no tengo idea como hacerlo, eh googleado bastante y no encontre la solucion, y por eso recurro al foro.

yo creo que lo mas complicado pasa por el lado de que una de las imagenes, tiene que tener un valor de alto*ancho y las restantes otro.

este es el codigo que tengo hasta ahora, pero claro, solo funcionaria con una sola imagen, y necesito que funcione con las 7 imagenes especificadas

espero que alguien me pueda ayudar,

Muchas gracias,

Cpuser

Código PHP:
<?php 
include("config.php");
include(
"mysql.php");
$titulo $_POST['titulo'];
$descripcion $_POST['descripcion'];
$fecha $_POST['fecha'];
$password $_POST['password'];
$imgcentral=$_FILES['imgcentral']['name'];
$muestra1=$_FILES['muestra1']['name'];
$muestra2=$_FILES['muestra2']['name'];
$muestra3=$_FILES['muestra3']['name'];
$muestra4=$_FILES['muestra4']['name'];
$muestra5=$_FILES['muestra5']['name'];
$muestra6=$_FILES['muestra6']['name'];

$tamanominimoancho=300;
function 
createThumb($image$newname,$tamanominimoancho){    
    
$size getimagesize ($image);
    
$tipoexif_imagetype($image);
    
$height $size[1];
    
$width $size[0];

        
    if (
$width $height) {
        
$newwidth $tamanominimoancho;
        
$newheight round(($height*$tamanominimoancho)/$width);
    } else {
        
$newheight $tamanominimoancho;
        
$newwidth round(($width*$tamanominimoancho)/$height);    
    }
switch(
$tipo){
case 
'2':
$src = @imagecreatefromjpeg($image) or die("problemas con la imagen $image"); 
break;
case 
'1':
$src = @imagecreatefromgif($image) or die("problemas con la imagen $image"); 
break;
case 
'3':
$src = @imagecreatefrompng($image) or die("problemas con la imagen $image"); 
break;
}        
    
    
$im imagecreatetruecolor($newwidth,$newheight);
    
imagecopyresampled($im,$src,0,0,0,0,$newwidth,$newheight,$width,$height);
    
//echo $newname;
    
imagejpeg($im$newname,50);
    
imagedestroy($im);
}
$ImagenNombre=$_FILES['imgcentral']['name'];
$dir "../imagenes/";
$dirmini "../imagenes/miniaturas/";

if (
$submit == "") { ?>
<form method="post" action="add_news.php" name="add_news">
<table width="477" cellspacing="3" cellpadding="0">
  <!--DWLayoutTable-->
<tr>
<td width="164" valign="top">
  <b>Titulo:</b></td>
<td colspan="2" valign="top">
  <input type="text" name="titulo" size="35"></td>
</tr>
<tr>
<td valign="top">
  <b>Fecha:</b></td>
<td colspan="2" valign="top">
  <input type="text" name="fecha" size="35"></td>
</tr>
<tr>
<td valign="top">
  <b>Descripcion:</b></td>
<td colspan="2" valign="top">
  <textarea name="descripcion" cols="35" rows="3"></textarea></td>
</tr>
<tr>
  <td valign="top">
    <b>Imagen central :</b></td>
<td colspan="2" valign="top">
  <input name="imgcentral" type="file" value="" size="35" /></td>
</tr>


<tr>
  <td valign="top">
    <input type="password" name="password" size="5"></td>
<td width="79" valign="top">
    <input type="submit" name="submit" value="Crear template"></td>
<td width="214"></td>
</tr>

<tr>
  <td></td>
  <td></td>
  <td></td>
</tr>
</table>
</form>
<?
}

$base_path "../imagenes/".$_FILES['imgcentral']['name'];

copy($_FILES['imgcentral']['tmp_name'], $base_path);
chmod ($base_path0644);

$image_path "../imagenes/" $_FILES['imgcentral']['name'];
createThumb($dir.$ImagenNombre$dirmini."mini_".$ImagenNombre,$tamanominimoancho);

if ((
$submit == "Crear template") && ($titulo != "") && ($fecha != "") && ($descripcion != "") && ($password == "$admin_pass") && ($imgcentral != "") && ($muestra1 != "") && ($muestra2 != "") && ($muestra3 != "") && ($muestra4 != "") && ($muestra5 != "") && ($muestra6 != "") ) {
echo 
"Ya puede utilizar su nuevo template";
mysql_query("INSERT INTO templates
(titulo, fecha, descrpcion, imgcentral, muestra1, muestra2, muestra3, muestra4, muestra5, muestra6) VALUES('$titulo', '$fecha', '$descripcion', '$imgcentral', '$muestra1', '$muestra2', '$muestra3', '$muestra4', '$muestra5', '$muestra6') "

or die(
mysql_error()); 
}
?>
  #2 (permalink)  
Antiguo 27/04/2007, 12:19
Avatar de el cirujano  
Fecha de Ingreso: mayo-2003
Ubicación: Frente al PC
Mensajes: 609
Antigüedad: 20 años, 10 meses
Puntos: 3
Re: multiples uploads - thumbnails

con este script yo subo de manera confiable varios archivos, ahorita estoy en el trabajo y por eso no te adapto lo de hacer los thumbs....

Código PHP:
$N 5//cantidad de archivos a subir
for($i=0$i<$N$i++) {

    if  (
is_uploaded_file($HTTP_POST_FILES['archivo']['tmp_name'][$i])) {
        
$no_doc $HTTP_POST_VARS['no_web_doc'][$i];
        
$split_path split("/"$HTTP_POST_FILES['archivo']['name'][$i]);

        
$split_path end ($split_path);

    if (
end($extension) == "php" || end($extension) == "php3") {

        echo 
"tipo de archivo invalido";

} else {

    
$RUTA_UPLOADED "../docs/";

        
$NOMBRE_FILE $split_path;
        
$archivosX[] = $split_path;

            
move_uploaded_file($HTTP_POST_FILES['archivo']['tmp_name'][$i], $RUTA_UPLOADED $NOMBRE_FILE);

$imgcentral $NOMBRE_FILE;

echo 
$sql mysql_query("INSERT INTO tabla VALUES('$titulo', '$fecha', '$descripcion', '$imgcentral', '$muestra1', '$muestra2', '$muestra3', '$muestra4', '$muestra5', '$muestra6') ");
}
}

__________________
CSS2 + AJAX + PHP + MySQL, una mezcla sin competencia!!!!!!
  #3 (permalink)  
Antiguo 27/04/2007, 12:28
 
Fecha de Ingreso: diciembre-2005
Ubicación: Mar del Plata
Mensajes: 146
Antigüedad: 18 años, 3 meses
Puntos: 2
Re: multiples uploads - thumbnails

muchisimas gracias, para cuando te liberes del laburo,

en el formulario de upload como tendria que especificar los nombres para que se suban correctamente?

gracias de nuevo :)
  #4 (permalink)  
Antiguo 27/04/2007, 12:35
Avatar de el cirujano  
Fecha de Ingreso: mayo-2003
Ubicación: Frente al PC
Mensajes: 609
Antigüedad: 20 años, 10 meses
Puntos: 3
Re: multiples uploads - thumbnails

se me habia olvidado ese y otro detalle....
<input type=file name=archivo[] class=botones>

y dentro de tu form debes indicarle que
<form enctype="multipart/form-data" action=nosetuarchivo.php>

y de pana, disculpa que lo olvide
__________________
CSS2 + AJAX + PHP + MySQL, una mezcla sin competencia!!!!!!
  #5 (permalink)  
Antiguo 27/04/2007, 12:51
 
Fecha de Ingreso: diciembre-2005
Ubicación: Mar del Plata
Mensajes: 146
Antigüedad: 18 años, 3 meses
Puntos: 2
Re: multiples uploads - thumbnails

siguiendo la logica esto seria asi?

<input type=file name=archivo[1] class=botones>
<input type=file name=archivo[2] class=botones>

o algo asi? para saber cual seria el archivo?
  #6 (permalink)  
Antiguo 27/04/2007, 13:43
Avatar de el cirujano  
Fecha de Ingreso: mayo-2003
Ubicación: Frente al PC
Mensajes: 609
Antigüedad: 20 años, 10 meses
Puntos: 3
Re: multiples uploads - thumbnails

no pana, siempre lo llamas igual, porque cuando comienza el upload se convierten los files en un array...
__________________
CSS2 + AJAX + PHP + MySQL, una mezcla sin competencia!!!!!!
  #7 (permalink)  
Antiguo 27/04/2007, 16:12
 
Fecha de Ingreso: diciembre-2005
Ubicación: Mar del Plata
Mensajes: 146
Antigüedad: 18 años, 3 meses
Puntos: 2
Re: multiples uploads - thumbnails

ah bueno :$ muchisimas gracias cirujano :)

queda pendiente lo de las thumbnails, si alguien me puede tirar alguna idea se lo agradeceria mucho :)


---

EDIT:


perdona mi ignorancia.. pero, una vez que se indican que archivos subir desde el formulario, los archivos se suben, pero tambien tendria que guardar el nombre del archivo en la BD, para eso yo cree estas variables:

Código PHP:
$imgcentral=$_FILES['imgcentral']['name'];
$muestra1=$_FILES['muestra1']['name'];
$muestra2=$_FILES['muestra2']['name'];
$muestra3=$_FILES['muestra3']['name'];
$muestra4=$_FILES['muestra4']['name'];
$muestra5=$_FILES['muestra5']['name'];
$muestra6=$_FILES['muestra6']['name'
y cuando subia mi archivo la especificaba

Código PHP:
copy($_FILES['imgcentral']['tmp_name'], $base_path);
chmod ($base_path0644);

$image_path "../imagenes/" $_FILES['imgcentral']['name']; 

en tu script, solo muestra una

Código PHP:
move_uploaded_file($HTTP_POST_FILES['archivo']['tmp_name'][$i], $RUTA_UPLOADED $NOMBRE_FILE); 
y como dijiste que se convertia en un array, esta "variable" iria creciendo de uno en uno? entonces yo en vez de llamar mis "variables" de ese modo tendria que llamarlas

archivo0
archivo1
archivo2
?

o directamente no llamo las variables de ningun modo y en la sentencia SQL escribo esto?

Código PHP:
echo $sql mysql_query("INSERT INTO tabla VALUES('$titulo', '$fecha', '$descripcion', '$archivo0', '$archivo1', '$archivo2, '$archivo3', '$archivo4', '$archivo5', '$archivo6') "); 
y obviamente mi base de datos las creo con esos nombres..

estoy en lo correcto? o nisiquiera me acerco?

espero que me puedas responder


Muchisimas gracias :)

Última edición por cpuser; 27/04/2007 a las 16:56
  #8 (permalink)  
Antiguo 28/04/2007, 10:43
 
Fecha de Ingreso: diciembre-2005
Ubicación: Mar del Plata
Mensajes: 146
Antigüedad: 18 años, 3 meses
Puntos: 2
Re: multiples uploads - thumbnails

asi he hecho mi codigo, pero no me sube las imagenes, me tira error al momento de pasarlas a la carpeta, aclaro que tiene los permisos 777...

Código PHP:
<?php 
include("bd.php");
include(
"conexion.php");
$titulo $_POST['titulo'];
$descripcion $_POST['descripcion'];
$fecha $_POST['fecha'];
$password $_POST['password'];
$muestra=$_FILES['muestra']['name'];
$muestra1=$_FILES['muestra1']['name'];
$muestra2=$_FILES['muestra2']['name'];
$muestra3=$_FILES['muestra3']['name'];
$muestra4=$_FILES['muestra4']['name'];
$muestra5=$_FILES['muestra5']['name'];
$muestra6=$_FILES['muestra6']['name'];

$tamanominimoancho=300;
function 
createThumb($image$newname,$tamanominimoancho){    
    
$size getimagesize ($image);
    
$tipoexif_imagetype($image);
    
$height $size[1];
    
$width $size[0];

        
    if (
$width $height) {
        
$newwidth $tamanominimoancho;
        
$newheight round(($height*$tamanominimoancho)/$width);
    } else {
        
$newheight $tamanominimoancho;
        
$newwidth round(($width*$tamanominimoancho)/$height);    
    }
switch(
$tipo){
case 
'2':
$src = @imagecreatefromjpeg($image) or die("problemas con la imagen $image"); 
break;
case 
'1':
$src = @imagecreatefromgif($image) or die("problemas con la imagen $image"); 
break;
case 
'3':
$src = @imagecreatefrompng($image) or die("problemas con la imagen $image"); 
break;
}        
    
    
$im imagecreatetruecolor($newwidth,$newheight);
    
imagecopyresampled($im,$src,0,0,0,0,$newwidth,$newheight,$width,$height);
    
//echo $newname;
    
imagejpeg($im$newname,50);
    
imagedestroy($im);
}
$ImagenNombre=$_FILES['muestra']['name'];
$ImagenNombre1=$_FILES['muestra1']['name'];
$ImagenNombre2=$_FILES['muestra2']['name'];
$ImagenNombre3=$_FILES['muestra3']['name'];
$ImagenNombre4=$_FILES['muestra4']['name'];
$ImagenNombre5=$_FILES['muestra5']['name'];
$ImagenNombre6=$_FILES['muestra6']['name'];
$ImagenNombre7=$_FILES['muestra7']['name'];
$dir "../imagenes/";
$dirmini "../imagenes/miniaturas/";

 
?>
<form enctype="multipart/form-data" name="add_news" method="post" action='add_news.php'>
<table width="477" cellspacing="3" cellpadding="0">
  <!--DWLayoutTable-->
<tr>
<td width="164" valign="top">
  <b>Titulo:</b></td>
<td colspan="2" valign="top">
  <input type="text" name="titulo" size="35"></td>
</tr>
<tr>
<td valign="top">
  <b>Fecha:</b></td>
<td colspan="2" valign="top">
  <input type="text" name="fecha" size="35"></td>
</tr>
<tr>
<td valign="top">
  <b>Descripcion:</b></td>
<td colspan="2" valign="top">
  <textarea name="descripcion" cols="35" rows="3"></textarea></td>
</tr>
<tr>
  <td valign="top">
    <b>Imagen central :</b></td>
<td colspan="2" valign="top">
 
  <input type="file" name="muestra[]" size="35" /></td>
</tr>
<tr>
  <td valign="top">
    <b>Muestra 1  :</b></td>
  <td colspan="2" valign="top">
 
  <input type="file" name="muestra[]" size="35" /></td>
</tr>
<tr>
  <td valign="top"><b>Muestra 2  :</b></td>
  <td colspan="2" valign="top">
 
  <input type="file" name="muestra[]" size="35" /></td>
</tr>
<tr>
  <td valign="top"><b>Muestra 3  :</b></td>
  <td colspan="2" valign="top">
 
  <input type="file" name="muestra[]" size="35" /></td>
</tr>
<tr>
  <td valign="top"><b>Muestra 4  :</b></td>
  <td colspan="2" valign="top">
 
  <input type="file" name="muestra[]" size="35" /></td>
</tr>
<tr>
  <td valign="top"><b>Muestra 5  :</b></td>
  <td colspan="2" valign="top">
 
  <input type="file" name="muestra[]" size="35" /></td>
</tr>
<tr>
  <td valign="top"><b>Muestra 6  :</b></td>
  <td colspan="2" valign="top">
 
  <input type="file" name="muestra[]" size="35" /></td>
</tr>


<tr>
  <td valign="top">
    <input type="password" name="password" size="5"></td>
<td width="79" valign="top">
    <input type="submit" name="submit" value="Crear template"></td>
<td width="214"></td>
</tr>

<tr>
  <td></td>
  <td></td>
  <td></td>
</tr>
</table>
</form>
<?php


$N 
7//cantidad de archivos a subir
for($i=0$i<$N$i++) {

    if  (
is_uploaded_file($HTTP_POST_FILES['muestra']['tmp_name'][$i])) {
        
$no_doc $HTTP_POST_VARS['no_web_doc'][$i];
        
$split_path split("/"$HTTP_POST_FILES['muestra']['name'][$i]);

        
$split_path end ($split_path);

    if (
end($extension) == "jpeg" || end($extension) == "png") {

        echo 
"tipo de archivo invalido";

} else {

    
$RUTA_UPLOADED "../imagenes/";

        
$NOMBRE_FILE $split_path;
        
$muestraX[] = $split_path;

            
move_uploaded_file($HTTP_POST_FILES['muestra']['tmp_name'][$i], $RUTA_UPLOADED $NOMBRE_FILE);

$muestra $NOMBRE_FILE;


mysql_query("INSERT INTO templates
(titulo, fecha, descrpcion, muestra, muestra1, muestra2, muestra3, muestra4, muestra5, muestra6) VALUES('$titulo', '$fecha', '$descripcion', '$muestra', '$muestra1', '$muestra2', '$muestra3', '$muestra4', '$muestra5', '$muestra6') "

or die(
mysql_error());  
}
}
}
?>

nisiquiera me ingresa los demas datos a la base diciendome que la sentencia sql falla, probe con 2 o 3 maneras distintas de poner la sentencia y no me sube los datos tampoco...
  #9 (permalink)  
Antiguo 28/04/2007, 18:40
Avatar de el cirujano  
Fecha de Ingreso: mayo-2003
Ubicación: Frente al PC
Mensajes: 609
Antigüedad: 20 años, 10 meses
Puntos: 3
Re: multiples uploads - thumbnails

Concideraciones:

.- En tu Script en la parte HTML solo estas solicitando 1 sola imagen llamada "Imagen central (imgcentral)", osea, solo estas subiendo 1 sola imagen....

.- No se si es que quieres meter los nombre de imagenes en la misma linea (row) de la tabla "templates" o si será 1 linea (row) por cada imagen....

archivo formulario.php o html es indiferente
Código PHP:
<form method="post" action="upload.php" name="add_news" enctype="multipart/form-data">
<
table width="477" cellspacing="3" cellpadding="0">
  <!--
DWLayoutTable-->
<
tr>
<
td width="164" valign="top">
  <
b>Titulo:</b></td>
<
td colspan="2" valign="top">
  <
input type="text" name="titulo" size="35"></td>
</
tr>
<
tr>
<
td valign="top">
  <
b>Fecha:</b></td>
<
td colspan="2" valign="top">
  <
input type="text" name="fecha" size="35"></td>
</
tr>
<
tr>
<
td valign="top">
  <
b>Descripcion:</b></td>
<
td colspan="2" valign="top">
  <
textarea name="descripcion" cols="35" rows="3"></textarea></td>
</
tr>
<
tr>
  <
td valign="top">
    <
b>Imagen central :</b></td>
<
td colspan="2" valign="top">
  <
input name="imgcentral[]" type="file" value="" size="35" /></td>
</
tr>
<
tr>
  <
td valign="top">
    <
b>Imagen central :</b></td>
<
td colspan="2" valign="top">
  <
input name="imgcentral[]" type="file" value="" size="35" /></td>
</
tr>
<
tr>
  <
td valign="top">
    <
b>Imagen central :</b></td>
<
td colspan="2" valign="top">
  <
input name="imgcentral[]" type="file" value="" size="35" /></td>
</
tr>
<
tr>
  <
td valign="top">
    <
b>Imagen central :</b></td>
<
td colspan="2" valign="top">
  <
input name="imgcentral[]" type="file" value="" size="35" /></td>
</
tr>
<
tr>
  <
td valign="top">
    <
b>Imagen central :</b></td>
<
td colspan="2" valign="top">
  <
input name="imgcentral[]" type="file" value="" size="35" /></td>
</
tr>
<
tr>
  <
td valign="top">
    <
b>Imagen central :</b></td>
<
td colspan="2" valign="top">
  <
input name="imgcentral[]" type="file" value="" size="35" /></td>
</
tr>
<
tr>
  <
td valign="top">
    <
b>Imagen central :</b></td>
<
td colspan="2" valign="top">
  <
input name="imgcentral[]" type="file" value="" size="35" /></td>
</
tr>
<
input type=hidden name=cantidad_de_imagenes value=7>

<
tr>
  <
td valign="top">
    <
input type="password" name="password" size="5"></td>
<
td width="79" valign="top">
    <
input type="submit" name="submit" value="Crear template"></td>
<
td width="214"></td>
</
tr>

<
tr>
  <
td></td>
  <
td></td>
  <
td></td>
</
tr>
</
table>
</
form
archivo upload.php
Código PHP:
<?
include("config.php");
include(
"mysql.php");
function 
createThumb($image$newname,$tamanominimoancho)
                                {
                                    
$size getimagesize ($image);
                                    
$tipoexif_imagetype($image);
                                    
$height $size[1];
                                    
$width $size[0];
                                        if (
$width $height)
                                            {
                                                
$newwidth $tamanominimoancho;
                                                
$newheight round(($height*$tamanominimoancho)/$width);
                                            }
                                            else
                                            {
                                                
$newheight $tamanominimoancho;
                                                
$newwidth round(($width*$tamanominimoancho)/$height);
                                            }
                                switch(
$tipo)
                                    {
                                        case 
'2':
                                        
$src = @imagecreatefromjpeg($image) or die("problemas con la imagen $image");
                                        break;
                                        case 
'1':
                                        
$src = @imagecreatefromgif($image) or die("problemas con la imagen $image");
                                        break;
                                        case 
'3':
                                        
$src = @imagecreatefrompng($image) or die("problemas con la imagen $image");
                                        break;
                                    }
                                    
$im imagecreatetruecolor($newwidth,$newheight);
                                    
imagecopyresampled($im,$src,0,0,0,0,$newwidth,$newheight,$width,$height);
                                    
//echo $newname;
                                    
imagejpeg($im$newname,50);
                                    
imagedestroy($im);
                                }
$N $_POST[cantidad_de_imagenes]; //cantidad de archivos a subir
for($i=0$i<$N$i++)
    {
        if  (
is_uploaded_file($HTTP_POST_FILES['imgcentral']['tmp_name'][$i]))
            {
                
$no_doc $HTTP_POST_VARS['no_web_doc'][$i];
                
$split_path split("/"$HTTP_POST_FILES['imgcentral']['name'][$i]);
                
$split_path end ($split_path);
                
$tamanominimoancho=300;
                            
                if (
end($extension) == "php" || end($extension) == "php3")
                        {
                            echo 
"tipo de archivo invalido";
                        }
                        else
                        {
                        
                            
// solicitud de datos
                            
$titulo $_POST['titulo'];
                            
$descripcion $_POST['descripcion'];
                            
$fecha $_POST['fecha'];
                            
$password $_POST['password'];
                            
// Procesa el subir la imagen
                            
$RUTA_UPLOADED "./imagenes/";
                            
$dirmini "./imagenes/miniaturas/";
                            
$NOMBRE_FILE $split_path;
                            
move_uploaded_file($HTTP_POST_FILES['imgcentral']['tmp_name'][$i], $RUTA_UPLOADED $NOMBRE_FILE);
                            
createThumb($RUTA_UPLOADED.$NOMBRE_FILE$dirmini."mini_".$NOMBRE_FILE,$tamanominimoancho);
                            
$imgcentral $NOMBRE_FILE;
                            
//graba en la Base de datos
                            
$sql mysql_query("INSERT INTO tabla VALUES('$titulo', '$fecha', '$descripcion', '$imgcentral') "); //elimine campos que son innecesarios ya que con colocarle mini_ $mini_imgcentral puedes obtener el nombre de las imagenes
                        
}
            }
    }
?>
ahora, este script te sube 7 imagenes perfectamente a la ruta /imagenes/ y hace las thumbs automaicamente
__________________
CSS2 + AJAX + PHP + MySQL, una mezcla sin competencia!!!!!!
  #10 (permalink)  
Antiguo 29/04/2007, 10:39
 
Fecha de Ingreso: diciembre-2005
Ubicación: Mar del Plata
Mensajes: 146
Antigüedad: 18 años, 3 meses
Puntos: 2
Re: multiples uploads - thumbnails

ohh muchisimas gracias cirujano!

ahora probare el codigo y te cuento que tal :)


edit:

oh, me tira este error

Código:
Warning: end() [function.end]: Passed variable is not an array or object in /home/cpuser/public_html/juanp/upload.php on line 48
la linea 48 sera esta:

Código PHP:
if (end($extension) == "php" || end($extension) == "php3"

lo bueno es que las imagenes estan alojadas en el servidor, en sus respectivas carpetas, y se han creado los thumbnails, nose porque sera el error ese :/

y lo que eh notado es que los nombres de los archivos que subo no van a parar a la base de datos... y yo necesitaria que en una sola fila de la tabla me guarde todos los datos:

titulo
fecha
descripcion
y las 7 imagenes (por ejem: imagen - imagen1 - imagen2......)

para despues poder replicar los nombres desde ahi...

Última edición por cpuser; 29/04/2007 a las 11:47
  #11 (permalink)  
Antiguo 29/04/2007, 12:03
Avatar de el cirujano  
Fecha de Ingreso: mayo-2003
Ubicación: Frente al PC
Mensajes: 609
Antigüedad: 20 años, 10 meses
Puntos: 3
Re: multiples uploads - thumbnails

ok entonces el INSERT sacalo de donde lo puse y bajalo a donde esta el ?>, y cuando llames a cada imagen lo scas como variable asi:

Código PHP:
 createThumb($RUTA_UPLOADED.$NOMBRE_FILE$dirmini."mini_".$NOMBRE_FILE,$tamanominimoancho);
                            
$imgcentral $NOMBRE_FILE;
                        }
            }
    }

                            
//graba en la Base de datos
                            
$sql mysql_query("INSERT INTO tabla VALUES('$titulo', '$fecha', '$descripcion', '$imgcentral[0]', '$imgcentral[1]') ");
// y asi sucesivamente
//elimine campos que son innecesarios ya que con colocarle mini_ $mini_imgcentral puedes obtener el nombre de las imagenes
?> 
__________________
CSS2 + AJAX + PHP + MySQL, una mezcla sin competencia!!!!!!
  #12 (permalink)  
Antiguo 30/04/2007, 07:38
Avatar de el cirujano  
Fecha de Ingreso: mayo-2003
Ubicación: Frente al PC
Mensajes: 609
Antigüedad: 20 años, 10 meses
Puntos: 3
Re: multiples uploads - thumbnails

tienes razon, me dio error, lo que le falta encima de ese IF es:
Código PHP:
$extension split("[/.]"$split_path); 
__________________
CSS2 + AJAX + PHP + MySQL, una mezcla sin competencia!!!!!!
  #13 (permalink)  
Antiguo 30/04/2007, 12:29
 
Fecha de Ingreso: diciembre-2005
Ubicación: Mar del Plata
Mensajes: 146
Antigüedad: 18 años, 3 meses
Puntos: 2
Re: multiples uploads - thumbnails

a ver voy a probar, eso que me dijiste de agregar a las variables de consulta el [] me dice que hay un error en la sintaxis de sql..

ejemplo:
'$imgcentral[1]'

asi que nose que hacer con eso... porque seria lo mas util del script...

Código PHP:
mysql_query("INSERT INTO templates
(titulo, fecha, descripcion, muestra[0], muestra[1], muestra[2], muestra[3], muestra[4], muestra[5], muestra[6]) VALUES('$titulo', '$fecha', '$descripcion', '$muestra[0]', '$muestra[1]', '$muestra[2]', '$muestra[3]', '$muestra[4]', '$muestra[5]', '$muestra[6]') "

or die(
mysql_error()); 
Código:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '[0], muestra[1], muestra[2], muestra[3], muestra[4], muestra[5], muestra[6]) VAL' at line 2
la verdad ni idea como hacer...
porque si le saco los [] nisiquiera me pone los nombres en la base de datos... =(

Última edición por cpuser; 30/04/2007 a las 13:39
  #14 (permalink)  
Antiguo 02/05/2007, 18:59
 
Fecha de Ingreso: diciembre-2005
Ubicación: Mar del Plata
Mensajes: 146
Antigüedad: 18 años, 3 meses
Puntos: 2
Re: multiples uploads - thumbnails

alguna solucion??
  #15 (permalink)  
Antiguo 02/05/2007, 21:09
 
Fecha de Ingreso: febrero-2002
Mensajes: 442
Antigüedad: 22 años, 1 mes
Puntos: 2
Re: multiples uploads - thumbnails

Mostranos la estructura de la tabla "templates". Los campos se llaman asi muestra[0], muestra[1], ???? que raro.
bueno.. tiranos la estructura.. saludos.
__________________
tech-nico.com
  #16 (permalink)  
Antiguo 03/05/2007, 16:17
 
Fecha de Ingreso: diciembre-2005
Ubicación: Mar del Plata
Mensajes: 146
Antigüedad: 18 años, 3 meses
Puntos: 2
Re: multiples uploads - thumbnails

Código PHP:

`idint(11NOT NULL auto_increment,
  `
fechadate NOT NULL default '0000-00-00',
  `
titulovarchar(100NOT NULL default '',
  `
descripcionvarchar(100NOT NULL default '',
  `
muestra[0]varchar(100NOT NULL default '',
  `
muestra[1]varchar(100NOT NULL default '',
  `
muestra[2]varchar(100NOT NULL default '',
  `
muestra[3]varchar(100NOT NULL default '',
  `
muestra[4]varchar(100NOT NULL default '',
  `
muestra[5]varchar(100NOT NULL default '',
  `
muestra[6]varchar(100NOT NULL default ''
aca esta, supuestamente esta todo bien
  #17 (permalink)  
Antiguo 08/05/2007, 14:29
 
Fecha de Ingreso: diciembre-2005
Ubicación: Mar del Plata
Mensajes: 146
Antigüedad: 18 años, 3 meses
Puntos: 2
Re: multiples uploads - thumbnails

... sigo sin poder solucionar el problema
  #18 (permalink)  
Antiguo 08/05/2007, 14:37
Avatar de el cirujano  
Fecha de Ingreso: mayo-2003
Ubicación: Frente al PC
Mensajes: 609
Antigüedad: 20 años, 10 meses
Puntos: 3
Re: multiples uploads - thumbnails

a ver... ese es tu estructura de datos?

los campos no pueden ser nombre[1] porque las [] te crearan conflictos...
cuando te indique que usaras las [] era para extraer los valores de las imagenes no para que llamaras tus campos asi...

Código PHP:
`idint(11NOT NULL auto_increment,
  `
fechadate NOT NULL default '0000-00-00',
  `
titulovarchar(100NOT NULL default '',
  `
descripcionvarchar(100NOT NULL default '',
  `
muestra0varchar(100NOT NULL default '',
  `
muestra1varchar(100NOT NULL default '',
  `
muestra2varchar(100NOT NULL default '',
  `
muestra3varchar(100NOT NULL default '',
  `
muestra4varchar(100NOT NULL default '',
  `
muestra5varchar(100NOT NULL default '',
  `
muestra6varchar(100NOT NULL default ''
tu Script para ingresar los datos a la BD debe ser asi:

Código PHP:
$sql mysql_query("INSERT INTO tabla VALUES('$titulo', '$fecha', '$descripcion', '".$archivo[0]."', '".$archivo[1]."', '".$archivo[2]."', '".$archivo[3]."', '".$archivo[4]."', '".$archivo[5]."', '".$archivo[6]."') "); 
__________________
CSS2 + AJAX + PHP + MySQL, una mezcla sin competencia!!!!!!
  #19 (permalink)  
Antiguo 08/05/2007, 17:52
 
Fecha de Ingreso: diciembre-2005
Ubicación: Mar del Plata
Mensajes: 146
Antigüedad: 18 años, 3 meses
Puntos: 2
Re: multiples uploads - thumbnails

a ver voy a probar asi, muchas gracias cirujano
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 12:30.