Foros del Web » Programando para Internet » PHP »

if + sql

Estas en el tema de if + sql en el foro de PHP en Foros del Web. hola gente estoy creando algo que se le podría llamar juego , en el cual en el perfil muestro los datos del usuario miren tengo ...
  #1 (permalink)  
Antiguo 30/01/2010, 16:14
Avatar de danistrein  
Fecha de Ingreso: septiembre-2008
Ubicación: Salta Capital
Mensajes: 550
Antigüedad: 16 años, 2 meses
Puntos: 9
Pregunta if + sql

hola gente estoy creando algo que se le podría llamar juego , en el cual en el perfil muestro los datos del usuario miren tengo este code:


Código PHP:
Ver original
  1. if(vida == $categoria){
  2. $vida=$row['vida'];
  3. if($vida == 22){
  4. echo '<img src="vida_si.png" width="100%" height="12" />';
  5. }
  6. }

utilizo una tabla la cual tiene la cantidad de vida por ejemplo ahí les mostre un personaje que tiene 22 de vida.

ahora mi duda es como podría hacer para que automáticamente la vida se ajunte al width de la imagen alguien podría decirme?, para los que no me entienden quiero hacer esto miren:

Código PHP:
Ver original
  1. if(vida == $categoria){
  2.  
  3. $vida=$row['vida'];
  4.  
  5. if($vida == 22){
  6. echo '<img src="vida_si.png" width="100%" height="12" />';
  7. }
  8.  
  9. if($vida == 21){
  10. echo '<img src="vida_si.png" width="95%" height="12" />';
  11. }
  12.  
  13. if($vida == 20){
  14. echo '<img src="vida_si.png" width="90%" height="12" />';
  15. }
  16.  
  17.  
  18. if($vida == 19){
  19. echo '<img src="vida_si.png" width="85%" height="12" />';
  20. }
  21.  
  22. }

bueno espero que me puedan ayudar ^^.
__________________
Appones.net - www.appones.net
  #2 (permalink)  
Antiguo 30/01/2010, 16:18
Avatar de xbx
xbx
 
Fecha de Ingreso: mayo-2008
Ubicación: /home/xbx
Mensajes: 301
Antigüedad: 16 años, 6 meses
Puntos: 11
Respuesta: if + sql

Código PHP:
$vida=$row['vida'];
$width 100 5*(22-$vida);

echo 
'<img src="vida_si.png" width="'.$width.'%" height="12" />'
  #3 (permalink)  
Antiguo 30/01/2010, 16:29
Avatar de danistrein  
Fecha de Ingreso: septiembre-2008
Ubicación: Salta Capital
Mensajes: 550
Antigüedad: 16 años, 2 meses
Puntos: 9
Respuesta: if + sql

Cita:
Iniciado por xbx Ver Mensaje
Código PHP:
$vida=$row['vida'];
$width 100 5*(22-$vida);

echo 
'<img src="vida_si.png" width="'.$width.'%" height="12" />'

xbx, muchas gracias por tu respuesta me sirvió pero tengo un problema en el juego cada vez que un usuario suma un nivel la vida se va aumentando y si en la tabla vida tengo mas de 22 la imagen toma mas de 100% .

como podría hacer para evitar que se agrande mas de 100% y tome la imagen según la vida que tiene el personaje?
__________________
Appones.net - www.appones.net
  #4 (permalink)  
Antiguo 30/01/2010, 16:32
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: if + sql

pues primero debes definir un máximo de vida... que para variar, lo ideal sería un 100

Código PHP:
$var 22;
echo 
'<img width="'.$var.'%"/>'
y todos contentos!! (:
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 30/01/2010, 16:35
Avatar de metacortex
Viejo demente
 
Fecha de Ingreso: junio-2004
Ubicación: Caracas - Venezuela
Mensajes: 9.027
Antigüedad: 20 años, 5 meses
Puntos: 832
Respuesta: if + sql

Quizás también algo como

Código PHP:
Ver original
  1. $content = round(4.545 * $vida); // tomando el ejemplo de xbx
(4.545 es un aproximado a 100 / 22).

Como dato extra, estirar la imagen es un procedimiento incorrecto. Es preferible que crees una capa con un fondo repetitivo en CSS y estires la capa.
  #6 (permalink)  
Antiguo 30/01/2010, 16:39
Avatar de xbx
xbx
 
Fecha de Ingreso: mayo-2008
Ubicación: /home/xbx
Mensajes: 301
Antigüedad: 16 años, 6 meses
Puntos: 11
Respuesta: if + sql

Para evitar que sea más de 100, queda así:

Código PHP:
$width $vida>22 100100 5*(22-$vida); 
Lo otro no lo entendí, podrías explicarnos mejor?

Saludos!!
  #7 (permalink)  
Antiguo 30/01/2010, 16:49
Avatar de danistrein  
Fecha de Ingreso: septiembre-2008
Ubicación: Salta Capital
Mensajes: 550
Antigüedad: 16 años, 2 meses
Puntos: 9
Respuesta: if + sql

gracias chicos por responder, eh utilizado el code de xbx.


Cita:
Iniciado por xbx Ver Mensaje
Para evitar que sea más de 100, queda así:

Código PHP:
$width $vida>22 100100 5*(22-$vida); 
Lo otro no lo entendí, podrías explicarnos mejor?

Saludos!!
en el nuevo code que me pasaste evita que se pase de 100%, pero ahora tengo un problema te explico mira en el juego los usuarios cada vez que pasan de nivel reciben puntos el cual pueden aumentarse la vida. ahora el problema es que si el personaje tiene mas de 22 de vida me toma el width en 100%. entiendes?
__________________
Appones.net - www.appones.net
  #8 (permalink)  
Antiguo 30/01/2010, 16:54
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: if + sql

danistrein, por eso se te comenta que deberías definir un nivel máximo de vida...

una ves tengas definido ese valor, es mas fácil hacer los cálculos... (:
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #9 (permalink)  
Antiguo 30/01/2010, 17:10
Avatar de danistrein  
Fecha de Ingreso: septiembre-2008
Ubicación: Salta Capital
Mensajes: 550
Antigüedad: 16 años, 2 meses
Puntos: 9
Respuesta: if + sql

por eso no ce como definir automáticamente la vida de cada personaje , por que en el juego no todos lo personajes tienen 22 de vida, también ahí otras clases de personajes que poseen 30 y 15 y ni se me ocurre como hacerlo :S
__________________
Appones.net - www.appones.net
  #10 (permalink)  
Antiguo 30/01/2010, 17:20
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: if + sql

Cita:
Iniciado por danistrein Ver Mensaje
por eso no ce como definir automáticamente la vida de cada personaje , por que en el juego no todos lo personajes tienen 22 de vida, también ahí otras clases de personajes que poseen 30 y 15 y ni se me ocurre como hacerlo :S


entiende, define un limite de vida...

vamos, yo entiendo que puede variar todo... pero estaría mejor si dices: el máximo de vida de un jugador debe ser 1000

ahora, si cada tipo de personaje tiene cierto limite de vida pues tampoco debería haber problema... vamos, ¿acaso no entiendes lo que se te comenta??
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #11 (permalink)  
Antiguo 30/01/2010, 17:30
Avatar de xbx
xbx
 
Fecha de Ingreso: mayo-2008
Ubicación: /home/xbx
Mensajes: 301
Antigüedad: 16 años, 6 meses
Puntos: 11
Respuesta: if + sql

Cita:
Iniciado por danistrein Ver Mensaje
por eso no ce como definir automáticamente la vida de cada personaje , por que en el juego no todos lo personajes tienen 22 de vida, también ahí otras clases de personajes que poseen 30 y 15 y ni se me ocurre como hacerlo :S
Y donde guardas esa información de cada personaje?
  #12 (permalink)  
Antiguo 30/01/2010, 17:35
Avatar de metacortex
Viejo demente
 
Fecha de Ingreso: junio-2004
Ubicación: Caracas - Venezuela
Mensajes: 9.027
Antigüedad: 20 años, 5 meses
Puntos: 832
Respuesta: if + sql

Cita:
Iniciado por danistrein Ver Mensaje
no todos lo personajes tienen 22 de vida
Por lo que posteaste primero se suponía que "22" era el máximo. Como puedes notar, casi todo el hilo se basa en ese valor. Ahora leo todo en detalle y lo sorprendente es que desde el principio te vienen advirtiendo que definas un máximo.

Yo asumí que 22 era el máximo por esto:

Código PHP:
if($vida == 22){
echo 
'<img src="vida_si.png" width="100%" height="12" />';

  #13 (permalink)  
Antiguo 30/01/2010, 17:38
Avatar de xbx
xbx
 
Fecha de Ingreso: mayo-2008
Ubicación: /home/xbx
Mensajes: 301
Antigüedad: 16 años, 6 meses
Puntos: 11
Respuesta: if + sql

Deberías reemplazar el 22 por una variable $maximo y listo.
  #14 (permalink)  
Antiguo 30/01/2010, 17:42
Avatar de danistrein  
Fecha de Ingreso: septiembre-2008
Ubicación: Salta Capital
Mensajes: 550
Antigüedad: 16 años, 2 meses
Puntos: 9
Respuesta: if + sql

Cita:
Iniciado por pateketrueke Ver Mensaje


entiende, define un limite de vida...

vamos, yo entiendo que puede variar todo... pero estaría mejor si dices: el máximo de vida de un jugador debe ser 1000

ahora, si cada tipo de personaje tiene cierto limite de vida pues tampoco debería haber problema... vamos, ¿acaso no entiendes lo que se te comenta??
a decir soy new en el tema de php a si que maso menos me guio :P


Cita:
Iniciado por xbx Ver Mensaje
Y donde guardas esa información de cada personaje?
es cierto :P,creare otra fila en la tabla de la sql para poner el total de vida de cada personaje al final quedara asi:

Código PHP:
Ver original
  1. if(vida == $categoria){
  2.  
  3. $vida_total=$row['tvida'];
  4. $vida_usada=$row['uvida'];
  5. $width = $vida_usada>$vida_total ? 100: 100 - 5*($vida_total-$vida_usada);  
  6.  
  7. echo '<img src="vida_si.png" width="'.$width.'%" height="12" />';
  8.  
  9. }

a si podría funcionar no? total cada vez que el usuario aumente la vida solo modifico la tvida y cuando pase de nivel modifico las dos filas. asi no tendre ningún problema (eso creo yo)


Cita:
Iniciado por metacortex Ver Mensaje
Por lo que posteaste primero se suponía que "22" era el máximo. Como puedes notar, casi todo el hilo se basa en ese valor. Ahora leo todo en detalle y lo sorprendente es que desde el principio te vienen advirtiendo que definas un máximo.

Yo asumí que 22 era el máximo por esto:

Código PHP:
if($vida == 22){
echo 
'<img src="vida_si.png" width="100%" height="12" />';

si perdona debí aclarar bien cuales era el máximo de vida.


Cita:
Iniciado por xbx Ver Mensaje
Deberías reemplazar el 22 por una variable $maximo y listo.
jeje si desde que respondió pateketrueke estoy escribiendo , no puedo terminar de responder ya que cada 2 segundos llegan mas respuestas .




Bueno chicos digamen si tengo algún error en la forma que tengo planeado hacer lo de la vida.
__________________
Appones.net - www.appones.net
  #15 (permalink)  
Antiguo 30/01/2010, 17:45
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: if + sql

perfecto!!

lo importante es que hayas entendido... ;)

aunque bueno, yo pensaba que el máximo de vida variaba mas de tipo de jugador, que por usuario...

por decirlo así:

obrero 22
estudiante 33
ingeniero 44

y eso almacenarlo en una tabla de personajes, mas no en la tabla de los usuarios... (:
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #16 (permalink)  
Antiguo 30/01/2010, 17:47
Avatar de xbx
xbx
 
Fecha de Ingreso: mayo-2008
Ubicación: /home/xbx
Mensajes: 301
Antigüedad: 16 años, 6 meses
Puntos: 11
Respuesta: if + sql

Brillante!!

Edito: Deberías volver a la primer versión que te pasé ya que ahora nunca se pasará de 100. Como dice pateketrueke, lo importante es que hayas entendido ;)
  #17 (permalink)  
Antiguo 30/01/2010, 17:50
Avatar de danistrein  
Fecha de Ingreso: septiembre-2008
Ubicación: Salta Capital
Mensajes: 550
Antigüedad: 16 años, 2 meses
Puntos: 9
Respuesta: if + sql

Bueno muchas gracias chicos, sin ustedes no podría averlo echo nunca, lo mejor es que ya poco a poco boy comprendiendo mas el lenguaje php,
__________________
Appones.net - www.appones.net
  #18 (permalink)  
Antiguo 03/02/2010, 18:13
Avatar de danistrein  
Fecha de Ingreso: septiembre-2008
Ubicación: Salta Capital
Mensajes: 550
Antigüedad: 16 años, 2 meses
Puntos: 9
Respuesta: if + sql + witch %

hola chicos perdon por volver a darle vida al tema . pero nesesito su ayuda otra vez. miren quisiera hacer lo mismo que hice con la vida pero ahora quiero hacerlo con la experiencia del usuario.

algo asi miren:
Código PHP:
Ver original
  1. $exptotal=99.99;
  2. $expusada=35.48;
  3. $width = 100 - 5*($exptotal-$expusada);
  4. echo '<img src="exp_si.png" width="'.$width.'%" height="12" />';

como tendria que modificar esta parte "100- 5" para que me funcione el code ?


bueno espero que me puedan ayudar ^^.
__________________
Appones.net - www.appones.net
  #19 (permalink)  
Antiguo 06/02/2010, 17:37
Avatar de xbx
xbx
 
Fecha de Ingreso: mayo-2008
Ubicación: /home/xbx
Mensajes: 301
Antigüedad: 16 años, 6 meses
Puntos: 11
Respuesta: if + sql

Código PHP:
$width=$exptotal/$expusada*100
  #20 (permalink)  
Antiguo 06/02/2010, 20:22
Avatar de danistrein  
Fecha de Ingreso: septiembre-2008
Ubicación: Salta Capital
Mensajes: 550
Antigüedad: 16 años, 2 meses
Puntos: 9
Respuesta: if + sql

Cita:
Iniciado por xbx Ver Mensaje
Código PHP:
$width=$exptotal/$expusada*100
muchas gracias por el code , pero ya utilise el que me paso mi amigo pato12
Código PHP:
$width = ($texpusada*100)/$texptotal
__________________
Appones.net - www.appones.net

Etiquetas: sql
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 14:42.