Foros del Web » Programando para Internet » PHP »

insert base de datos

Estas en el tema de insert base de datos en el foro de PHP en Foros del Web. hola tengo una duda esta es una consulta que hago para generar una especie de alarma lo que pasa es que yo pongo que cada ...
  #1 (permalink)  
Antiguo 17/05/2012, 08:12
 
Fecha de Ingreso: marzo-2012
Ubicación: Bogota
Mensajes: 177
Antigüedad: 12 años, 7 meses
Puntos: 2
insert base de datos

hola
tengo una duda esta es una consulta que hago para generar una especie de alarma lo que pasa es que yo pongo que cada vez que se genere una alarma me la guarde en la tabla alarmas el problema que se me genera es que mi pagina se actualiza cada segundo entonces cada vez que actualize y siga la alarma me crea un registro nuevo hasta que vuelva a desaparecer la alarma como puedo solucionar este problema

como por ejemplo si a las 9:00:00 se genero la alarma "No_hay_agentes_disponibles" que solo me guarde una sola vez y no cada vez que actualize la pagina y cuando aparezca de nuevo hay crear otro registro y así sucesivamente


Código PHP:
$sqld=mysql_query("select disponibles from estadosskill16 where disponibles<>0") ;
        
        if(
mysql_num_rows($sqld)==0){
            
$hora_actual=date("h:i:s");
        
$Fecha_actual=date("d m Y");
    
$sqlinsertd mysql_query("INSERT INTO alarmas( Alarma,Skill,Hora,Fecha)
    VALUES ('No_hay_agentes_disponibles','16Datos','$hora_actual','$Fecha_actual')"
) or die(mysql_error());
    
$ejecutar mysql_query($sqlinsertd$conexion);
            echo 
"<table border='0' align='rigth'>"
            echo 
'<td class="estilo2" align="left"><input type="image" src="images/alerta.gif" width="40" height="35"/>'
            echo 
"<td class='estilo2' align='left'>Alarma por: No hay agentes Disponibles</td>"
            echo 
"</table>"
 } 

espero me ayuden es urgente
Gracias
  #2 (permalink)  
Antiguo 17/05/2012, 08:17
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 13 años, 3 meses
Puntos: 31
Respuesta: insert base de datos

amigo pon el codigo donde comparas la hora para k cree la alarma
  #3 (permalink)  
Antiguo 17/05/2012, 08:18
Avatar de djaevi  
Fecha de Ingreso: marzo-2007
Ubicación: Moreno, Buenos Aires
Mensajes: 400
Antigüedad: 17 años, 8 meses
Puntos: 47
Respuesta: insert base de datos

Podrias hacer un select previo que verifique si la alarma que vas a ingresar ya existe

Código PHP:
Ver original
  1. <?php
  2.  
  3. if (mysql_num_rows(mysql_query("SELECT Alarma FROM alarmas WHERE Alarma = 'No_hay_agentes_disponibles'")) > 0) {
  4. echo "esta alarma ya existe";
  5. }else{
  6. // SCRIPT QUE INGRESA LA ALARMA
  7. }
  8.  
  9. ?>


Saludos
  #4 (permalink)  
Antiguo 17/05/2012, 08:27
 
Fecha de Ingreso: marzo-2012
Ubicación: Bogota
Mensajes: 177
Antigüedad: 12 años, 7 meses
Puntos: 2
Respuesta: insert base de datos

Cita:
Iniciado por djaevi Ver Mensaje
Podrias hacer un select previo que verifique si la alarma que vas a ingresar ya existe

Código PHP:
Ver original
  1. <?php
  2.  
  3. if (mysql_num_rows(mysql_query("SELECT Alarma FROM alarmas WHERE Alarma = 'No_hay_agentes_disponibles'")) > 0) {
  4. echo "esta alarma ya existe";
  5. }else{
  6. // SCRIPT QUE INGRESA LA ALARMA
  7. }
  8.  
  9. ?>


Saludos
pero si yo hago ese if me estaria afectando las otras alarmas
por ejemplo si ingresa una a las 9:00:00 y se desactiva a las 9:05:00 y que se me vuelva a acrtivar por hay a las 12:00:00 y consulta la alrmas ya estara almacenada y no me guardaria la de las 12 lo que yo kiero es que no me guarde un registro cada segundo q me actualize la pagina
  #5 (permalink)  
Antiguo 17/05/2012, 08:31
 
Fecha de Ingreso: marzo-2012
Ubicación: Bogota
Mensajes: 177
Antigüedad: 12 años, 7 meses
Puntos: 2
Respuesta: insert base de datos

Cita:
Iniciado por gldelossantos Ver Mensaje
amigo pon el codigo donde comparas la hora para k cree la alarma
la fecha y la hora la ingreso

$hora_actual=date("h:i:s");
$Fecha_actual=date("d m Y");

y en el if cuando se genera la alarma me captura la hora y fecha del momento. pero como la pagina se actualiza cada segundo me genera muchos registros hasta que se quite la alrma
  #6 (permalink)  
Antiguo 17/05/2012, 08:33
Avatar de djaevi  
Fecha de Ingreso: marzo-2007
Ubicación: Moreno, Buenos Aires
Mensajes: 400
Antigüedad: 17 años, 8 meses
Puntos: 47
Respuesta: insert base de datos

no estoy entendiendo quiza como funciona tu sitio, aver el sitio que se actualiza cada 1 segundo es el que visitan todos los usuarios o lo visitas vos como administrador? , en tal caso creo que te convendria hacer otro php, como un modulo de administracion donde pongas un insertar alarma la hora la descripcion etc y tengas opciones para desactivarlas y activarlas cuando quisieras, por otra parte de donde provienen los datos que toma la pagina para crear la alarma cada vez que se actualiza?
  #7 (permalink)  
Antiguo 17/05/2012, 08:46
 
Fecha de Ingreso: marzo-2012
Ubicación: Bogota
Mensajes: 177
Antigüedad: 12 años, 7 meses
Puntos: 2
Respuesta: insert base de datos

Cita:
Iniciado por djaevi Ver Mensaje
no estoy entendiendo quiza como funciona tu sitio, aver el sitio que se actualiza cada 1 segundo es el que visitan todos los usuarios o lo visitas vos como administrador? , en tal caso creo que te convendria hacer otro php, como un modulo de administracion donde pongas un insertar alarma la hora la descripcion etc y tengas opciones para desactivarlas y activarlas cuando quisieras, por otra parte de donde provienen los datos que toma la pagina para crear la alarma cada vez que se actualiza?
El sitio lo visitan todos los usuarios tiene una serie de botones y cada boton muestra una informacion especifica
se activan 4 alarmas
1. No hay agentes logueados
2. No hay agentes disponibles
3. Hay llamadas en cola
4. Hay una llamada en cola superior a un minuto

cada php se esta actualizando cada segundo, la informacion la recojo de un archivo de texto que esta cambiando siempre; Entonces si aparece una alarma por no hay agentes logueados esporque en mi tabla la variable logueados= 0
entonces esa alarma queda asi hasta que logueados sea diferente de 0 entonces si se demora 15 segundos esa alarma me estaria guardando en la base de datos 15 registros con diferencia de 1 segundo cada uno, yo kiero que solo me guarde un registro y que si en una hora vuelva a aparecer una alarma me guarde otro registro, espero me puedas ayudar
Gracias

Etiquetas: insert, mysql, registro, sql, tabla
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 14:09.