Foros del Web » Programando para Internet » PHP »

llenar texbox con ulitmo IDautonumrico +1 de BD

Estas en el tema de llenar texbox con ulitmo IDautonumrico +1 de BD en el foro de PHP en Foros del Web. estoy haciendo varios formularios k tienen id autoincrementables y al momento de cargar mi formulario kiero k me aparezcan en mi texbox id por ejemplo ...
  #1 (permalink)  
Antiguo 29/09/2006, 15:03
 
Fecha de Ingreso: septiembre-2006
Mensajes: 196
Antigüedad: 17 años, 7 meses
Puntos: 0
llenar texbox con ulitmo IDautonumrico +1 de BD

estoy haciendo varios formularios k tienen id autoincrementables y al momento de cargar mi formulario kiero k me aparezcan en mi texbox id

por ejemplo de mi tabla sala

Código:
CREATE TABLE sala (
   ID_SALA int(11) DEFAULT '0' NOT NULL AUTO_INCREMENT,
   ID_RSALA int(11) DEFAULT '0' NOT NULL,
   TIPO_SALA varchar(50),
   NOMBRE_SALA varchar(50),
   CAPACIDAD_SALA int(11),
   PRIMARY KEY (ID_SALA),
   KEY PIDE_FK (ID_RSALA)
);
y en reg_sala.php mi textbox este
Código:
<input type="text" name="id">
k es lo k tengo k hacer para darle automaticamente el valor del ultimo id_sala+1 para ingresarlo en el proximo registro
  #2 (permalink)  
Antiguo 29/09/2006, 15:25
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 6 meses
Puntos: 11
Puedes hacer una consulta sql, asi:

Código PHP:
<?php
   $sql
="select (max(id) +1) as nuevoid from sala";
   
$rs=mysql_query($sql);
   
$fila=mysql_fetch_assoc($rs);
   
?>
<input type="text" name="id" value="<?php echo $fila['nuevoid'];?>">
  #3 (permalink)  
Antiguo 29/09/2006, 16:22
Avatar de skatomundo  
Fecha de Ingreso: junio-2002
Ubicación: Santiago - CL
Mensajes: 2.532
Antigüedad: 21 años, 10 meses
Puntos: 125
Sería tu último valor + 1, y que si alguien en ese momento almacena un valor antes que tu!

ya no sería tu valor+1.
  #4 (permalink)  
Antiguo 29/09/2006, 16:29
 
Fecha de Ingreso: septiembre-2006
Mensajes: 196
Antigüedad: 17 años, 7 meses
Puntos: 0
no lo habia pensado, pero creo que se puede solucionar volviendo a obtener el id al hacerun submit, idependiente de lo que muestre el cuadro de texto ya k de todas maneras lo voy a dejar disabled. asi si muestra un 8, deberia ingresar un 9, pero si alguien ingresa antes, obtengo el 9 como ultimo e ingresaria un 10 pero seria un mal detalle pero de todas maneras el valor id kedaria correlativo.
no se mi me explique bien :D

lo otro seria solucionarlo con ajax, pero yo ya no lo use en pi sistema.
  #5 (permalink)  
Antiguo 29/09/2006, 23:23
 
Fecha de Ingreso: septiembre-2006
Mensajes: 196
Antigüedad: 17 años, 7 meses
Puntos: 0
claudiovega sabes no me resulto el codigo k me mandaste me aprecio este error:
Warning: Supplied argument is not a valid MySQL result resource in C:\apache\htdocs\dream\1reg_com.php on line 283

<?php
$sql="SELECT (max(id) +1) as nuevoid FROM sala";
$rs=mysql_query($sql);
$fila=mysql_fetch_assoc($rs); ----->283

?>
no entendi la instrccuion asi k no puedo modificarlo yo, ojala lo puedas cambiar para k me funke
  #6 (permalink)  
Antiguo 30/09/2006, 20:52
 
Fecha de Ingreso: septiembre-2006
Mensajes: 196
Antigüedad: 17 años, 7 meses
Puntos: 0
alguien puede ayudarme porfavor??
  #7 (permalink)  
Antiguo 01/10/2006, 07:26
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 1 mes
Puntos: 77
Código:
SELECT (max(ID_SALA) +1) as nuevoid FROM sala
-o-
  #8 (permalink)  
Antiguo 01/10/2006, 07:37
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
Cita:
Iniciado por darkasecas Ver Mensaje
Código:
SELECT (max(ID_SALA) +1) as nuevoid FROM sala
-o-
Sería lo mismo que esto?

Código:
SELECT id_sala FROM sala ORDER BY id_sala DESC LIMIT 1
xD ?? O no??
  #9 (permalink)  
Antiguo 01/10/2006, 07:49
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 1 mes
Puntos: 77
Cita:
Iniciado por spider_boy Ver Mensaje
Sería lo mismo que esto?
Código:
SELECT id_sala FROM sala ORDER BY id_sala DESC LIMIT 1
xD ?? O no??
En realidad sería lo mismo que esto
Código:
SELECT id_sala+1 FROM sala ORDER BY id_sala DESC LIMIT 1
>_>
  #10 (permalink)  
Antiguo 01/10/2006, 08:00
 
Fecha de Ingreso: septiembre-2006
Mensajes: 196
Antigüedad: 17 años, 7 meses
Puntos: 0
xcias darksecas se me habia pasado ese detalle xD, pero me sale el mismo error "Supplied argument is not a valid MySQL result resource..." en la linea de $fila=mysql_fetch_assoc($rs); , que significa y como lo soluciono?
  #11 (permalink)  
Antiguo 01/10/2006, 08:08
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 1 mes
Puntos: 77
Muchas veces significa que no te puedes conectar a la bd, o que la sentencia sql no es correcta, no veo ningun error en el sql, antes de hacer eso si estas abriendo la conexion a la bd?
  #12 (permalink)  
Antiguo 01/10/2006, 08:38
 
Fecha de Ingreso: septiembre-2006
Mensajes: 196
Antigüedad: 17 años, 7 meses
Puntos: 0
Sii eso era xcias draksecas , ahora puedo ver mi ultmo id en el textbox.
ahora cuendo no tengo registros en mi tabla, no me muestra nada asi k le estoy tratando de hacer una validacion, por favor mirenla:

Código PHP:
<?php
include "conexion.php";
$result mysql_query("SELECT * FROM computador"$conexion);
if (
$row mysql_fetch_array($result)){
//se conecta a BD y selecciona todo de computador, y si encuentra registros:

   
$sql="SELECT (max(id_com)+1) as nuevoid FROM computador";
   
$rs=mysql_query($sql);
   
$fila=mysql_fetch_assoc($rs);
   }
   
  else{
  
//DUDAA no se la sintaxis corrcta, porfavor corrijanmela. cuando la tabla computador esta vacia, 
//no muestra nada en el textbox, e me ocurrienron 2 formas para llenarla pero no puedo probarlas
// si no estan bien escritas
 
//    $nuevoid = 1; 
//1) el valor de nuevoid=1 

//form1.id.value=1;
//(2 el valor de id que el name de mi textfield =1
   
}
   
?>
  #13 (permalink)  
Antiguo 01/10/2006, 08:45
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 1 mes
Puntos: 77
que tal asi?
Código PHP:
<?php
include "conexion.php";
$result mysql_query("SELECT * FROM computador"$conexion);
if (
$row mysql_fetch_array($result)){
//se conecta a BD y selecciona todo de computador, y si encuentra registros:

   
$sql="SELECT (max(id_com)+1) as nuevoid FROM computador";
   
$rs=mysql_query($sql);
   
$fila=mysql_fetch_assoc($rs);
   
$nuevoid=$fila['nuevoid'];
   }
  else{
    
$nuevoid 1
   }
?> 
<input type="text" name="id" value="<?php echo $nuevoid;?>">
  #14 (permalink)  
Antiguo 01/10/2006, 09:23
 
Fecha de Ingreso: septiembre-2006
Mensajes: 196
Antigüedad: 17 años, 7 meses
Puntos: 0
mmm ya se me ocurrio que es lo que puede ser, el codigo no creo k este malo, pero revise mi base y me ingresa un valor 0, osea no me ta ingresando el id, sera pk tengo k usar get y post??como te digo tengo las ideas pero no la sintaxis asi k como tendria k kedar esto?

esta es la consulta de crea_com.php
Cita:
$query="INSERT INTO computador (id_com) VALUES ('$id_com')";
ah y ya le cambie el name a id_com al textfield

Última edición por gazuzax; 01/10/2006 a las 09:43
  #15 (permalink)  
Antiguo 01/10/2006, 09:58
 
Fecha de Ingreso: septiembre-2006
Mensajes: 196
Antigüedad: 17 años, 7 meses
Puntos: 0
al fin, ya lo solucionee, nada k ver lo que yo decia fue un error mio, estaba bien tu forma darksecas, alfin tengo un id autonumericoo! :D

YO NO LO SABIA PERO SI KIEREN K NO MODIFIQUEN EL ID NO PONGAN EL CUADRO DE TEXTO DISABLED PORQUE NO SE INGRESARA EN LA BASE DE DATOS, MEJOR PONGAN UNA FUNCION EN JAVASCRIPT QUE NO DEJE ESCRIBIR NADA ENCIMA

EJEMPLO:

Cita:
<script>
function validar_int(evt)
{
evt = (evt) ? evt : event
var key = (evt.which) ? evt.which : evt.keyCode;
if (key > 47 && key < 58 || key == 8) { return true;}
else {return false;}
}
</script>

<input type="text" name="id_com" onKeyPress="return validar_int(event);">
esto es solo pra escribir nros enteros, ahi la modifican segun lo que necesiten, SALUDOOS
http://www.abcdatos.com/utiles/ascii.html

Última edición por gazuzax; 01/10/2006 a las 10:08
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 21:13.