Foros del Web » Programando para Internet » PHP »

No hace las consultas SQL

Estas en el tema de No hace las consultas SQL en el foro de PHP en Foros del Web. Estoy programándome un mini-script, pero no se cual es el fallo. Lo único que tiene que hacer es o añadir un nuevo campo a una ...
  #1 (permalink)  
Antiguo 15/07/2010, 12:04
Avatar de Jota_sk  
Fecha de Ingreso: octubre-2008
Mensajes: 188
Antigüedad: 15 años, 6 meses
Puntos: 0
No hace las consultas SQL

Estoy programándome un mini-script, pero no se cual es el fallo. Lo único que tiene que hacer es o añadir un nuevo campo a una tabla, o modificar un campo, pero no hace ninguna de las dos cosas.

Código PHP:
<?php include ("config.php"); ?>
<?php

if($_GET["mod"]){
    
$query 'SELECT * FROM '.$tabla.' WHERE id = '.$_GET["mod"].';';
    
$result mysql_query($query,$conn);
    while(
$row mysql_fetch_array($result)){
        if(
$row['hecho'] == '0'){
                
$consulta 'UPDATE tareas SET hecha = "1" WHERE id = "'.$_GET["mod"].'";';
        };
        if(
$row['hecho'] == '1'){
                
$consulta 'UPDATE tareas SET hecha = "0" WHERE id = "'.$_GET["mod"].'";';
        };
    };
    
mysql_query($consulta$conn);
};
if(
$_POST["tarea"]){
    
$tarea $_POST["tarea"];
    
$fecha date ("Y-n-d");
    
$sql 'INSERT INTO tareas ("tarea","hecha","anadida") VALUES ("'.$tarea.'","0","'.$fecha.'")';
    
mysql_query($sql $conn);
};
?>
<script type="text/javascript">window.location="index.php";</script>
En el config.php están los datos de conexión y la conexión. Donde esta el fallo?
  #2 (permalink)  
Antiguo 15/07/2010, 12:43
 
Fecha de Ingreso: mayo-2006
Ubicación: Bogotá
Mensajes: 2.061
Antigüedad: 18 años
Puntos: 50
Respuesta: No hace las consultas SQL

Verifique que este entrando a los if y Las llaves no llevan ;

Esto no esta bien -> } ; -> Le deberia estar sacando error
  #3 (permalink)  
Antiguo 15/07/2010, 13:17
Avatar de Jota_sk  
Fecha de Ingreso: octubre-2008
Mensajes: 188
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: No hace las consultas SQL

si que entra dentro de los if, el problema esta en las consultas SQL, porque les he puesto el mysql_error() y me muestra el error, pero no entiendo donde esta el error, ya que he utilizado estas misma consultas una y otra vez. Si quiero añadir un registro nuevo en la tabla, me dice
Código MySQL:
Ver original
  1. Error in query: . 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 '"id","tarea","hecha","anadida") VALUES (NULL,"123","0","2010-7-15")' at line 1

Y el codigo de la consulta es
Código PHP:
Ver original
  1. $sql = 'INSERT INTO '.$tabla.' ("id","tarea","hecha","anadida") VALUES (NULL,"'.$tarea.'","0","'.$fecha.'");';

Que hace la siguiente consulta:
Código MySQL:
Ver original
  1. INSERT INTO tareas ("id","tarea","hecha","anadida") VALUES (NULL,"1","0","2010-7-15");


No veo donde esta el error
  #4 (permalink)  
Antiguo 15/07/2010, 14:09
Avatar de chicho_  
Fecha de Ingreso: julio-2010
Mensajes: 44
Antigüedad: 13 años, 9 meses
Puntos: 1
Respuesta: No hace las consultas SQL

Y si ejecutas la query manualmente te funciona? Que raro...

Prueba esta:

Código MySQL:
Ver original
  1. INSERT INTO tareas ("tarea","hecha","anadida") VALUES ("1","0","2010-7-15");
  #5 (permalink)  
Antiguo 15/07/2010, 14:51
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: No hace las consultas SQL

en tu insert el 0 no esta dentro de las comillas ni concatenado como las variables pones $sql = 'INSERT INTO tareas ("tarea","hecha","anadida") VALUES ("'.$tarea.'","0","'.$fecha.'")';
deberia de ser asi
Código PHP:
Ver original
  1. $sql = 'INSERT INTO tareas ("tarea","hecha","anadida") VALUES ("'.$tarea.'",0,"'.$fecha.'")';
ya que no es una variable colocalo y ve si te hace la accion
  #6 (permalink)  
Antiguo 15/07/2010, 15:49
Avatar de Jota_sk  
Fecha de Ingreso: octubre-2008
Mensajes: 188
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: No hace las consultas SQL

No lo entiendo, si lo hago manualmente la misma consulta en sql, la hace correctamente. Pero si la hago desde PHP, no la hace.
  #7 (permalink)  
Antiguo 15/07/2010, 15:51
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: No hace las consultas SQL

las comillas son al revés, las que se utilizan por SQL para valores literales es la comillas simples:
Cita:
INSERT INTO `tabla`(`columna`) VALUES('valor')
y las columnas, tablas, de ser posible sin comillas... o bien, usando backtick (aunque eso varia dependiendo del RDBMS)
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #8 (permalink)  
Antiguo 16/07/2010, 11:53
Avatar de Jota_sk  
Fecha de Ingreso: octubre-2008
Mensajes: 188
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: No hace las consultas SQL

creo que es problema de mi sql, no del código. Porque lo he borrado todo, y lo he vuelto a programar, y al principio todo funcionaba bien, hasta que al cabo de un rato, ya no hacía consultas, ni nada en sql, todo el código PHP estaba bien, y no había tocado nada.

Etiquetas: sql
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 15:36.