[suporte] título dinâmico com php

  • Autor Autor jtaco263
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
J

jtaco263

Curioso
Usuário com poucas negociações! Use sempre o saldo do ForoBeta!
hola no me muestra el titulo en el header.php pero si en el footer.php

este es mi index.php:

PHP:
<?php
require('files/inc/config.php');
require('files/assets/php/header.php');
require('files/libs/Plantilla.class.php');
$plantilla = new plantilla($serv,$user,$pass,$base,$url,$sitio);
$pagina = empty($_GET['pagina']) ? "inicio" : $general->limpiar($_GET['pagina']);
if ($general->logueado()) {
	
	switch ($pagina) {
			case 'blog':
			$ids = $plantilla->docs($view);
			$view = $_GET['view'];
			echo $ids[0];  
			$tsTitle = $ids[1];
			break;
		case 'logout':
			$general->logout();
			$general->redir($url);
			break;
		default:
			echo $plantilla->home();
			break;
	}
}else{
	switch ($pagina) {
		case 'signup':
			echo $plantilla->signup();
			break;
		case 'login':
			echo $plantilla->login();
			break;
			case 'blog':
			$ids = $plantilla->docs($view);
			$view = $_GET['view'];
			echo $ids[0];  
			$tsTitle = $ids[1];
			break;
		default:
			echo $plantilla->home();
			break;
	}	
}
require('files/assets/php/footer.php');

el titulo lo muestro con $tsTitle = $ids[1]; el cual no esta vacio

este es parte del header:

PHP:
<?php
	global $tsTitle;
	$titulo = $tsTitle;
	?>
<!doctype HTML>
<html lang="es">
<head>

<meta http-equiv="Content-type" content="text/html;charset=utf-8" />
     <meta name="description" content="<?=$sitio;?><?=$title;?>">
    <meta name="author" content="Developers MyTech!">
  <title><?php echo $titulo;?></title>
  <meta name="viewport" content="width=device-width, initial-scale=1.0">

ironicamente en el footer tengo

PHP:
<?php
	global $tsTitle;
	echo $tsTitle;
	?>

y si muestra el titulo pero no en el header
algua solución?
 
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
Estas definiendo el valor de $tsTitle despues de ejecutar el header.
¿No estaras confundiendo el uso de global $tsTitle?
 
Estas definiendo el valor de $tsTitle despues de ejecutar el header.
¿No estaras confundiendo el uso de global $tsTitle?

si pero se me hace raro
 
si pero se me hace raro

En realidad no necesitas el global a menos que lo tengas dentro de una funcion... con solo colocar
PHP:
echo $tsTitle;
funcionaria...
tstitle es creado aca? require('files/inc/config.php'); tstitle tiene que ser generado antes de llamar al header, (o en su defecto antes de mostrar el <title>...)
 
se genera en el index ya k llamo la funcion:

case 'blog':
$ids = $plantilla->docs($view);
$view = $_GET['view'];
echo $ids[0];
$tsTitle = $ids[1];
break;
 
se genera en el index ya k llamo la funcion:

case 'blog':
$ids = $plantilla->docs($view);
$view = $_GET['view'];
echo $ids[0];
$tsTitle = $ids[1];
break;

jajajaja pues ahi tenes tu problema... como mostras algo que no existe en header... tienes que obtener el titulo en header antes del <title> de lo contrario jamas podras mostrarlo...
 
como le hag el titulo lo genero desde la funcion docs?
no se puede hacer global?
 
como le hag el titulo lo genero desde la funcion docs?
no se puede hacer global?

por mas que sea global, solo lo vas a ver desde abajo de donde se crea... no desde arriba... tienes que generar el titulo antes no despues... sino no lo obtendras!
 
y como le hago?

el titulo lo genera a partir de la consulta sql
 
en el archivo plantilla tengo una funcion al final de documento k se ejecuta con la tercera funcion no e puede hacer asi?
 
en el archivo plantilla tengo una funcion al final de documento k se ejecuta con la tercera funcion no e puede hacer asi?

te estas liando solo... coloca la funcion o el code de obtener el titulo antes de llamar a header.php y asunto arreglado, sin vueltas sin complicaciones!
 
no cargan los archivos javascript ni la codificacion utf-8 si lo hago de esa manera

- - - Actualizado - - -

si hubo solucion


PHP:
require('files/inc/config.php');
require('files/libs/Plantilla.class.php');
$plantilla = new plantilla($serv,$user,$pass,$base,$url,$sitio);
$data_Holder = ''; //el data holder hace eecho despues de header
$pagina = empty($_GET['pagina']) ? "inicio" : $general->limpiar($_GET['pagina']);
	switch ($pagina) {
			case 'blog':
			$ids = $plantilla->docs($month,$view,$ref,$titles);
			$ref = $_GET['ref'];
			$month = $_GET['month'];
			$view = $_GET['view'];
			$titles = $_GET['titles'];
			$data_Holder = $ids[0];  
			$GLOBALS['tsTitle'] = $ids[1];
			break;
		default:
			$ids = $plantilla->docs($month,$view,$ref,$titles);
			$ref = $_GET['ref'];
			$month = $_GET['month'];
			$view = $_GET['view'];
			$titles = $_GET['titles'];
			$data_Holder = $ids[0];  
			$GLOBALS['tsTitle'] = $ids[1];
			break;
}

require('files/assets/php/header.php');
echo $data_Holder;
require('files/assets/php/footer.php');
 
no cargan los archivos javascript ni la codificacion utf-8 si lo hago de esa manera

- - - Actualizado - - -

si hubo solucion


PHP:
require('files/inc/config.php');
require('files/libs/Plantilla.class.php');
$plantilla = new plantilla($serv,$user,$pass,$base,$url,$sitio);
$data_Holder = ''; //el data holder hace eecho despues de header
$pagina = empty($_GET['pagina']) ? "inicio" : $general->limpiar($_GET['pagina']);
	switch ($pagina) {
			case 'blog':
			$ids = $plantilla->docs($month,$view,$ref,$titles);
			$ref = $_GET['ref'];
			$month = $_GET['month'];
			$view = $_GET['view'];
			$titles = $_GET['titles'];
			$data_Holder = $ids[0];  
			$GLOBALS['tsTitle'] = $ids[1];
			break;
		default:
			$ids = $plantilla->docs($month,$view,$ref,$titles);
			$ref = $_GET['ref'];
			$month = $_GET['month'];
			$view = $_GET['view'];
			$titles = $_GET['titles'];
			$data_Holder = $ids[0];  
			$GLOBALS['tsTitle'] = $ids[1];
			break;
}

require('files/assets/php/header.php');
echo $data_Holder;
require('files/assets/php/footer.php');

Ya pudiste ?
 

Tópicos similares

Voltar
Topo