Foros del Web » Programando para Internet » PHP »

problema con botones enPHP

Estas en el tema de problema con botones enPHP en el foro de PHP en Foros del Web. saludos debo entregar este prog acerca de calorias, trata de que mediante la base de datos postgres, se conecte el usuario, seleccione lo que quiere ...
  #1 (permalink)  
Antiguo 09/04/2009, 19:25
 
Fecha de Ingreso: abril-2009
Mensajes: 13
Antigüedad: 15 años
Puntos: 0
saludos debo entregar este prog acerca de calorias, trata de que mediante la base de datos postgres, se conecte el usuario, seleccione lo que quiere comer y el programa le dice cuantas calorias le faltan o le sobran, (aqui les dejo el enlace con todos los archivos php solo conectenlo al postgres en su compu y listo...
) y ps nada aun no he podido con dos botones, la funcion de ellos el uno es borrar todo lo que tenga el archivo calorias.dat, y el otro mediante de un checkbox, segun lo que quieran quitar de la lista que se borre del archivo, en el archivoque van los botones es en consolidado.php, ahi lo dejo gracias...

Código PHP:
       <div align='center'>
       <
p><input type='submit' value='quitar' name='quitar' onClick "quitar()">
       <
input type='submit' value='limpiar' name='limpiar' onClick "limpiar()">
       </
div>
       </
form>
  </
body>
</
html
pd:porfa vean el doc completo que por las noramsdepublicacion no me lo dejo pergar todo se llama consolidado.php

gracias

h.t.t.p.:././.w.w.w.4.s.h.a.r.e.d.c.o.m./.f.i.l.e./.9.7.6.9.0.4.4.6./.d.a.5.d.e.e.5.1./.N.u.t.r.ic.i.o.n.h.t.m.l.
disculpen de aqui los pueden bajar solo que por las politicas de seguriadad del foro no pude poner la dir bien solo quiten los puntos y dejen los normalitos...
LSD
GRACIAS

Última edición por GatorV; 11/04/2009 a las 23:31
  #2 (permalink)  
Antiguo 09/04/2009, 19:54
Avatar de dannce4life  
Fecha de Ingreso: junio-2008
Ubicación: localhost
Mensajes: 137
Antigüedad: 15 años, 10 meses
Puntos: 6
Respuesta: problema con botones enPHP

es bastante facil de resolver.

primero tienen que buscar un pequeño programa ajax que use xmlhttprequest, una vez establecido el codigo javascript, llamas al php mediante éste.

aqui tienes algo parecido. espero te funcione
__________________
Gracias
  #3 (permalink)  
Antiguo 12/04/2009, 10:38
 
Fecha de Ingreso: abril-2009
Mensajes: 13
Antigüedad: 15 años
Puntos: 0
Respuesta: problema con botones enPHP

Cita:
Iniciado por dannce4life Ver Mensaje
es bastante facil de resolver.

primero tienen que buscar un pequeño programa ajax que use xmlhttprequest, una vez establecido el codigo javascript, llamas al php mediante éste.
aqui tienes algo parecido. espero te funcione
primero que todo gracias por responder,
lo malo es qeu no puedo usar ajax porque es un trabajo de solo php...
please alguien que me colabore que estoy embalada jejeje.
gracias
LSD
  #4 (permalink)  
Antiguo 12/04/2009, 10:43
Avatar de duskrow  
Fecha de Ingreso: abril-2008
Mensajes: 267
Antigüedad: 16 años
Puntos: 8
bajando codigo

La verdad no entendi muy bien lo que quieres acer , ya estoy dentro del archivo consolidado, pero explicame poquito mas, detalladamente de lo que quieres hacer :)

Buenas a todos, aprovecho este espacio para preguntar si se puede modificar la arquitectura de los modulos de symfony, o sea los modulos tienen una carpeta actions y otra templates con sus particularidades, yo quisiera saber si se puede definir un modulo con la estructura de carpetas y de archivos que yo entienda....Saludos

Última edición por GatorV; 12/04/2009 a las 16:41
  #5 (permalink)  
Antiguo 12/04/2009, 13:17
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: problema con botones enPHP

Cita:
primero que todo gracias por responder,
lo malo es qeu no puedo usar ajax porque es un trabajo de solo php...
Pero estas usando Javascript, y AJAX es solamente enviar un request "por debajo" al servidor usando Javascript. De lo contrario tendras que enviar el formulario para que se ejecute el codigo PHP.
  #6 (permalink)  
Antiguo 12/04/2009, 15:55
 
Fecha de Ingreso: abril-2009
Mensajes: 13
Antigüedad: 15 años
Puntos: 0
Respuesta: problema con botones enPHP

Cita:
Iniciado por duskrow Ver Mensaje
La verdad no entendi muy bien lo que quieres acer , ya estoy dentro del archivo consolidado, pero explicame poquito mas, detalladamente de lo que quieres hacer :)
debo activar la funcion de ellos el uno es borrar todo lo que tenga el archivo calorias.dat, es donde se almacena lo que selecciona el usuario de frutas, lactos, y eso.. y el otro al selecciona el checkbox, seleccionando el alimento que quieran quitar de la lista que se borre del archivo calorias.dat...

y...

Cita:
Iniciado por Ronruby Ver Mensaje
Pero estas usando Javascript, y AJAX es solamente enviar un request "por debajo" al servidor usando Javascript. De lo contrario tendras que enviar el formulario para que se ejecute el codigo PHP.
si si lo siento puedo hacerlo en ajax prodrias explicarme un triz please mas o menos como seria, la verdad apenas he empezado con ajax...

gracias
LSD
  #7 (permalink)  
Antiguo 13/04/2009, 15:06
Avatar de dannce4life  
Fecha de Ingreso: junio-2008
Ubicación: localhost
Mensajes: 137
Antigüedad: 15 años, 10 meses
Puntos: 6
Respuesta: problema con botones enPHP

jaja, luisa...

primero: si trabajas con base de datos, no te conviene crear un campo en la tabla del usuario que diga "calorias"?
segundo: el archivo calorias.dat se tiene que ubicar en una carpeta llamada usuarios y se debe llamar "calorias_usuariotal.dat, para que cada uno tenga su plan correspondiente.
tercero: el uso de js lo hace mas dinamico y professional, tu estas diciendo que no puedes usarlo, sin embargo en esta linea se lo está empleando
Código php:
Ver original
  1. <input type='submit' value='quitar' name='quitar' onClick = "quitar()">

finalmente, te dejo lo que necesitas. creo mas o menos haber entendido:

Código php:
Ver original
  1. $usuario = 'luisa';
  2. $carpeta_usuarios = 'usuarios';
  3.  
  4. if(!is_dir($carpeta_usuarios)) exit('No se encuentra la caperta de usuarios.');
  5. $archivo = $carpeta_usuarios.'/calorias_'.$usuario.'.dat';
  6.  
  7. (file_exists($archivo)) ? $modo = 'r+' : $modo = 'x';
  8.  
  9. if(!($apertura = fopen($archivo,$modo)))  die('Error al crear/escribir el archivo.');  
  10.  
  11. if(isset($_GET['eliminar']))
  12. {
  13.     if (!unlink($archivo))
  14.         exit('No se puede escribir en el archivo.');
  15.     else
  16.         print htmlentities('Se eliminó correctamente el contenido del archivo de calorías');
  17. }
  18. elseif(isset($_GET['limpiar']) && isset($_GET['valor']))
  19. {
  20.     $valor = urldecode($_GET['valor']);
  21.    
  22.     if(!($str = file_get_contents($archivo))) exit('Error al leer archivo');
  23.     else
  24.         if($nuevo_valor = str_replace($valor,'',$str))
  25.         {
  26.             if(!($apertura_ = fopen($archivo,'w+')))  die('Error al escribir el archivo.');  
  27.             else
  28.                 if(fwrite($apertura_, $nuevo_valor)) print 'Se ha quitado: '. $valor;
  29.                 else print 'No se pudo quitar: '. $valor;
  30.            
  31.         }
  32.         else
  33.             print 'No se pudo quitar: '. $valor;
  34. }
  35. else
  36. {
  37.     print 'No se ha definido el parametro';
  38. }

logicamente los campos html deben ser asi:
Código html:
Ver original
  1. <input type="submit" name="quitar" value="1" />
  2. <input type="submit" value="1" name="limpiar" />
  3. <input name="valor" type="radio" value="<?=urlencode($valor)?>" />

espero te sirva luisa.
un saludo.
__________________
Gracias
  #8 (permalink)  
Antiguo 14/04/2009, 14:04
 
Fecha de Ingreso: abril-2009
Mensajes: 13
Antigüedad: 15 años
Puntos: 0
Respuesta: problema con botones enPHP

Cita:
Iniciado por dannce4life Ver Mensaje
jaja, luisa...

primero: si trabajas con base de datos, no te conviene crear un campo en la tabla del usuario que diga "calorias"?
segundo: el archivo calorias.dat se tiene que ubicar en una carpeta llamada usuarios y se debe llamar "calorias_usuariotal.dat, para que cada uno tenga su plan correspondiente.
tercero: el uso de js lo hace mas dinamico y professional, tu estas diciendo que no puedes usarlo, sin embargo en esta linea se lo está empleando
Código php:
Ver original
  1. <input type='submit' value='quitar' name='quitar' onClick = "quitar()">

finalmente, te dejo lo que necesitas. creo mas o menos haber entendido:

Código php:
Ver original
  1. $usuario = 'luisa';
  2. $carpeta_usuarios = 'usuarios';
  3.  
  4. if(!is_dir($carpeta_usuarios)) exit('No se encuentra la caperta de usuarios.');
  5. $archivo = $carpeta_usuarios.'/calorias_'.$usuario.'.dat';
  6.  
  7. (file_exists($archivo)) ? $modo = 'r+' : $modo = 'x';
  8.  
  9. if(!($apertura = fopen($archivo,$modo)))  die('Error al crear/escribir el archivo.');  
  10.  
  11. if(isset($_GET['eliminar']))
  12. {
  13.     if (!unlink($archivo))
  14.         exit('No se puede escribir en el archivo.');
  15.     else
  16.         print htmlentities('Se eliminó correctamente el contenido del archivo de calorías');
  17. }
  18. elseif(isset($_GET['limpiar']) && isset($_GET['valor']))
  19. {
  20.     $valor = urldecode($_GET['valor']);
  21.    
  22.     if(!($str = file_get_contents($archivo))) exit('Error al leer archivo');
  23.     else
  24.         if($nuevo_valor = str_replace($valor,'',$str))
  25.         {
  26.             if(!($apertura_ = fopen($archivo,'w+')))  die('Error al escribir el archivo.');  
  27.             else
  28.                 if(fwrite($apertura_, $nuevo_valor)) print 'Se ha quitado: '. $valor;
  29.                 else print 'No se pudo quitar: '. $valor;
  30.            
  31.         }
  32.         else
  33.             print 'No se pudo quitar: '. $valor;
  34. }
  35. else
  36. {
  37.     print 'No se ha definido el parametro';
  38. }

logicamente los campos html deben ser asi:
Código html:
Ver original
  1. <input type="submit" name="quitar" value="1" />
  2. <input type="submit" value="1" name="limpiar" />
  3. <input name="valor" type="radio" value="<?=urlencode($valor)?>" />

espero te sirva luisa.
un saludo.
jejeje gracias...
y te respondo: el campo calorias en la base de datos, la tiene cuando el usuario se registra por primera vez ingresa la cantidad de calorias que requiere.

lo de calorias.dat, es un archivo para todos, por ello se debe limpiar para el siguiente usuario, (la verdad no se como implementar lo que me dices para cada usuario ).

y me equivoque con lo que puedo usar jeje, lo que pasa es qeu ando en otro proyecto que es de solo PHP y lo confundi sorry...

para implementar lo que me dices (el codigo) debo hacer los cambios que me dices?...

y muchasss gracias seguro que tengo que hacerlo mas tardar para esta misma semana, y no me dan

gracias
LSD
  #9 (permalink)  
Antiguo 14/04/2009, 14:11
Avatar de dannce4life  
Fecha de Ingreso: junio-2008
Ubicación: localhost
Mensajes: 137
Antigüedad: 15 años, 10 meses
Puntos: 6
Respuesta: problema con botones enPHP

la verdad es que no se entiende muy bien.

sin dar mas vueltas te doy el recurso para usar ajax aqui y un ejemplo para que veas el funcionamiento.

un saludo.
__________________
Gracias
  #10 (permalink)  
Antiguo 14/04/2009, 14:31
 
Fecha de Ingreso: abril-2009
Mensajes: 13
Antigüedad: 15 años
Puntos: 0
Respuesta: problema con botones enPHP

Cita:
Iniciado por dannce4life Ver Mensaje
la verdad es que no se entiende muy bien.

sin dar mas vueltas te doy el recurso para usar ajax para que veas el funcionamiento.

un saludo.
jeje no se entiende que?
muchas gracias de nuevo ;)
lsd
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:58.