Foros del Web » Programando para Internet » PHP »

Problema al insertar en mysql con php

Estas en el tema de Problema al insertar en mysql con php en el foro de PHP en Foros del Web. Hola he intentado insertar datos en mysql mediante php la cuestion es que lo he probado de todas las formas y de ninguna realiza la ...
  #1 (permalink)  
Antiguo 02/08/2012, 09:18
Avatar de novamix  
Fecha de Ingreso: enero-2007
Ubicación: Getafe, Spain
Mensajes: 50
Antigüedad: 17 años, 3 meses
Puntos: 1
Pregunta Problema al insertar en mysql con php

Hola he intentado insertar datos en mysql mediante php la cuestion es que lo he probado de todas las formas y de ninguna realiza la inserccion me dice que lo hace pero cuando voy a ver la bd no lo hace.

la version de mysql es: Versión del cliente: mysqlnd 5.0.8-dev - 20102224 - $Revision: 321634 $

y php 5.

La tabla seria.

Código:
CREATE TABLE IF NOT EXISTS `concierto` (
  `concierto_id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `username` varchar(15) NOT NULL,
  `artista` varchar(50) NOT NULL,
  `fecha` date NOT NULL,
  `hora` time NOT NULL,
  `sala` varchar(50) NOT NULL,
  `direccion` text NOT NULL,
  `localidad` varchar(50) NOT NULL,
  `provincia` varchar(50) NOT NULL,
  `pais` varchar(50) NOT NULL,
  `valor` varchar(1) NOT NULL,
  PRIMARY KEY (`concierto_id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;

y el codigo para insertar que tengo uno de tantos.. seria este. se supone que viene desde un formulario aunque en este caso no le tengo. asi, ya que lo he intentado de otros modos y no deja asi que pense en poner los datos en el fichero haber si me lo introducia pero no las introduce.

Código PHP:
<?php $conexion mysql_connect("localhost" "user." "contraseña"); 

mysql_select_db("v2"$conexion);

$sql "INSERT INTO `v2`.`concierto` (`concierto_id`, `username`, `artista`, `fecha`, `hora`, `sala`, `direccion`, `localidad`, `provincia`, `pais`, `valor`) VALUES (NULL, \'novamix\', \'mi mama\', \'2012-08-24\', \'22:00:00\', \'mi casa\', \'adfadfad\', \'adfa\', \'dfad\', \'afadf\', \'0\');";

mysql_query($sql,$conexion);

$my_error mysql_error($conexion);

if(!empty(
$my_error)) { 

echo 
"Ha habido un error al insertar los valores. $my_error"

} else{
echo 
"los datos se introdujeron correctamente";
}

?>
Gracias por vuestra ayuda.
  #2 (permalink)  
Antiguo 02/08/2012, 09:24
Avatar de dontexplain  
Fecha de Ingreso: junio-2012
Mensajes: 536
Antigüedad: 11 años, 10 meses
Puntos: 127
Respuesta: Problema al insertar en mysql con php

No escapes la comilla simple de los elementos que han de ir entre comilla simple.

Un saludo.
__________________
21añero.
HTML/CSS, PHP, JS/jQuery, Mysql; NodeJS/Socket.io (& V8); C++ ; Python (wxpy); Ensamblador.
Músico (clarinetista/pianista) y compositor
  #3 (permalink)  
Antiguo 02/08/2012, 09:26
Avatar de novamix  
Fecha de Ingreso: enero-2007
Ubicación: Getafe, Spain
Mensajes: 50
Antigüedad: 17 años, 3 meses
Puntos: 1
Respuesta: Problema al insertar en mysql con php

mmm las cambie pero tampoco me da.. :S
  #4 (permalink)  
Antiguo 02/08/2012, 09:28
Avatar de dontexplain  
Fecha de Ingreso: junio-2012
Mensajes: 536
Antigüedad: 11 años, 10 meses
Puntos: 127
Respuesta: Problema al insertar en mysql con php

Sustituye ` por comilla simple.

Y elimina ('concierto_id') y su registro NULL.

Un saludo
__________________
21añero.
HTML/CSS, PHP, JS/jQuery, Mysql; NodeJS/Socket.io (& V8); C++ ; Python (wxpy); Ensamblador.
Músico (clarinetista/pianista) y compositor
  #5 (permalink)  
Antiguo 02/08/2012, 09:31
Avatar de novamix  
Fecha de Ingreso: enero-2007
Ubicación: Getafe, Spain
Mensajes: 50
Antigüedad: 17 años, 3 meses
Puntos: 1
Respuesta: Problema al insertar en mysql con php

Si mira. lo tengo asi y tampoco.
Código PHP:
<?php $conexion mysql_connect("localhost" "user" "contraseña); 

mysql_select_db("
v2", $conexion);

$sql = "
INSERT INTO 'v2'.'concierto' ('username''artista''fecha''hora''sala''direccion''localidad''provincia''pais''valor'VALUES novamixmi mama2012-08-2422:00:00mi casaadfadfadadfadfadafadf0);";

mysql_query($sql,$conexion);

$my_error = mysql_error($conexion);

if(!empty($my_error)) { 

echo "
Ha habido un error al insertar los valores$my_error"; 

} else{
echo "
los datos se introdujeron correctamente";
}

?>
  #6 (permalink)  
Antiguo 02/08/2012, 09:33
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Problema al insertar en mysql con php

Si vas a escapar tus campos SQL estos deben de tener comillas invertidas (`) no simples ('), es decir:
Código SQL:
Ver original
  1. # mal
  2. INSERT INTO 'foo' ('bar') VALUES ('baz')
  3. # bien
  4. INSERT INTO `foo` (`bar`) VALUES ('baz')
  #7 (permalink)  
Antiguo 02/08/2012, 09:36
Avatar de dontexplain  
Fecha de Ingreso: junio-2012
Mensajes: 536
Antigüedad: 11 años, 10 meses
Puntos: 127
Respuesta: Problema al insertar en mysql con php

Qué error devuelve.
__________________
21añero.
HTML/CSS, PHP, JS/jQuery, Mysql; NodeJS/Socket.io (& V8); C++ ; Python (wxpy); Ensamblador.
Músico (clarinetista/pianista) y compositor
  #8 (permalink)  
Antiguo 02/08/2012, 09:43
Avatar de novamix  
Fecha de Ingreso: enero-2007
Ubicación: Getafe, Spain
Mensajes: 50
Antigüedad: 17 años, 3 meses
Puntos: 1
Respuesta: Problema al insertar en mysql con php

Ok. ya me inserto... una pregunta al introducir variables desde un formulario .a forma correcta seria.

Código PHP:
Ver original
  1. INSERT INTO `concierto`(`artista`) VALUES ('$artista');

Gracias:)
  #9 (permalink)  
Antiguo 02/08/2012, 09:50
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Problema al insertar en mysql con php

Pues yo te recomendaría usar PDO y usar PreparedStatements, es mucho más seguro a la hora de armar tus SQLs.
  #10 (permalink)  
Antiguo 02/08/2012, 09:58
Avatar de novamix  
Fecha de Ingreso: enero-2007
Ubicación: Getafe, Spain
Mensajes: 50
Antigüedad: 17 años, 3 meses
Puntos: 1
Respuesta: Problema al insertar en mysql con php

Ok . voy a estudiar. eso muchas gracias. he estado leyendo en el manual de php y veo que es mejor.

Etiquetas: insert, mysql
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 03:05.