Foros del Web » Programando para Internet » PHP »

un imposible.

Estas en el tema de un imposible. en el foro de PHP en Foros del Web. como puedo hacer para que una pagina hecha en php y mysql tengo un periodo de duracion, me explico que al tercer mes de duracion ...
  #1 (permalink)  
Antiguo 20/09/2003, 23:44
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 9 meses
Puntos: 5
un imposible.

como puedo hacer para que una pagina hecha en php y mysql tengo un periodo de duracion, me explico que al tercer mes de duracion se borre, con esto me refiero a que se borren los datos de la bd (mysql), y que ademas cuando los usuarios manden noticias, primero tengan que ser vistas por mi para que sean publicadas.


salu2
  #2 (permalink)  
Antiguo 21/09/2003, 04:15
 
Fecha de Ingreso: noviembre-2002
Ubicación: Barcelona - España
Mensajes: 270
Antigüedad: 21 años, 4 meses
Puntos: 0
Trabaja con fechas para que se borren a los 3 meses y un formulario para que te lleguen a ti las noticias.
  #3 (permalink)  
Antiguo 21/09/2003, 11:04
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 9 meses
Puntos: 5
eso lo tengo re claro pero no se como hacerlo...

alguna sugerencia.


salu2
  #4 (permalink)  
Antiguo 21/09/2003, 18:55
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 2 meses
Puntos: 129
Bueno .. todo esto lo puedes resolver con SQL ..

El tema de que sean validadas tus noticias por un administrador antes de que se publiquen .. Puedes usar un campo extra que será un "flag" (bandera .. estado) .. a ON o a OFF o 1 o 0 o como quieras ajustarlo .. El caso que cuando publiquen mensajes .. estos quedarán por defecto en el estado "OFF" .. y cuando tus los valides pasaran a ON (le haras un UPDATE a dicho campo) .. a su vez las consultas serán tipo ... WHERE estado="ON" para las noticas "publicas" y para tu sección de administracion .. las WHERE estado="OFF" ..

Lo del tema de borrado automático y .. todo el resto lo gestionas con FECHAS y condicionales (WHERE) .... en tu DELETE ..

Para esto . visita el foro de "base de datos" o el manual de mysql.com para que veas como se trabaja con FECHAs.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 21/09/2003, 19:05
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 9 meses
Puntos: 5
el "flag" es un tipo de dato?

como por ejemplo "varchar"


salu2
  #6 (permalink)  
Antiguo 21/09/2003, 19:17
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 2 meses
Puntos: 129
el "flag" no es un tipo de dato .. sino un "concepto" .. Determina "estados" .. concretamente "DOS" .. uno de "activo" .. o "inactivo" .. o 1 y 0 .. u "on" u "off" ..

Por lo tanto . si ese "flag" lo trabajas como "1 y 0" pues puede ser un "smallint" (numérico) .. En realidad podría servirte un tipo de dato "boolean" pero en Msyql que recuerde no hay (lo más pareceido .. hacertelo tu mismo con uno numérico .. o un CHAR y guardas sólo un caracter ..)

Si guadars "activo" .. e "incactivo" .. pues podrías usar un campo EMUM() .. o un VARCHAR .. Eso es lo de menos .. Pero, por supuesto si sabes que sólo tendrá "dos" estados (dos datos que almacenar y fijos .. uno u otro), usa un tipo de dato que consuma poco espacio en tu BD .. (un CHAR por ejmplo .. a 1 caracter sólo de tamaño .. o un smallint ..)

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #7 (permalink)  
Antiguo 21/09/2003, 19:26
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 9 meses
Puntos: 5
grax lo hare asi, perdona mi inocencia, pero cuando agregue este famoso campo de 1 o 0 mi problema quedara solucionado o tendre ke hacer un script en php para que reconozxca esta condicion, se me ocurre algo con un if, pero decirle que no lo muestre me complica..

Código PHP:
$consulta mysql_query(select flag form usuarios "no se ke poner");
$ver=mysql_num_rows($consulta);
if (
$ver == 0)
echo = 
"no la muestra";
{

}else{

echo =
"la muestro"
algo asi ono???


salu2

Última edición por cadrogui; 21/09/2003 a las 19:30
  #8 (permalink)  
Antiguo 22/09/2003, 19:58
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 2 meses
Puntos: 129
En "no se ke poner" ya te lo mencioné ..

Para listar tus noticias que han sido validadas ...
$consulta = mysql_query(select * form usuarios WHERE flag='1'");

Y las que no han sido validadas ..
$consulta = mysql_query(select * form usuarios WHERE flag='0'");

Y el tipo de campo .. un CHAR o .. mejor un ENUM('0','1')

Cuando des de alta el registro (hagas el INSERT) .. deja el campo flag='0' y rellena con tus variables "PHP" el resto de campos que necesites en esa tabla de usuarios ... así quedarán pendientes de que tu pases ese campo a '1' manualmente ..

El hecho de pasar ese flag a '1' manualmente es cosa de hacer un UPDATE a ese campo:

UPDATE usuario SET flag='1'

O bien borras el registro (DELETE) si no corresponde ..

Te recomiendo que leas un manual de SQL (el de Msyql) .. por qué ... si bien estás aprendiendo a programar en PHP .. ahora estás usando Base de datos (en concreto Mysql) y las "base de datos" se les mandan "instrucciones" en lenguaje SQL (Structural Query Languaje, o algo así si mi ingles no me falla mucho: Lenguaje estructurado de consultas ..).

Y .. Recuerda .. TODO lo que puedas hacer en SQL .. mejor hazlo en SQL y no en PHP .. Piensa en SQL como un lenguaje más que debes apredender a usarlo ..

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #9 (permalink)  
Antiguo 22/09/2003, 22:50
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 9 meses
Puntos: 5
gracias por tu ayuda master...


salu2
  #10 (permalink)  
Antiguo 22/09/2003, 23:23
Avatar de oktubre  
Fecha de Ingreso: agosto-2003
Ubicación: en mi casa
Mensajes: 371
Antigüedad: 20 años, 6 meses
Puntos: 4
si quedó porahi, clusterme pasó el dato de como consultar con fechas, es bastantesimple, mi scrip empesó a fallar pero te lo dejopara quetengas una idea
SELECT * FROM Tabla
WHERE TO_DAYS(NOW()) - TO_DAYS(columna_fecha) <= 4;

yo agregue a mis tablas uncampo que se carga con now(), osea la fecha en que se ejecutó elarchibo, vospor ahí lo quenecesitas es usar la fecha de cuando vos lo autorizas

bye
__________________
w32.oktubre@mm <----------------<<<<
prefiero cerrar la boca y parecer un tonto que abrirla y confirmarlo.
  #11 (permalink)  
Antiguo 22/09/2003, 23:30
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 9 meses
Puntos: 5
grax man pero, la consulta de fechas la tengo asi:

Código PHP:
(select from usuarios between 10/12/2003 and 10/01/2004)

//o puede ser mas bonita.

//dando las fechas como variables para que tu las ingreses en un //form para ralizar busquedas:

(select from usuarios betwee $fecha1 and $fecha2)

//anque en realidad me asalta una duda, pq tambien puede ser asi

(select from usuarios betwee fecha1='$fecha1' and fecha2='$fecha2')

//ma me tinca la segunda.. 
salu2
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:33.