Foros del Web » Programando para Internet » PHP »

Problema al subir iMAGEN A la DB

Estas en el tema de Problema al subir iMAGEN A la DB en el foro de PHP en Foros del Web. Antes de exponer mi problema aclaro 2 cosas: 1.Ya lei los FAQS y me base en el tutorial de Cluster pero me arroja un error. ...
  #1 (permalink)  
Antiguo 28/01/2005, 13:10
 
Fecha de Ingreso: enero-2004
Mensajes: 431
Antigüedad: 13 años, 10 meses
Puntos: 6
Problema al subir iMAGEN A la DB

Antes de exponer mi problema aclaro 2 cosas:
1.Ya lei los FAQS y me base en el tutorial de Cluster pero me arroja un error.
2.Este tema es "repetido" debido a que siento que el pasado ya es ignorado.

Ahora despues de estas aclaraciones creo que dire mi problema.

Tengo un script que se supone que debe insertar los valores en una base de datos MySQL e insertar una imagen pero al parecer algo esta mal y la verdad es que ya le he buscado de todo y no veo el problema.

el error que arroja es el siguiente:

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 'desc,tel,ext1,usuario) VALUES ('','NISSAN','Altima','1995','520

El codigo que tengo es el siguiente:
Código PHP:
<?
include("ident.php");//identifica que esten registrados y logueados
if($loginCorrecto) { 
include(
"conex.php");//conecta con MYSQL
include("inc/func.inc");//algunas funciones de seguridad como quitar()
$ext $_FILES['img1']['type']; 
$img_temp $_FILES['img1']['tmp_name']; 
$img1 addslashes(fread(fopen($img_temp"r"), filesize($img_temp))); 
if(
$ext == "image/pjpeg") {
    
$ext1 "jpg";
} elseif(
$ext == "image/gif") {
    
$ext1="gif";

else {
    
?>
<SCRIPT LANGUAGE="JavaScript">
<!--
alert('El formato de la imagen no es correcto asegurese de que sea JPG o GIF');
history.go(-1);
//-->
</SCRIPT>
<?
        
exit;
    } 

$marca quitar($_POST["marca"]);
$modelo quitar($_POST["modelo"]);
$año quitar($_POST["ano"]);
$precio quitar($_POST["precio"]);
$moneda quitar($_POST["moneda"]);
$desc quitar($_POST["desc"]);
$tel quitar($_POST["tel"]);
$usr $_COOKIE["ususuario"];


$sql "INSERT INTO anuncios (id,marca,modelo,ano,precio,moneda,img1,desc,tel,ext1,usuario) VALUES ('','$marca','$modelo','$año','$precio','$moneda','$img1','$desc','$tel','$ext1','$usr')"
mysql_query($sql,$con) or die(mysql_error());

?>
<SCRIPT LANGUAGE="JavaScript">
<!--
alert('Su anuncio ha sido publicado exitosamente.\nLe deseamos buena suerte con su venta.\nNo olvide que al vender su carro debera entrar a su cuenta y borrar el anuncio de lo contrario el anuncio permanecera ahi y sus datos estaran disponibles para todos.\nwww.autotijuana.com');
location.href="index.php";
//-->
</SCRIPT>
<?
} else { 
    
?>
        <p align="center"><b><font face="Verdana" size="1">Esta area es solo para 
usuarios registrados.</font></b></p><center><form method="post" action="ingresar.php">
<table border="0" width="346" height="79">
    <tr>
        <td height="23" width="95" align="right"><font face="Verdana" size="1">
        Usuario:</font></td>
        <td height="23" width="240"><input type="text" name="usuario" size="20" class="txt"></td>
    </tr>
    <tr>
        <td height="23" width="95" align="right"><font face="Verdana" size="1">
        Contraseña:</font></td>
        <td height="23" width="240">
        <input type="password" name="password" size="20" class="txt"></td>
    </tr>
    <tr>
        <td height="23" width="96">&nbsp;</td>
        <td height="23" width="240">
        <input type="submit" value="Login" name="submit" class="boton"></td>
    </tr>
</table>
<p style="margin-top: 0; margin-bottom: 0"><font face="Verdana" size="1">
<a href="index.php?modo=recuperarpass">¿Contraseña perdida?</a></font></p>
<p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
<p style="margin-top: 0; margin-bottom: 0"><font face="Verdana" size="1">
<a href="index.php?modo=registro">Si no estas registrado haz click aqui para 
registrarte GRATUITAMENTE</a></font></p>
</form>
</center>
<?
}
    
?>

Espero que alguien me ayude y pido disculpas si no es permitido repetir post pero el otro lo ignoraban y realmente necesito ayuda
__________________
El que teme preguntar, se averguenza de aprender.
  #2 (permalink)  
Antiguo 28/01/2005, 13:22
Avatar de lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 16 años, 4 meses
Puntos: 9
el ext1 se parece al de la tabla que estás manejando???
  #3 (permalink)  
Antiguo 28/01/2005, 13:23
 
Fecha de Ingreso: enero-2004
Mensajes: 431
Antigüedad: 13 años, 10 meses
Puntos: 6
$ext1 es un char(3)
a eso te refieres?
__________________
El que teme preguntar, se averguenza de aprender.
  #4 (permalink)  
Antiguo 28/01/2005, 13:28
Avatar de lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 16 años, 4 meses
Puntos: 9
ahh pues entonces, quita el espacio de ext1 que se encuentra en el INSERT, obviamente, antes de VALUES. Ya que te anda provocando eso el error de síntaxis.
  #5 (permalink)  
Antiguo 28/01/2005, 13:30
 
Fecha de Ingreso: enero-2004
Mensajes: 431
Antigüedad: 13 años, 10 meses
Puntos: 6
no el espacio no lo tiene en el codigo no se por que sale en el post :S
__________________
El que teme preguntar, se averguenza de aprender.
  #6 (permalink)  
Antiguo 28/01/2005, 13:39
Avatar de lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 16 años, 4 meses
Puntos: 9
Posiblemente una celda de tu tabla no corresponde a tu condición, observando bien aclaro.

Muestra el código SQL de tu tabla para ver que tiene, nomás la tabla, pero no sus valores.
  #7 (permalink)  
Antiguo 28/01/2005, 14:10
Avatar de FuLaNo_  
Fecha de Ingreso: mayo-2003
Ubicación: Don Torcuato, Buenos Aires, Argentina
Mensajes: 1.250
Antigüedad: 14 años, 6 meses
Puntos: 2
Perdon, este no es el error ni nada, pero porque tienes: image/pjpeg?? no tendria que ser jpeg??

Perdon por la ignorancia
__________________
I Love Programming...
  #8 (permalink)  
Antiguo 28/01/2005, 14:29
 
Fecha de Ingreso: enero-2004
Mensajes: 431
Antigüedad: 13 años, 10 meses
Puntos: 6
bueno hice la prueba con un script tipo:

<? echo $_FILES['img1']['type']; ?>
y con las imagenes JPG me imprimia image/pjpeg
y con las gif image/gif

por eso llegue a la conclusion de que es image/pjpeg
__________________
El que teme preguntar, se averguenza de aprender.
  #9 (permalink)  
Antiguo 28/01/2005, 16:11
Avatar de FuLaNo_  
Fecha de Ingreso: mayo-2003
Ubicación: Don Torcuato, Buenos Aires, Argentina
Mensajes: 1.250
Antigüedad: 14 años, 6 meses
Puntos: 2
es que yo uso image/jpeg (creo, ahora me fijo bien) para las cabezeras y para recibir las imagenes y funciona correctamente, no se que sera la P del pjpeg... por eso pregunte =P
__________________
I Love Programming...
  #10 (permalink)  
Antiguo 28/01/2005, 16:35
 
Fecha de Ingreso: febrero-2004
Mensajes: 221
Antigüedad: 13 años, 9 meses
Puntos: 0
http://www.google.com/search?hl=es&q=image%2Fpjpeg
  #11 (permalink)  
Antiguo 28/01/2005, 21:50
 
Fecha de Ingreso: enero-2004
Mensajes: 431
Antigüedad: 13 años, 10 meses
Puntos: 6
ok alguna idea sobre mi problema inicial?
__________________
El que teme preguntar, se averguenza de aprender.
  #12 (permalink)  
Antiguo 28/01/2005, 22:11
Avatar de xknown  
Fecha de Ingreso: diciembre-2004
Ubicación: Cusco - Perú
Mensajes: 2.248
Antigüedad: 13 años
Puntos: 7
En la sentencia sql que estás ejecutando existe desc, esto se interpreta como si estarías haciendo algo como esto "order by campo desc", prueba cambiando lo siguiente (nota el cambio en los apóstrofos invertidos - `desc`):
Código PHP:
$sql "INSERT INTO anuncios (id,marca,modelo,ano,precio,moneda,img1,`desc`,tel,e  xt1,usuario) VALUES ('','$marca','$modelo','$año','$precio','$moneda',  '$img1','$desc','$tel','$ext1','$usr')";
mysql_query($sql,$con) or die(mysql_error()); 
Saludos
__________________
Alex Concha
Buayacorp - Programación y Diseño
  #13 (permalink)  
Antiguo 28/01/2005, 22:24
 
Fecha de Ingreso: enero-2004
Mensajes: 431
Antigüedad: 13 años, 10 meses
Puntos: 6
Muchas gracias xknow supongo que nunca me pasaria por la cabeza eso, todo el codigo estaba correcto =D pero ese era el problema tendre mas cuidado en las palabras que uso =D thx
__________________
El que teme preguntar, se averguenza de aprender.
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 19:29.