Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > PHP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 24-11-2005
Avatar de papulo
papulo papulo is offline
Miembro
 
Registrado: ago 2005
Ubicación: Lleida - Cataluña - España -Europa - Planeta tierra - Sistema solar - Via Lactea ...
Posts: 542
Poder: 19
papulo Va por buen camino
Crear variables de forma dinamica

Lo se, el titulo no tiene comprension alguna, pero ahora me explicare en mayor detalle.

Estoy tratando de rellenar de forma dinamica una serie de variables distribuidas por una maqueta de pagina web. Mas o menos, lo que quiero es que si en un if anidado dentro de un while se cumple la primera condicion (irrelevante cual es), automaticamente cargue el valor en la primera variable $titulo1. Al repetir el if, si se cumple la primera condicion otra vez, cargue dicho valor en $titulo2. Lo mismo quiero que pase en el caso de que se cumpla el else, pero con los campos $apartado1, $apartado2, $apartado3...


Por supuesto, todo esto es en PHP, y el resto de las cosas estan resueltas, solo me falta este pequeño paso, que por inexperiencia, no se como afrontarlo.

Un abrazo desde la esperanza.

Papulo.
Responder Con Cita
  #2  
Antiguo 24-11-2005
[kayetano] kayetano is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Elche
Posts: 644
Poder: 21
kayetano Va por buen camino
Hola

Lo mas facil para tu problema es un array titulo[1], titulo[2] , ... con esto tu problema esta solucionado.

Que por narices tienen que ser variables (por lo general la programación es muy flexible y se puede interpretar de muchas formas) se pueden generar variables dinamicas como tu dices de la siguiente forma
Código PHP:
<?
    $x 
1;
    
$titulo "titulo".$x;
    $
$titulo 8;
    echo 
$titulo1;
?>
Si creas una variable (en ejemplo $titulo) con un texto, en nuestro caso "titulo1" (por el valor 1 de $x) y despues haces referencia a esa variable ($$titulo) con un doble dolar $$ lo que consigues es crear una nueva variable con el nombre contenido ($titulo1) y con el valor que le hemos asignado.

Aunque es posible hacer lo que tu pides, te aconsejo que utilices el array, es mas facil de utilizar.
__________________
Salu2
KAYETANO

Cómo hacer preguntas de manera inteligente
Responder Con Cita
  #3  
Antiguo 24-11-2005
Avatar de papulo
papulo papulo is offline
Miembro
 
Registrado: ago 2005
Ubicación: Lleida - Cataluña - España -Europa - Planeta tierra - Sistema solar - Via Lactea ...
Posts: 542
Poder: 19
papulo Va por buen camino
Red face

Gracias por la respuesta. Ahora mismo miro como implementar la solucion con arrays. Es culpa de mi inexperiencia que buscara las variables, pero creo que con la idea de arrays me apañare perfectamente.

Cuando tenga la solucion la posteo inmendiatamente.
Responder Con Cita
  #4  
Antiguo 24-11-2005
Avatar de papulo
papulo papulo is offline
Miembro
 
Registrado: ago 2005
Ubicación: Lleida - Cataluña - España -Europa - Planeta tierra - Sistema solar - Via Lactea ...
Posts: 542
Poder: 19
papulo Va por buen camino
Talking

Aqui va una solucion completa para sacar los valores de una consulta, analizarlos e insertarlos en una tabla en funcion de los parametros que tu quieras.

La consulta es sobre una base de datos en FIREBIRD, usando PHP y el programa NVU para hacer la pagina e insertarle el codigo en PHP de la forma mas sencilla jamas parida.

Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  <html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
   http-equiv="content-type">
    <title>phpapi&ntilde;on</title>
  </head>
  <body style="width: 223px; height: 288px;">
  <?php $host 'Dev1:d:/Web/DATAWEB.GDB';
  
$username 'sysdba'//Es el que sale por defecto, pero recomiendo cambiarlo
  
$password 'pikachu';//Pos va a ser que este no es.
  
$dbh ibase_pconnect ($host$username$password $base_charset'UNICODE_FSS');
  
$sql='SELECT * FROM PRUEBAS';
  
$consulta ibase_query($dbh$sql);
  
$t=1;
  
$a=1;
  while (
$fila ibase_fetch_object ($consulta))
  {
  if (
$fila->STATUS<0)
  {
  
$titulo[$t] = $fila->APELLIDOS;
  ++
$t;
  }
  else {
  
$apartado[$a]=($fila->NOMBRE);
  ++
$a;
  }
  }
?>
  <table style="text-align: left; height: 269px; width: 295px;"
   border="1" cellpadding="2" cellspacing="2">
    <tbody>
      <tr>
        <td colspan="2"
   style="height: 64px; font-weight: bold; width: 285px;"><?php echo $titulo[1];?></td>
      </tr>
      <tr>
        <td style="height: 64px; width: 285px;" colspan="1"><?php echo $apartado[1];?></td>
        <td style="height: 64px; width: 50%;"><php
   title="echo $apartado11;"></php><?php echo $apartado[2];?></td>
      </tr>
      <tr>
        <td colspan="2"
   style="height: 64px; font-weight: bold; width: 285px;"><?php echo $titulo[2];?></td>
      </tr>
      <tr>
        <td style="height: 65px; width: 285px;"><?php echo $apartado[3];?></td>
        <td style="height: 65px; width: 140px;"><?php echo $apartado[4];?></td>
      </tr>
    </tbody>
  </table>
  </body>
  </html>
Gracias por la idea del array, espero haberla aplicado como seria correcto, en caso de fallo gordo dadme un toque, pero creo que utilizare este esquema para ir mostrando los datos en las distintas paginas.

Un saludo agradecido.

Papulo.

Última edición por papulo fecha: 24-11-2005 a las 18:08:54.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 05:59:07.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi