Foros del Web » Programando para Internet » PHP »

problema con sentencia mysql para ingresar datos en la base de datos

Estas en el tema de problema con sentencia mysql para ingresar datos en la base de datos en el foro de PHP en Foros del Web. que me da el siguiente error el mysql_error: Column count doesn't match value count at row 1 esto es cuando intento ingresar un registro sin ...
  #1 (permalink)  
Antiguo 05/10/2010, 16:18
 
Fecha de Ingreso: mayo-2009
Ubicación: Andalucia
Mensajes: 650
Antigüedad: 15 años, 7 meses
Puntos: 1
problema con sentencia mysql para ingresar datos en la base de datos

que me da el siguiente error el mysql_error:

Column count doesn't match value count at row 1

esto es cuando intento ingresar un registro sin seleccionar alguna imagen. os pongo el codigo haber si encontrais el fallo por que yo no encuentro el error.

Código PHP:
<?php 
//guardar como subir_archivos.php
//Aplicacion por Javier Rojas de www.tuboolar-web.com con la inestimable ayuda de  GatorV

if (isset($_POST['enviar'])) {  
    if(
is_uploaded_file($_FILES['fichero']['tmp_name'])) {
    
    
      
// me verifica haya sido cargado el archivo 
        
$ruta_destino "imagenes/caratula/";
        
$namefinaltrim ($_FILES['fichero']['name']); //linea nueva devuelve la cadena sin espacios al principio o al final
        
$namefinalereg_replace (" """$namefinal);// linea nueva devuelve la cadena sin espacios entre palabtas
        
$uploadfile$ruta_destino $namefinal



        if(
move_uploaded_file($_FILES['fichero']['tmp_name'], $uploadfile)) { // se coloca en su lugar final 
                   
                    
echo "<b>Upload exitoso!. Datos:</b><br>"
                    echo 
"Nombre: <i><a href=\"".$ruta_destino $_FILES['fichero']['name']."\">".$_FILES['fichero']['name']."</a></i><br>"
                    echo 
"Tipo MIME: <i>".$_FILES['fichero']['type']."</i><br>"
                    echo 
"Peso: <i>".$_FILES['fichero']['size']." bytes</i><br>"
                    echo 
"<br><hr><br>"
                        


//conectamos a la base de datos para almacenar los datos y la ruta del archivo

                 
mysql_connect('localhost','root','')or die ('Ha fallado la conexión: '.mysql_error());
                 
mysql_select_db('carajaula')or die ('Error al seleccionar la Base de Datos: '.mysql_error());


 
                     
$titulo=$_POST['titulo'];
                    
$ano=$_POST['ano'];
                    
$director=$_POST['director'];
                    
$genero$_POST['genero'];
                    
$calidad=$_POST['calidad'];
                    
$idioma=$_POST['idioma'];
                    
$ruta=$uploadfile ;
                    
$tipo $_FILES['fichero']['type'];
                    
$size$_FILES['fichero']['size'];
                    
$comentario=$_POST['comentario'];

                   
$query "INSERT INTO peliculas 
    VALUES (0, '$titulo', '$ano' , '$director ', '$genero' , '$calidad' , '$idioma'  , '$ruta' , '$tipo' , '$size' , '$comentario'    )"
;

       
mysql_query($query) or die(mysql_error());
       echo 
"la pelicula '".$titulo."' ha sido registrada en la base de datos.<br />";
                
    


                     
        } 
    }
    else {
        
        
//conectamos a la base de datos para almacenar los datos y la ruta del archivo

                 
mysql_connect('localhost','root','')or die ('Ha fallado la conexión: '.mysql_error());
                 
mysql_select_db('carajaula')or die ('Error al seleccionar la Base de Datos: '.mysql_error());


 
                     
$titulo=$_POST['titulo'];
                    
$ano=$_POST['ano'];
                    
$director=$_POST['director'];
                    
$genero$_POST['genero'];
                    
$calidad=$_POST['calidad'];
                    
$idioma=$_POST['idioma'];
                    
$comentario=$_POST['comentario'];

                  
//en este $query esta el fallo pero donde??

 
$query "INSERT INTO peliculas 
    VALUES (0, '$titulo', '$ano' , '$director' , '$genero' , '$calidad' , '$idioma' , '$comentario' )"
;

       
mysql_query($query) or die(mysql_error());
       echo 
"la pelicula '".$titulo."' ha sido registrada en la base de datos.<br />";
                
    
}
        
     
 }
          
// A continuación el formulario 

?>
  #2 (permalink)  
Antiguo 05/10/2010, 16:23
Avatar de egepe  
Fecha de Ingreso: diciembre-2009
Mensajes: 310
Antigüedad: 15 años
Puntos: 7
Respuesta: problema con sentencia mysql para ingresar datos en la base de datos

Quiere decir que estas enviando mas campos de los que tiene definidos la tabla
  #3 (permalink)  
Antiguo 05/10/2010, 16:24
 
Fecha de Ingreso: septiembre-2009
Mensajes: 210
Antigüedad: 15 años, 3 meses
Puntos: 19
Respuesta: problema con sentencia mysql para ingresar datos en la base de datos

fallo de post
  #4 (permalink)  
Antiguo 05/10/2010, 16:26
 
Fecha de Ingreso: mayo-2009
Ubicación: Andalucia
Mensajes: 650
Antigüedad: 15 años, 7 meses
Puntos: 1
Respuesta: problema con sentencia mysql para ingresar datos en la base de datos

pero eso es imposible, todos los campos que mando, existen en la tabla de eso estoy totalmente seguro
  #5 (permalink)  
Antiguo 05/10/2010, 16:29
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 8 meses
Puntos: 2534
Respuesta: problema con sentencia mysql para ingresar datos en la base de datos

¿que hace ese cero en tu consulta?

además, si no especificas las columnas debes ingresarlas en orden correcto... y, si la PK es auto_increment no debes especificar ningún valor, ni dicha columna pues es automático...
Cita:
INSERT INTO tabla(col1, col2) VALUES('foo', 'bar');
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #6 (permalink)  
Antiguo 05/10/2010, 16:33
 
Fecha de Ingreso: mayo-2009
Ubicación: Andalucia
Mensajes: 650
Antigüedad: 15 años, 7 meses
Puntos: 1
Respuesta: problema con sentencia mysql para ingresar datos en la base de datos

gracias paketrueke ya me funciona ahora tengo asi la linea $query

Código PHP:
 $query "INSERT INTO peliculas ( titulo , ano , director , genero , calidad, idioma , comentario)
    VALUES ( '$titulo' , '$ano' , '$director' , '$genero' , '$calidad' , '$idioma' , '$comentario' )"

  #7 (permalink)  
Antiguo 05/10/2010, 16:37
Avatar de egepe  
Fecha de Ingreso: diciembre-2009
Mensajes: 310
Antigüedad: 15 años
Puntos: 7
Respuesta: problema con sentencia mysql para ingresar datos en la base de datos

Bueno el hecho q no te haya dicho lo del cero (0) no quiere decir que yo estaba equivocado, xq como te dije diferencia de valores... ES IMPOSIBLE... Todo es posible cuando hay intervención humana...

Exijo mis créditos .... jajajajaj
  #8 (permalink)  
Antiguo 05/10/2010, 17:38
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 8 meses
Puntos: 2534
Respuesta: problema con sentencia mysql para ingresar datos en la base de datos

Cita:
Iniciado por egepe Ver Mensaje
Bueno el hecho q no te haya dicho lo del cero (0) no quiere decir que yo estaba equivocado, xq como te dije diferencia de valores... ES IMPOSIBLE... Todo es posible cuando hay intervención humana...

Exijo mis créditos .... jajajajaj
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: ingresar, mysql, sentencia
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 04:45.