Foros del Web » Programando para Internet » PHP »

problema al insertar imagen

Estas en el tema de problema al insertar imagen en el foro de PHP en Foros del Web. hola a todos, tengo el sgte script para subir imagenes al servidor Código PHP: $name  =  $_FILES [ "archivo" ][ "name" ];      $temporal  =  ...
  #1 (permalink)  
Antiguo 18/07/2005, 13:42
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 2 meses
Puntos: 0
Exclamación problema al insertar imagen

hola a todos, tengo el sgte script para subir imagenes al servidor

Código PHP:
$name $_FILES["archivo"]["name"];
    
$temporal $_FILES["archivo"]["tmp_name"];
    
$size $_FILES["archivo"]["size"];
    
$lim_tamano "500000"#500k maximo
    
$folder "fotos/"#cambia el nombre de la carpeta aqui
    
if ($size<=$lim_tamano){
    if(!
move_uploaded_file($temporal,$folder.$name))  {
    }   
    else {
    
$ruta "$folder$name";
    
$cumpleanos "$cumpleanos";
    
$db = New DB_SQL;
    
$stmt "INSERT INTO contactos (idUsuario, nombre, apellido, telefono, direccion, email1, email2, empresa, cumpleanos, Ruta, Archivo) VALUES ('$idAuth', '$nombre', '$apellido', '$telefono', '$direccion', '$email1', '$email2', '$empresa', '$cumpleanos', '$ruta', '$name')";
    
$db->query($stmt);
    
header("Location: index.php?accion=miscontactos");
    }
    } 
pero si el usuario no sube imagenes, no me inserta los campo en la BD, com puedo hacer para que no sea necesario subir la imagen o mejor aun para subir una imagen automaticamente.


saludos
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
  #2 (permalink)  
Antiguo 19/07/2005, 07:31
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 2 meses
Puntos: 0
nadie sabe?
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
  #3 (permalink)  
Antiguo 19/07/2005, 07:51
Avatar de abe_k  
Fecha de Ingreso: diciembre-2004
Mensajes: 286
Antigüedad: 19 años, 4 meses
Puntos: 2
Un problemilla que veo en tu codigo SQL-> los VALUES que son enteros (como el id) van sin comillas.

Si tu quieres hacer referencia de imagenes en la base de datos, debes tener la imagenes en el servidor y, por lo tanto subirlas y guardar el path en la BBDD.

No entiendo tu comentario de subir imagenes automaticamente. Solo conozco esta forma (la que has escrito) de subir imagenes/archivos en php.
__________________
abe_k

Si quieres visitar Andorra, consulta la guia de este pequeño pais y conseguiras toda la información que necesites. La guia del visitante en Andorra
  #4 (permalink)  
Antiguo 19/07/2005, 08:30
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 2 meses
Puntos: 0
me explico mejor, el usuario se registra y si quiere sube una imagen o no?
si el usuario no sube un imagen, queda el cuadrado chico con la X roja, en mi caso, no hace nada, solo me da el echo que puse que dice "no se pudo". existe alguna forma de hacer que si no suben una imagen se suba una que esta el servidor y su path esta en la BD????

porfavor ideas
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
  #5 (permalink)  
Antiguo 21/07/2005, 08:34
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 2 meses
Puntos: 0
De acuerdo la respuesta es....

bueno esta solucionado xD, la respuesta era como logica pero bueno aca esta el codigo para que alguien mas lo use

subir.htm
Código HTML:
<form action="ingresar.php" method="post" enctype="multipart/form-data" name="formcc" id="formcc">
<input type="hidden" name="accion" id="accion" value="addContacto">
<input type="hidden" name="idContacto" id="idContacto" value="{IDCONTACTO}">
<table border="0">
<tr>
  <td colspan="3"><div align="center">
    <img src="{FOTO}"></div></td>
  </tr>
<tr>
  <td><div align="right"><span class="tam2">Nombre</span></div></td>
  <td>&nbsp;</td>
  <td><input name="nombre" type="text" id="nombre" class="t_n" value="{NOMBRE}"></td>
</tr>
<tr>
<td><div align="right" class="tam2">Apellido</div></td>
<td>&nbsp;</td>
<td><div align="left">
            <input name="apellido" type="text" value="{APELLIDO}" id="apellido" class="t_n">
</div></td>
</tr>
<tr>
<td><div align="right" class="tam2">Teléfono</div></td>
<td>&nbsp;</td>
<td><div align="left">
            <input name="telefono" type="text" value="{TELEFONO}" id="telefono" class="t_n">
</div></td>
</tr>
<tr>
<td><div align="right" class="tam2">Dirección</div></td>
<td>&nbsp;</td>
<td><div align="left">
            <input name="direccion" type="text" value="{DIRECCION}" id="direccion" class="t_n">
</div></td>
</tr>
<tr>
<td><div align="right" class="tam2">Email 1 </div></td>
<td>&nbsp;</td>
<td><div align="left">
            <input name="email1" type="text" value="{EMAIL1}" id="email1" class="t_n">
</div></td>
</tr>
<tr>
<td><div align="right" class="tam2">Email 2 </div></td>
<td>&nbsp;</td>
<td><div align="left">
            <input name="email2" type="text" value="{EMAIL2}" id="email2" class="t_n">
</div></td>
</tr>
<tr>
<td><div align="right" class="tam2">Empresa</div></td>
<td>&nbsp;</td>
<td><div align="left">
            <input name="empresa" type="text" value="{EMPRESA}" id="empresa" class="t_n">
</div></td>
</tr>
<tr>
<td><div align="right" class="tam2">Cumpleaños</div></td>
<td>&nbsp;</td>
<td><div align="left">
            <input name="cumpleanos" type="text" value="{CUM}" id="cumpleanos" class="t_n" >
</div></td>
</tr>
<tr>
  <td><div align="right">ej.:</div></td>
  <td>&nbsp;</td>
  <td>AAAA-MM-DD</td>
</tr>
<tr>
  <td colspan="3"><div align="center">
    <INPUT type="hidden" name="lim_tamano" value="500000"> 
    <input name="archivo" type="file" class="t_n">
  </div></td>
  </tr>
<tr>
<td colspan="3"><div align="left">
            <input name="checkbox2" type="checkbox" value="checkbox" class="t_n_blanco">
    Recordarme su cumpleaños</div></td>
</tr>
<tr>
  <td colspan="3">&nbsp;</td>
</tr>
<tr>
<td colspan="3"><div align="center">
            <input type="button" name="buttonagregar" value="Guardar" class="t_n" onclick="agregar_contacto()">
            <input type="button" name="buttonborrar" value="Borrar" class="t_n" onclick="eliminar_contacto()">
</div></td>
</tr>
</table>
</form> 
ingresar.php
Código PHP:
    $name $_FILES["archivo"]["name"];
    
$temporal $_FILES["archivo"]["tmp_name"];
    
$size $_FILES["archivo"]["size"];
    
$lim_tamano "500000"#500k maximo
    
$folder "fotos/"#cambia el nombre de la carpeta aqui
    
if ($size<=$lim_tamano)
    {
   
$servidor="localhost";
   
$usuario="meuno";
   
$password="robe12345";
   
$base="meuno";
   
$SQLid mysql_connect($servidor,$usuario,$password);
   
mysql_select_db($base,$SQLid);
   
$SQLquery "SELECT Ruta FROM contactos WHERE idContacto = '59'";
   
$SQLresult mysql_query($SQLquery,$SQLid);
   
$SQLrow mysql_fetch_array($SQLresult);
   
$name $SQLrow[0];
    
    
$upload move_uploaded_file($temporal,$folder.$name);
    if(!
$upload){
    
$ruta "$folder$name";
    
$cumpleanos "$cumpleanos";
    
$db = New DB_SQL;
    
$stmt "INSERT INTO contactos (idUsuario, nombre, apellido, telefono, direccion, email1, email2, empresa, cumpleanos, Ruta, Archivo) VALUES ('$idAuth', '$nombre', '$apellido', '$telefono', '$direccion', '$email1', '$email2', '$empresa', '$cumpleanos', '$SQLrow[0]', '$name')";
    
$db->query($stmt);
    
header("Location: index.php?accion=miscontactos");
     }  
    else {
    
$ruta "$folder$name";
    
$cumpleanos "$cumpleanos";
    
$db = New DB_SQL;
    
$stmt "INSERT INTO contactos (idUsuario, nombre, apellido, telefono, direccion, email1, email2, empresa, cumpleanos, Ruta, Archivo) VALUES ('$idAuth', '$nombre', '$apellido', '$telefono', '$direccion', '$email1', '$email2', '$empresa', '$cumpleanos', '$ruta', '$name')";
    
$db->query($stmt);
    
header("Location: index.php?accion=miscontactos");
    }
    } 


saludos
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
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 09:16.