Foros del Web » Programando para Internet » PHP »

ayuda con este problemilla

Estas en el tema de ayuda con este problemilla en el foro de PHP en Foros del Web. Estoy intentando conectar con una base de datos y me da un error. (no puedo poner el codigo porke tengo menos de 30 días de ...
  #1 (permalink)  
Antiguo 28/04/2009, 02:29
rtr
 
Fecha de Ingreso: abril-2009
Mensajes: 368
Antigüedad: 15 años
Puntos: 2
ayuda con este problemilla

Estoy intentando conectar con una base de datos y me da un error.
(no puedo poner el codigo porke tengo menos de 30 días de antiguedad en el foro)

....Al insetar los datos en la web , me da este error;

Could not insert data because Column count doesn't match value count at row 1

¿que puede pasar?
  #2 (permalink)  
Antiguo 28/04/2009, 02:58
machoman112233
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: ayuda con este problemilla

Si no me equivoco es porque estas intentando introducir un valor que no se corresponde al tipo del campo... es decir una palabra en un campo numerico...
  #3 (permalink)  
Antiguo 28/04/2009, 03:23
rtr
 
Fecha de Ingreso: abril-2009
Mensajes: 368
Antigüedad: 15 años
Puntos: 2
Respuesta: ayuda con este problemilla

Y como puedo saber cual es??
  #4 (permalink)  
Antiguo 28/04/2009, 03:30
rtr
 
Fecha de Ingreso: abril-2009
Mensajes: 368
Antigüedad: 15 años
Puntos: 2
Respuesta: ayuda con este problemilla

tengo este codigo y estoy introduciendo texto....

<center>
<form action="register.php" method="post" >
<p>id *<br />
<input type="text" name="id" size="20">
<br>
zona *<br />
<input type="text" name="zona" size="20">
<br>

contrasena *<br />
<input type="text" name="contrasena" size="20">
<br>

<input type="submit" value="crear cuenta">
</p>
</form>
<br />
<p> Nota: * es obligatorio</p><br />



</center>
  #5 (permalink)  
Antiguo 28/04/2009, 03:32
machoman112233
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: ayuda con este problemilla

Vas al phpMyAdmin eliges la Base De Dados, despues la Tabla y miras la estructura de la tabla... en el campo TIPO te dice si es numero (INT, FLOAT, DOYBLE), texto (CHAR,VARCHAR, TEXT), fecha (DATE,DATE), etc...
  #6 (permalink)  
Antiguo 28/04/2009, 03:42
rtr
 
Fecha de Ingreso: abril-2009
Mensajes: 368
Antigüedad: 15 años
Puntos: 2
Respuesta: ayuda con este problemilla

en todos tengo , tipo varchar. ( en la base de datos)

Última edición por rtr; 28/04/2009 a las 03:49
  #7 (permalink)  
Antiguo 28/04/2009, 03:52
rtr
 
Fecha de Ingreso: abril-2009
Mensajes: 368
Antigüedad: 15 años
Puntos: 2
Respuesta: ayuda con este problemilla

Tengo las paginas siguientes;

configuracion.php:

<?php

$server = "fdb1.runhosting.com";


$database = "nombre base datos";


$db_user = "nombre usuario";


$db_pass = "clave";


$table = "nombre tabla";
?>
  #8 (permalink)  
Antiguo 28/04/2009, 03:53
rtr
 
Fecha de Ingreso: abril-2009
Mensajes: 368
Antigüedad: 15 años
Puntos: 2
Respuesta: ayuda con este problemilla

registro.html ;

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
</head>

<body>

<center>
<form action="register.php" method="post" >
<p>id *<br />
<input type="text" name="id" size="20">
<br>
zona *<br />
<input type="text" name="zona" size="20">
<br>

contrasena *<br />
<input type="text" name="contrasena" size="20">
<br>

<input type="submit" value="crear cuenta">
</p>
</form>
<br />
<p> Nota: * es obligatorio</p><br />



</center>
</body>
</html>
  #9 (permalink)  
Antiguo 28/04/2009, 03:54
rtr
 
Fecha de Ingreso: abril-2009
Mensajes: 368
Antigüedad: 15 años
Puntos: 2
Respuesta: ayuda con este problemilla


register.php:


<?php

//Variables de post
$id=$_POST['id'];
$zona=$_POST['zona'];
$contrasena=$_POST['contrasena'];

include("configuracion.php");

// connectando a mysql
$link = mysql_connect($server, $db_user, $db_pass)
or die ("Could not connect to mysql because ".mysql_error());

// seleccionando la base de datos
mysql_select_db($database)
or die ("Could not select database because ".mysql_error());

// insertando el usuario
$insert = mysql_query("insert into $table (id,zona,contraseña)values ('NULL', '".$id."', '".$zona."', '".$contrasena."')")
or die("Could not insert data because ".mysql_error());

// escribir el mensaje si se creo correctamente
echo "Tu zona ha sido correctamente creada! regresa al registro <a href=registro.html>aqui</a> <br>";

?>
  #10 (permalink)  
Antiguo 28/04/2009, 03:58
machoman112233
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: ayuda con este problemilla

Fijate que al poner los campos donde tiene que introducir los valores a la parte de VALUES tienes que poner el mismo numero de campos... ni mas ni menos...

Código php:
Ver original
  1. $insert = mysql_query("insert into $table (id,zona,contraseña)values ('".$id."', '".$zona."', '".$contrasena."')")
  #11 (permalink)  
Antiguo 28/04/2009, 04:03
rtr
 
Fecha de Ingreso: abril-2009
Mensajes: 368
Antigüedad: 15 años
Puntos: 2
Respuesta: ayuda con este problemilla

cambié contraseña y puse contrasena....como en values.. pero nada, sigue igual
  #12 (permalink)  
Antiguo 28/04/2009, 04:15
machoman112233
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: ayuda con este problemilla

En el value tienes que quitar el NULL...

$insert = mysql_query("insert into " .$table. " (id,zona,contraseña) values ('" .$id. "', '" .$zona. "', '" .$contrasena. "')") or die (mysql_error());
  #13 (permalink)  
Antiguo 28/04/2009, 04:21
rtr
 
Fecha de Ingreso: abril-2009
Mensajes: 368
Antigüedad: 15 años
Puntos: 2
Respuesta: ayuda con este problemilla

creia que eso solo era para decir que da igual que los campos esten vacios...?
  #14 (permalink)  
Antiguo 28/04/2009, 04:22
rtr
 
Fecha de Ingreso: abril-2009
Mensajes: 368
Antigüedad: 15 años
Puntos: 2
Respuesta: ayuda con este problemilla

sigue igual...asi lo he puesto

$insert = mysql_query("insert into $table (id,zona,contrasena)values ('".$id."', '".$zona."', '".$contrasena."')")
or die("Could not insert data because ".mysql_error());
  #15 (permalink)  
Antiguo 28/04/2009, 04:24
rtr
 
Fecha de Ingreso: abril-2009
Mensajes: 368
Antigüedad: 15 años
Puntos: 2
Respuesta: ayuda con este problemilla

ahora me da este error:

Could not insert data because Unknown column 'zona' in 'field list'

traducido:

No se pudo insertar los datos porque Desconocido columna 'zona' en 'lista de campos "
  #16 (permalink)  
Antiguo 28/04/2009, 04:52
rtr
 
Fecha de Ingreso: abril-2009
Mensajes: 368
Antigüedad: 15 años
Puntos: 2
Respuesta: ayuda con este problemilla

ya esta solucionado, gracias....

Tenia un fallo en el nombre de la tablaa.....jejej
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 05:33.