Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   PHP (https://www.clubdelphi.com/foros/forumdisplay.php?f=15)
-   -   Pegar codigo HTML via PHP (https://www.clubdelphi.com/foros/showthread.php?t=27691)

papulo 28-11-2005 17:59:55

Pegar codigo HTML via PHP
 
Veamos, partiendo de una consulta en SQL a la BD, capturo los datos que necesito y los proceso.
Luego, mediante este codigo

Código PHP:

 ...
 
$sql='SELECT * FROM MENUS ORDER BY SITUATION';
 
$consulta ibase_query($dbh$sql);
 while (
$fila ibase_fetch_object ($consulta)) {
 if (
$fila->LEVEL_ID<0) {
 
//Inserto codigo HTML para crear una celda en una tabla creada anteriormente
 

 else {
 
//Inserto una fila en la celda creada en el [b]if[/b]
 
}
 } 
?> 

Pero como siempre, lo mas estupido del mundo, que es coger el codigo HTML y pegarlo para que se ejecute sin problemas, pues no lo se hacer.

Toy haciendo pruebas y demas, pero aun asi os pido ayuda.

Gracias people.

Papulo

papulo 28-11-2005 18:14:18

Edito y pongo un ejemplo ilustrativo para quien busque una solucion similar:

Código PHP:

<?php $celda="<table style=\"text-align: left; width: 57px; height: 32px;\"
 border=\"1\" cellpadding=\"2\" cellspacing=\"2\">
  <tbody>
    <tr>
      <td>HOLA</td>
    </tr>
  </tbody>
</table>
<br>"
;
echo 
$celda;
?>

El secreto esta en poner todo el codigo HTML entre comillas, recordando que a las comillas del codigo HTML le tenemos que añadir la contrabarra "\", para que al hacer echo las interprete correctamente.

Joer, joer y joer, parezco un inutil cuando me pongo a ello.

Saludos apañeros.

Papulo.:eek:

roman 28-11-2005 20:05:56

También puedes usar comillas simples para los atributos html y así no tener que escapar las comillas dobles.

// Saludos

papulo 29-11-2005 09:44:27

Cita:

Empezado por roman
También puedes usar comillas simples para los atributos html y así no tener que escapar las comillas dobles.

// Saludos

Mira tu por donde, un buen detallazo.

Un 'abrazo'.

Papulo.

kayetano 29-11-2005 12:41:39

hola

Yo soy de los que prefiere separar el codigo HTML del PHP
Código PHP:

<table ...>
  <tr>
<?php
$sql
='SELECT * FROM MENUS ORDER BY SITUATION';
$consulta ibase_query($dbh$sql);
while (
$fila ibase_fetch_object ($consulta)) {
   if (
$fila->LEVEL_ID<0) {
?>
    <td>......</td>
<?php
   
} else {
?>
    <td>.....</td>
<?php
   
}
}
?>
  </tr>
</table>

Si la estructura de la tabla es correcta y la consulta obtiene resultados este código debería funcionar.

papulo 29-11-2005 13:28:52

Lo que pido yo, esta hecho con vistas a crear diversas funciones sobre operaciones que se repiten a menudo, por eso las integro en la libreria y solo llamando a la funcion correspondiente pasando los parametros concretos, creo lo que necesito en apenas 8 lineas. Porque de la otra forma, repetire codigo bastantes veces a lo largo del listado y eso no me gusta :D

kayetano 29-11-2005 16:57:11

Hola

No termino de entender que necesitas, si quieres una funcion, pues se hace una funcion:
Código PHP:

<?
function crearTabla$consulta ) { 
?>
<table ...>
  <tr>
<?
   
while ($fila ibase_fetch_object ($consulta)) {
      if (
$fila->LEVEL_ID<0) {
?>
    <td>......</td>
<?   } else {   ?>
    <td>.....</td>
<?
      
}
   }
?>
  </tr>
</table> 
<? 
}
?>


roman 29-11-2005 20:18:50

Cita:

Empezado por kayetano
Yo soy de los que prefiere separar el codigo HTML del PHP

En ese caso, prefiero la notación dos puntos:

Código PHP:

<table>
<? while ($fila ibase_fetch_object ($consulta)): ?>
<tr>
  <td><td>
  <td></td>
  ...
</tr>
<? endwhile ?>

Por otro lado, aunque no quisiera debatir contigo ya que en PHP me das tres vueltas :) , pues realmente no hay gran separación de código html y php ¿no?

// Saludos

kayetano 30-11-2005 11:31:20

Hola roman

primero, dudo que te de tres vueltas en nada, por ponerte un ejemplo desconocía este tipo de notación. Voy a informarme más sobre ella porque parece interesante.

segundo, cuando me refiero a separar codigo HTML del PHP quiero decir dos cosas:
1. Intento evitar incuir entre <??> cualquier codigo HTML, sobre todo porque es mas facil diferenciar cada uno de los códigos y encontrar posibles errores de estructura en HTML.
2. Intento utilizar "includes" para añadir grandes porciones de código dentro del HTML. Lo mejor sería trabajar con POO pero en mi caso tengo tanto codigo ya creado que tendría que invertir mucho tiempo.


La franja horaria es GMT +2. Ahora son las 13:14:20.

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