Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

Duda sobre generar paginas con clases

Estas en el tema de Duda sobre generar paginas con clases en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Hola utilizo una clase como esta para generar las distintas paginas de mi sitio, pero m surge la duda de si esta es la mejor ...
  #1 (permalink)  
Antiguo 27/01/2010, 18:22
 
Fecha de Ingreso: noviembre-2007
Mensajes: 264
Antigüedad: 14 años, 10 meses
Puntos: 0
Duda sobre generar paginas con clases

Hola utilizo una clase como esta para generar las distintas paginas de mi sitio, pero m surge la duda de si esta es la mejor manera de hacerlo, si puede causar problemas o si tiene algun inconveniente, yo llevo usandolo siempre y no me ha dado ningun problema pero me han aconsejado que lo haga de otra forma. queria saber vuestra opinion. un saludo
Código PHP:
<?
class Pagina{

    private 
$title="Mi pagina";
    private 
$keywords="";
    private 
$encode="iso-8859-1";
    private 
$style="style.css";
    private 
$restricted=false;
    private 
$javaUrl=array();
    private 
$javaCount=0;
    
    function 
changeTitle($new){ $this->title=$new; }
    function 
changeKeywords($new){ $this->keywords=$new; }
    function 
changeEncode($new){ $this->encode=$new; }
    function 
changeStyle($new){ $this->estilo=$new; }
    function 
restricted(){ $this->restricted=true; }
    function 
javaScript($url){ $this->javaUrl[$this->javaCount]=$url$this->javaCount++; }
    function 
dataBase(){ 
        @
$db mysql_connect("localhost""root""");
        @
mysql_select_db("base"$db);
    }
    function 
isCurrentURL($url){ return strpos($GLOBALS["SCRIPT_NAME"],$url); }
    
    function 
head(){
        
session_start();
        
$this->dataBase();
        
?>
        <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
        <HTML xmlns=\"http://www.w3.org/1999/xhtml\">
        <HEAD>
            <link href="<?=$this->style?>" type="text/css" rel="stylesheet">
            <meta http-equiv="Content-Type" content="text/html; charset=<?=$this->encode?>">
            <meta name="Keywords" content="<?=$this->keywords?>">
            <?
            
// Añadir javascripts entre las etiquetas HEAD
            
if($this->javaCount>0){
                for(
$i=0;$i<$this->javaCount;$i++) 
                
?><script type="text/javascript" src="<?=$this->javaUrl[$i]?>"></script><?
            
}
            
?>
            <title><?=$this->title?></title>
        </HEAD>
        <BODY>
        <?
        
if($this->restricted){
            if(!isset(
$_SESSION["login"])){ echo "<h1>Área Restringida</h1>"$this->footer(); exit; }
        }
    }

    function 
foot(){
        
?>
        </BODY>
        </HTML>
        <?
    
}
}
?>
  #2 (permalink)  
Antiguo 27/01/2010, 18:25
 
Fecha de Ingreso: enero-2010
Mensajes: 152
Antigüedad: 12 años, 8 meses
Puntos: 5
Respuesta: Duda sobre generar paginas con clases

Todo depende de tu estilo para programar.

A mi sinceramente me resulta mas sencillo manejar todo con clases y funciones, pues me enfoco más a web2.0, pero para quienes aun crean páginas en el viejo estilo puede ser complicado entender tu código.

al final, creo que todo es cuestión de gustos.
  #3 (permalink)  
Antiguo 27/01/2010, 22:18
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 16 años, 4 meses
Puntos: 2135
Tema movido desde PHP a PHP orientado a objetos
  #4 (permalink)  
Antiguo 28/01/2010, 09:43
Avatar de _ssx  
Fecha de Ingreso: mayo-2003
Ubicación: mX
Mensajes: 683
Antigüedad: 19 años, 4 meses
Puntos: 60
Respuesta: Duda sobre generar paginas con clases



Creo que no se trata de manejar clases simplemente así estas desaprovechando todas las ventajas de la programación en objetos, y estas haciendo algo un poco sucio, "Mezclar html embedido con código PHP" , creo que podrías buscar un poco acerca de MVC o algo parecido que te ayude a hacer mejor las cosas.
__________________
Escribe tu código de forma que refleje, y saque a relucir,lo mejor de tu carácter personal
www.oscararzola.com/blog
Principios de un programador
  #5 (permalink)  
Antiguo 28/01/2010, 10:03
Avatar de rkgc18  
Fecha de Ingreso: enero-2010
Ubicación: México D.F.
Mensajes: 8
Antigüedad: 12 años, 8 meses
Puntos: 0
Respuesta: Duda sobre generar paginas con clases

Puedes ocupar algo una plantilla, smarthy el sistema de plantillas de php. mas bien uno de tantos, yo empece programando asi y metiendo el codigo html como tu lo haces, pero me di cuenta que esto si es un poco dificil de mantener, y termine por separar las cosas. Es mejor para tu codigo.
  #6 (permalink)  
Antiguo 31/01/2010, 08:05
Avatar de enriqueplace  
Fecha de Ingreso: mayo-2005
Ubicación: Uruguay / Argentina
Mensajes: 1.102
Antigüedad: 17 años, 4 meses
Puntos: 32
Respuesta: Duda sobre generar paginas con clases

Debes separar la "capa de presentación" de la "capa de lógica del negocio". Esto puede ser tan simple como clases que tienen una única responsabilidad. Separa en otra clase todo lo que tiene que ver con HTML, y decide qué o cuales clases pueden imprimir directamente el resultado... no lo puede hacer todas o en cualquier momento, ya que nunca tendrías controlo de lo que sucede en el sistema.

PD: <?= está fuera de uso, usa siempre <?php echo "" ?>
__________________
Blog phpsenior.com Cursos a Distancia surforce.com
  #7 (permalink)  
Antiguo 31/01/2010, 09:14
 
Fecha de Ingreso: enero-2010
Mensajes: 36
Antigüedad: 12 años, 8 meses
Puntos: 0
Respuesta: Duda sobre generar paginas con clases

Tenés que pensar en delegar responsabilidades a diferentes objetos. Así se piensa cuando se programa orientado a objetos, lo demás es pura patraña.
Andá pensando en qué objetos tendrían que hacer qué cosas, así dividís el trabajo (cada objeto una responsabilidad simple y bien determinada), de ahí van a ir surgiendo las clases que necesites.
Programar con clases no significa programar orientado a objetos, de hecho hay lenguajes orientados a objetos sin clases.
La mayoría de los frameworks de php están pensados en forma procedural, el único que vi que se acerca de verdad a lo que es objetos es Prado.

Etiquetas: clases
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 19:38.