Foros del Web » Programando para Internet » PHP »

ha dejado de insertar datos en la BD

Estas en el tema de ha dejado de insertar datos en la BD en el foro de PHP en Foros del Web. Hola a todos, a ver si alguien sabe el porqué de esto. Hasta ahora insertaba datos sin ningún problema. Pero llegado a este punto (127 ...
  #1 (permalink)  
Antiguo 15/05/2005, 03:57
 
Fecha de Ingreso: noviembre-2002
Mensajes: 125
Antigüedad: 15 años, 1 mes
Puntos: 0
ha dejado de insertar datos en la BD

Hola a todos,
a ver si alguien sabe el porqué de esto.
Hasta ahora insertaba datos sin ningún problema. Pero llegado a este punto (127 entradas), ya no me deja insertar más.

Porqué???

les dejo la estructura de la base de datos.


Código PHP:
CREATE TABLE `motos_accesorios_familia` (
  `
idtinyint(4NOT NULL auto_increment,
  `
idfamiliamarcavarchar(255NOT NULL default '',
  `
idfamiliatipoaccesoriovarchar(255NOT NULL default '',
  `
familiavarchar(255NOT NULL default '',
  
PRIMARY KEY  (`id`)
TYPE=MyISAM AUTO_INCREMENT=127 

Me está volviendo loco este tema. Ya llevo dos días y nada.

Lo curioso del tema es que si elimino un registro, y vuelvo a insertar uno si lo crea, pero ya no me crea otro...

Aquí deben haber Meigas (brujas)

Bueno un saludo a todos.
  #2 (permalink)  
Antiguo 15/05/2005, 04:06
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 15 años, 10 meses
Puntos: 771
Hola Faser

Veo en el manual de MySQL (no se si será esa tu base de datos) que el tipo tinyint solo puede almacenar valores de -128 a 127. Prueba cambiando el tipo del campo id a ver si se soluciona.

Suerte. Saludos,
  #3 (permalink)  
Antiguo 15/05/2005, 05:08
 
Fecha de Ingreso: noviembre-2002
Mensajes: 125
Antigüedad: 15 años, 1 mes
Puntos: 0
Perfecto JavierB.
es justamente lo que me sucedia. Lo cambie a INT y funciona a la perfección.
Culpa mia por no revisar el manual

Muchas gràcias por tu rápida respuesta
Un saludo
  #4 (permalink)  
Antiguo 15/05/2005, 18:13
 
Fecha de Ingreso: febrero-2005
Mensajes: 867
Antigüedad: 12 años, 10 meses
Puntos: 3
y que pasa cuando tienes un campo identificador int not null, y no se auto incrementa
  #5 (permalink)  
Antiguo 15/05/2005, 18:32
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
Cita:
Iniciado por coyote20
y que pasa cuando tienes un campo identificador int not null, y no se auto incrementa
Tú tienes ese problema??.. muestra cómo creaste la tabla y cómo insertas datos en ella...
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #6 (permalink)  
Antiguo 16/05/2005, 10:49
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Otro detalle ..

para campos autonuméricos, lo lógico es que cuentes de 0 a N .. por ende si le dices al campo que sea de tipo "UNSIGNED" obtendras ese rando de 0 a N (en tu caso inicial de 0 a 255 . en un INT de 0 a lo que corresponda .. etc)

Un saludo,
  #7 (permalink)  
Antiguo 16/05/2005, 12:36
 
Fecha de Ingreso: febrero-2005
Mensajes: 867
Antigüedad: 12 años, 10 meses
Puntos: 3
JA1138 me pregunta sobre mi problema pues aqui esta en la tabla tengo


CREATE TABLE `mensaje` (
`id` bigint(7) NOT NULL auto_increment,
`sid` varchar(32) NOT NULL default '',
`identificador` varchar(32) NOT NULL default '',
`categorias` varchar(32) NOT NULL default '',
`titulo` varchar(30) NOT NULL default '',
`precioventas` varchar(15) NOT NULL default '',
`mensaje` varchar(140) NOT NULL default '',
`fecha` datetime NOT NULL default '0000-00-00 00:00:00',
`respuestas` int(30) NOT NULL default '0',
`ult_respuesta` datetime default NULL,
UNIQUE KEY `id_2` (`id`),
KEY `id` (`id`)
) TYPE=MyISAM AUTO_INCREMENT=10 ;

todo los campos me anda bien menos el identificador que es el que necesito el formulario es el siguiente

<form name="f" action =agregar.php method=post><B>Categoria de su Anuncio</b>
<select name="categorias" >
<option value="0" >Elija una Categoria</option>
<option value="0101"
>Servicios Varios</option>
<option value="0201"
>Articulos del Hogar</option>
<option value="0301"
>Bienes Raices - Apartamentos</option>
<option value="0302"
>Bienes Raices - Casas</option>
<option value="0303"
>Bienes Raices - Habitaciones</option>
<option value="0304"
>Bienes Raices - Locales Comerciales</option>
<option value="0305"
>Bienes Raices - Naves Industriales</option>
<option value="0306"
>Bienes Raices - Solares</option>
<option value="0307"
>Bienes Raices - Fincas</option>
<option value="0401"
>Equipos Electronicos - Equipos de Musica/Sonido</option>
<option value="0402"
>Equipos Electronicos - Celulares & Comunicacion</option>
<option value="0403"
>Equipos Electronicos - Otros</option>
<option value="0501"
>Computadoras</option>
<option value="0601"
>Vehiculos - Automoviles</option>
<option value="0602"
>Vehiculos - Camiones</option>
<option value="0603"
>Vehiculos - Camionetas</option>
<option value="0604"
>Vehiculos - Jeepetas</option>
<option value="0605"
>Vehiculos - Motocicletas</option>
<option value="0701"
>Ofertas de empleo</option>
<option value="0702"
>Solicitud de empleo</option>
<option value="0801"
>Ventas Diversas</option>
</select>
</tr>
<tr>
<table width="90%" border="0" cellspacing="2" cellpadding="2">
<input type="hidden" name="identificador" value="<?=$id?>">
<tr>
<td width="30%" align="right">Titulo </td>
<td><input type="text" name="titulo"></td>
</tr>
<tr>
<td width="30%" align="right">Precio</td>
<td><input type="text" name="precioventas"></td>
</tr>
<tr>
<td width="30%" align="right">Mensaje</td>
<td><textarea name="mensaje" cols="50" rows="5"></textarea></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" name="Submit" value="Enviar Mensaje"></td>
</tr>
</form>


fijate que desde esta linea <input type="hidden" name="identificador" value="<?=$id?>"> se supone que se autoincrementa apartir de 10 junto con el id el id

luego del formulario paga a agregar.php que es donde se dirige a la base de datos

y el agregar.php

<?php
require('configuracionn.php');
$categorias = $_POST["categorias"];
$titulo = $_POST["titulo"];
$precioventas = $_POST["precioventas"];
$mensaje = $_POST["mensaje"];
$identificador = $_POST["identificador"];
//Hacemos algunas validaciones

if(empty($titulo)) $titulo = "Anónimo";
if(empty($precioventas)) $precioventas = "Sin título";

//Evitamos que el usuario ingrese HTML
$mensaje = htmlentities($mensaje);

// Grabamos el mensaje en la base.
$sql = "INSERT INTO mensaje (categorias, titulo, mensaje, precioventas, identificador, fecha, ult_respuesta) ";
$sql.= "VALUES ('$categorias','$titulo','$mensaje','$precioventas ','$identificador',NOW(),NOW())";
$rs = mysql_query($sql, $con) or die("Error al grabar un mensaje: ".mysql_error);
$ult_id = mysql_insert_id($con);

echo 'Registro exitoso. Su mensaje ah sido enviado!
<br>
<a href="computadoras.php?">anuncios</a>';

?>

el campo id se autoincrementa como tiene que ser pero no el campo identificador si este campo lo cambio por identificador int(8) NOT NULL, me coje valor cero y no se aumenta alguna solucion

ayuda porfa gracias
  #8 (permalink)  
Antiguo 16/05/2005, 13:47
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
coyote20

Fuera de tu problema concreto .. revisa como defines tus campos .. porqué usar un "bigint" con signo no es que sea lo mismo que un "int" sin signo (UNSIGNED) pero sería más adecuado .. por qué tus "autonuméricos" comienzan en 0 .. así que todo lo menor a 0 lo estás descartando y perdiendo.

Un saludo,
  #9 (permalink)  
Antiguo 16/05/2005, 23:59
 
Fecha de Ingreso: febrero-2005
Mensajes: 867
Antigüedad: 12 años, 10 meses
Puntos: 3
Cita:
Iniciado por Cluster
coyote20

Fuera de tu problema concreto .. revisa como defines tus campos .. porqué usar un "bigint" con signo no es que sea lo mismo que un "int" sin signo (UNSIGNED) pero sería más adecuado .. por qué tus "autonuméricos" comienzan en 0 .. así que todo lo menor a 0 lo estás descartando y perdiendo.

Un saludo,

jejejeje hola clu eeee no entendi mucho lo que me dijiste estara bien el campo identificador y el ingreso del formulario
<input type="hidden" name="identificador" value="<?=$id?>">

el id bigint(7) auto_increment ese campo me anda bien
el campo que no me coje valor es el identificador que dberia de comenzar desde 10

bueno si hay otra forma de hacerlo mejor y mas seguro me avisas gracias

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 17:28.