PHP - crear nuevo registro

 
Vista:
Imágen de perfil de Sandra

crear nuevo registro

Publicado por Sandra (50 intervenciones) el 15/05/2015 10:34:53
Hola, aqui estoy con otro problemilla. Ya he hecho esto ants y me funciona con otra base de datos y otra tabloa pero esta vez, cambiando solo los campos de la tabla y la tabla y la bdd...me da este error:Ha habido un error al insertar los valores. 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 'Tarifa 6.2a, 'Sí, '111111111, '12/05/201' at line 17. Esos valores corresponden correlativamente a los campos de la tabla TELEMEMPRESAS TARIFA_LUZ(varchar), ASESORIA_TIENE (campo de si/no) NOMBRE_ASESORIA(varchar) y F_ULT_CONT (campo fecha) Y me da ese error... Os pego el codigo de la pagina qe inserta los datos.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
$link = mysql_connect("localhost", "s15c4aed_TELEM", "TELEMASERGIA111");
        mysql_select_db("s15c4aed_TELEMARKETING",$link);
 
        // Con esta sentencia SQL insertaremos los datos en la base de datos
 
        mysql_query("INSERT INTO TELEMEMPRESA(RAZON_SOCIAL,TELEFONO1,TELEFONO2,EMAIL1,EMAIL2,DIRECCION,NUM,PISO,PUERTA,CP,LOCALIDAD,PROVINCIA,PERS_CONTACTO,TEL_CONTACTO,EMAIL_CONTACTO,ACT_COMERCIALIZDRA,PERMA_LUZ,TARIFA_LUZ,ASESORIA_TIENE,NOMBRE_ASESORIA,F_ULT_CONT,NOTAS_AHORA)
                  VALUES ('{$_POST['RAZON_SOCIAL']}',
    				   '{$_POST['telefono1']}',
                                   '{$_POST['telefono2']}',
                                   '{$_POST['email1']}',
                                   '{$_POST['email2']}',
                                   '{$_POST['direccion']}',
                                   '{$_POST['num']}',
                                   '{$_POST['piso']}',
                                   '{$_POST['pta']}',
                                   '{$_POST['cp']}',
                                   '{$_POST['municipio']}',
                                   '{$_POST['provincia']}',
                                   '{$_POST['pers_contacto']}',
                                   '{$_POST['tel_contacto']}',
                                   '{$_POST['email_contacto']}',
                                   '{$_POST['act_comercializadora']}',
                                   '{$_POST['perma_luz']},
       				   '{$_POST['tarifa_luz']},
				   '{$_POST['asesoria_tiene']},
				   '{$_POST['nombre_asesoria']},
				   '{$_POST['f_ult_c']},
				   '{$_POST['notas_ahora']}')",$link);
 
          // Con esta sentencia SQL insertaremos los datos en la base de datos
//mysql_query("INSERT INTO  (titulo,contenido)
//VALUES ('{$_POST['titulo']}','{$_POST['contenido']}')",$link);
 
        // Ahora comprobaremos que todo ha ido correctamente
        $my_error = mysql_error($link);
 
        if(!empty($my_error)) {
 
            echo "Ha habido un error al insertar los valores. $my_error";
 
        } else {
 
            echo "Los datos han sido introducidos satisfactoriamente.";
 
        }

Gracias! ya estoy estancada....cuando antes ya me ha salido y esq comparo los dos códigos y son exactamente iguales...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

crear nuevo registro

Publicado por Martha (48 intervenciones) el 15/05/2015 12:23:47
Así sin ver mucho, hablas de un campo email2 que no recoges en el $_POST, luego al campo que llamas en la tabla EMAIL2 le estás introduciendo la dirección.
Eso significa que el tipo de datos de lo que introduzcas en Tarifa6.2 debe ser diferente (si introduces un string dónde espera una fecha, por ejemplo).
Creo que te sobra EMAIL2 en el INSERT INTO.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Sandra

crear nuevo registro

Publicado por Sandra (50 intervenciones) el 15/05/2015 12:31:31
Se debe de haber copiado mal, si que está recojido. a ver copio el codigo de nuevo...

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
$link = mysql_connect("localhost", "s15c4aed_TELEM", "TELEMASERGIA111");
        mysql_select_db("s15c4aed_TELEMARKETING",$link);
 
        // Con esta sentencia SQL insertaremos los datos en la base de datos
 
 
	    mysql_query("INSERT INTO `TELEMEMPRESA`(`RAZON_SOCIAL`,`TELEFONO1`,`TELEFONO2`,`EMAIL1`,`EMAIL2`,`DIRECCION,NUM`,`PISO`,`PUERTA`,`CP`,`LOCALIDAD`,`PROVINCIA`,`PERS_CONTACTO`,`TEL_CONTACTO`,`EMAIL_CONTACTO`,`ACT_COMERCIALIZDRA`,`PERMA_LUZ`,`TARIFA_LUZ`,`ASESORIA_TIENE`,`NOMBRE_ASESORIA`,`F_ULT_CONT`,`NOTAS_AHORA`)
  VALUES ('{$_POST['RAZON_SOCIAL']}',
	 '{$_POST['telefono1']}',
       '{$_POST['telefono2']}',                                              '{$_POST['email1']}',  																					               '{$_POST['email2']}',
   '{$_POST['direccion']}',
    '{$_POST['num']}',
 '{$_POST['piso']}',
'{$_POST['pta']}',
    '{$_POST['cp']}',
      '{$_POST['municipio']}',
      '{$_POST['provincia']}',
      '{$_POST['pers_contacto']}',
         '{$_POST['tel_contacto']}',
            '{$_POST['email_contacto']}',
          '{$_POST['act_comercializadora']}',
          '{$_POST['perma_luz']},
	 '{$_POST['tarifa_luz']},
	 '{$_POST['asesoria_tiene']},
	'{$_POST['nombre_asesoria']},
		 '{$_POST['f_ult_c']},
	 '{$_POST['notas_ahora']}')",$link);
 
          // Con esta sentencia SQL insertaremos los datos en la base de datos
//mysql_query("INSERT INTO  (titulo,contenido)
//VALUES ('{$_POST['titulo']}','{$_POST['contenido']}')",$link);
 
        // Ahora comprobaremos que todo ha ido correctamente
        $my_error = mysql_error($link);
 
        if(!empty($my_error)) {
 
            echo "Ha habido un error al insertar los valores. $my_error";
 
        } else {
 
            echo "Los datos han sido introducidos satisfactoriamente.";
 
        }
les he agregado comilla pero sigue sin funcionar...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Alberto
Val: 478
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

crear nuevo registro

Publicado por Alberto (351 intervenciones) el 15/05/2015 18:16:44
Hola...

Tu problema esta en las comillas cuando indicas los campos a insertar, fíjate que estas usando el signo acento grave (`) cuando en sintaxis sería las comillas simples ('), pero lo correcto es que no necesitas agregar las comillas en tu sentencia cuando especificas que campos vas a insertar, no es erróneo pero se considera mala práctica, así como los paréntesis que usas cuando pasas los parámetros, en este caso si me atrevo a decir que lo correcto es sin ellos, quedando de la siguiente manera...

Parametros
1
'".$_POST['asesoria_tiene']."'

Por lo tanto, si ves que sigue sin funcionar entonces te recomiendo corrijas tu sintaxis....

Consulta
1
2
INSERT INTO TELEMEMPRESA(RAZON_SOCIAL,TELEFONO1,TELEFONO2,EMAIL1,EMAIL2,DIRECCION,NUM,PISO,PUERTA,CP,LOCALIDAD,PROVINCIA,PERS_CONTACTO,TEL_CONTACTO,
EMAIL_CONTACTO,ACT_COMERCIALIZDRA,PERMA_LUZ,TARIFA_LUZ,ASESORIA_TIENE,NOMBRE_ASESORIA,F_ULT_CONT,NOTAS_AHORA

Sin mas que comentar, cualquier duda y/o inconveniente, aquí estamos. Suerte!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de sandra

crear nuevo registro

Publicado por sandra (50 intervenciones) el 15/05/2015 18:22:20
He probado sin comillas y sigue fallando.... No se porque...creo que lo volvere a hacer de cero porque me estoy rompiendo la cabeza y no encuentro el p... Fallo....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Alberto
Val: 478
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

crear nuevo registro

Publicado por Alberto (351 intervenciones) el 15/05/2015 18:33:30
Hola...

Intenta de la siguiente manera...

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
mysql_query("INSERT INTO TELEMEMPRESA (RAZON_SOCIAL,TELEFONO1,TELEFONO2,EMAIL1,EMAIL2,DIRECCION,NUM,PISO,PUERTA,CP,LOCALIDAD,PROVINCIA,PERS_CONTACTO,TEL_CONTACTO,
	EMAIL_CONTACTO,ACT_COMERCIALIZDRA,PERMA_LUZ,TARIFA_LUZ,ASESORIA_TIENE,NOMBRE_ASESORIA,F_ULT_CONT,NOTAS_AHORA) VALUES ('".$_POST['RAZON_SOCIAL']."',
	'".$_POST['telefono1']."',
	'".$_POST['telefono2']."',
	'".$_POST['email1']."',
	'".$_POST['email2']."',
	'".$_POST['direccion']."',
	'".$_POST['num']."',
	'".$_POST['piso']."',
	'".$_POST['pta']."',
	'".$_POST['cp']."',
	'".$_POST['municipio']."',
	'".$_POST['provincia']."',
	'".$_POST['pers_contacto']."',
	'".$_POST['tel_contacto']."',
	'".$_POST['email_contacto']."',
	'".$_POST['act_comercializadora']."',
	'".$_POST['perma_luz'].",
	'".$_POST['tarifa_luz'].",
	'".$_POST['asesoria_tiene'].",
	'".$_POST['nombre_asesoria'].",
	'".$_POST['f_ult_c'].",
	'".$_POST['notas_ahora']."')",$link);

Sin mas que comentar, cualquier duda y/o inconveniente, aquí estamos. Suerte!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

crear nuevo registro

Publicado por Maxi (13 intervenciones) el 16/05/2015 17:15:32
En el primer código que muestras, de la linea 23 en adelante te falta el cierra de las comillas.

En la línea 22 (y anteriores) tienes esto: '{$_POST['act_comercializadora']}'
Lease: comilla llave variable llave comiila

Pero luego en tu línea 23 tienes esto: '{$_POST['perma_luz']}
Lease: comilla llave variable llave (nada más)

A partir de esa línea las que la suceden tiene el mismo problema (con excepción de la ultima: '{$_POST['notas_ahora']}')
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar