Ver Mensaje Individual
  #2 (permalink)  
Antiguo 14/05/2009, 14:24
Grutzen
 
Fecha de Ingreso: mayo-2009
Mensajes: 8
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: Crear numeros de folios

me parece que te estás complicando demasiado la existencia...

a ver qué te parece esto.

$qry = "INSERT INTO contador SET contador=''"; // ojo, al final son dos ' seguidas de un "
$result = mysql_query($qry);
$id = mysql_insert_id(); //obtener el id del último registro insertado

$folio = 'ST'.str_pad($id,4,'0',STR_PAD_LEFT).date("Y"); //genera el folio en el formato que buscas

//actualizar la tabla... ver comentario más abajo....
$qry = "UPDATE contador set contador = $folio WHERE id = $id",
$result = mysql_query($qry);



Mejor aún, podrías hacer que la tabla contador solamente tenga el campo id y así te ahorras el segundo query ya que realmente de nada sirve que actualices el campo, ya que eso lo hacías tú por el select inicial.

Si eliminas el campo contador entonces te quedaría así:

$qry = "INSERT INTO contador SET id=''";
$result = mysql_query($qry);
$id = mysql_insert_id();
$folio = 'ST'.str_pad($id,4,'0',STR_PAD_LEFT).date("Y");

y listo, te queda el folio para insertarlo en tu otra tabla... ahora que si digamos que tienes una tabla llamada facturas o recibos, ordenes o lo que sea, pues elimina la tabla contador completamente y usa el mismo campo id de esa entidad guardando el folio generado en un campo adicional del mismo registro.

espero te sea útil.