elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  error sintaxis INSERT INTO
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: error sintaxis INSERT INTO  (Leído 2,489 veces)
soru13

Desconectado Desconectado

Mensajes: 246



Ver Perfil
error sintaxis INSERT INTO
« en: 14 Mayo 2012, 22:00 pm »

hola,tengo el siguiente código y me da error al insertar un registro a la base de datos y no sé porqué, llevo un rato y nada, aver si ustedes saben porqué:

el error es este:

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 'long,nombre,desc,id_anuncio) 
VALUES ('40.356879','-3.9006689999999935','nombre',' at line 1

Código
  1.  
  2. <?php
  3. if(empty($_SESSION['idusuario'])){
  4. header("location:../index.php");
  5. }else{
  6. $id_usuario = $_SESSION['idusuario'];
  7. $id_anuncio = $_GET['id'];
  8. }
  9. ?>
  10.  
  11.    <?php
  12. if(isset($_POST['new_posicion'])){
  13. include("../../config.php");
  14. $latitud = $_POST['lat'];
  15. $longitud = $_POST['lng'];
  16. $link = mysql_connect($dbhost,$dbuser,$dbpass);
  17. mysql_select_db($db, $link);
  18. $result = mysql_query("SELECT * FROM anuncios WHERE id_user = $id_usuario ORDER BY id DESC LIMIT 1", $link);
  19. while($row = mysql_fetch_array($result)){
  20. $nombre = $row['nombre'];
  21. $des = $row['presentacion'];
  22. }
  23. //cortamos la presentación a 150 carácteres.
  24. $cantidadCaracteres = 150;
  25. $subcadena = substr($des,0,$cantidadCaracteres);
  26. $indiceUltimoEspacio = strrpos($subcadena," ");
  27. $des = substr($des,0, $indiceUltimoEspacio);
  28. $des = $des." [...]";
  29. //AGREGAMOS LOS DATOS A LA BD
  30. $agregar = mysql_query("INSERT INTO mapa (lat,long,nombre,desc,id_anuncio) VALUES ('$latitud','$longitud','$nombre','$des','$id_anuncio')", $link);
  31. if($agregar == true){
  32. echo "OK";
  33. }else{
  34. echo mysql_error();
  35. }
  36. }else{
  37. ?>
  38.    <table width="100%" border="0" cellspacing="10">
  39.    <tr><td align="center"><div id="markerStatus" style="visibility:hidden;"></div>
  40.    <div class="div"><font size="+3">Arrastra el marcador hasta tu localizaci&oacute;n de trabajo.</font></div></td></tr>
  41.      <tr>
  42.        <td align="center"><div id="mapCanvas"></div></td>
  43.      </tr>
  44.      <tr>
  45.        <td align="center"><div id="infoPanel">
  46.        <form name="posiciones" action="?id=<?php echo $id_anuncio; ?>&guardar" method="post">
  47.        <input type="submit" name="new_posicion" id="button" value="Aceptar"><br>
  48.        <input type="text" name="lat" style="visibility:hidden;"/>
  49.        <input type="text" name="lng" style="visibility:hidden;"/>
  50.        </form>
  51.        </div></td>
  52.      </tr>
  53.      <tr>
  54.        <td>&nbsp;</td>
  55.      </tr>
  56.    </table>
  57.        <?php } ?>
  58.  
  59.  

Ninguna variable está vacía.

la tabla es la siguiente:

id    int(100)
lat    varchar(500)
long    varchar(500)
nombre    varchar(50)
desc    text
id_anuncio    int(100)

Gracias y un saludo!



En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.723


<3


Ver Perfil WWW
Re: error sintaxis INSERT INTO
« Respuesta #1 en: 15 Mayo 2012, 15:31 pm »

Simplemente mira wque contiene la query... y la verificas en el motor de base de datos directamente.


En línea

Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
HdM


Desconectado Desconectado

Mensajes: 1.674



Ver Perfil
Re: error sintaxis INSERT INTO
« Respuesta #2 en: 15 Mayo 2012, 16:00 pm »

Buenas.

Estás haciendo uso de palabras reservadas como nombres de campo en la tabla que intentas actualizar.

Citar
la tabla es la siguiente:

id    int(100)
lat    varchar(500)
long    varchar(500)
nombre    varchar(50)
desc    text
id_anuncio    int(100)

http://dev.mysql.com/doc/refman/5.0/es/reserved-words.html

Saludos.
En línea

- Nice to see you again -
soru13

Desconectado Desconectado

Mensajes: 246



Ver Perfil
Re: error sintaxis INSERT INTO
« Respuesta #3 en: 15 Mayo 2012, 16:40 pm »

Buenas.

Estás haciendo uso de palabras reservadas como nombres de campo en la tabla que intentas actualizar.

http://dev.mysql.com/doc/refman/5.0/es/reserved-words.html

Saludos.

en efecto, era por usar esas palabras reservadas, ni me había parado a pensarlo.

Muchas gracias por tu ayuda Bulld0z3r;-)
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Error de sintaxis en PHP :S
PHP
oscarj24 3 2,981 Último mensaje 17 Junio 2010, 04:49 am
por oscarj24
Error de sintaxis en la instrucción INSERT INTO
Bases de Datos
GhostLT 6 11,357 Último mensaje 9 Marzo 2011, 22:49 pm
por Nakp
Error de sintaxis en la instrucci?n INSERT INTO
Bases de Datos
mapers 1 4,475 Último mensaje 21 Mayo 2011, 08:39 am
por mapers
Cookie-Moster --- INSERT error not an error
Hacking
daicon 0 2,563 Último mensaje 23 Diciembre 2011, 14:28 pm
por daicon
Error sintaxis INSERT INTO
.NET (C#, VB.NET, ASP)
kuhi 1 2,818 Último mensaje 18 Octubre 2017, 21:08 pm
por kuhi
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines