Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] ¿Fallo estructura?

Estas en el tema de ¿Fallo estructura? en el foro de PHP en Foros del Web. Buenas tardes , Estoy programando una web a una clienta y la verdad que lo que me ha sucedido no me ha sucedido en la ...
  #1 (permalink)  
Antiguo 02/05/2015, 09:55
 
Fecha de Ingreso: abril-2010
Mensajes: 267
Antigüedad: 13 años, 11 meses
Puntos: 1
¿Fallo estructura?

Buenas tardes ,

Estoy programando una web a una clienta y la verdad que lo que me ha sucedido no me ha sucedido en la vida. Acaba de detectar un fallo, verán si entran desde Google Chrome o Mozilla, a [URL="http://www.dentalandmedicalcentre.com"]http://www.dentalandmedicalcentre.com[/URL] y hacen click derecho y le dan a "Inspeccionar elemento" verán que lo que debe ir en el head va en el body, y a parte en ciertos lugares aparecen comillas dobles con espacios. ¿Esto a que se debe?.

Muchísimas gracias :)
  #2 (permalink)  
Antiguo 02/05/2015, 11:56
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 8 meses
Puntos: 379
Respuesta: ¿Fallo estructura?

Espero que esto no sea spam
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #3 (permalink)  
Antiguo 02/05/2015, 12:15
 
Fecha de Ingreso: abril-2010
Mensajes: 267
Antigüedad: 13 años, 11 meses
Puntos: 1
Respuesta: ¿Fallo estructura?

No es spam, simplemente hago una pregunta, si entras y lo compruebas es cierto, es la primera vez que me pasa, mira:


Se me pasó dejar mi html:

index.php

Código:
<?php
	
	session_start();
	
	include('template.php');
	
	include('php/config/domain.php');
	
	html_header();
	
	template_header($menu_selected = 1);
	
	echo '		<main id="principal">';
	echo '			<section id="slider">';	
	echo '				<nav class="slider">';
	
	require('php/config/slider.php');
	
	foreach($main_slider as $title=>$image){
	
		echo '					<div style="background-image: url(' . $website_domain . '/' . $image . ');" alt="' . $title . '"></div>';
	
	}
	
	echo '				</nav>';
	echo '			</section>';
	echo '			<div class="clear"></div>';
	echo '		</main>';

	template_footer();

	html_footer();
			
?>
template.php

Código:
<?php

	session_start();
	
	function html_header() {
		
		session_start();

		include('php/config/domain.php');
		
		echo '<!DOCTYPE html>';
		echo '<html lang="' . $_SESSION['lang'] . '">';
		echo '	<head>';
		echo '		<meta http-equiv="cache-control" content="no-cache">';
		echo '		<meta http-equiv="Content-Type" content="text/html; charset=utf-8">';
		echo '		<meta http-equiv="X-UA-Compatible" content="IE=edge;chrome=1" />';
		echo '		<meta http-equiv="expires" content="-1">';
		echo '		<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">';
		echo '		<title>' . $website_title . '</title>';
		echo '		<meta name="robots" content="index, follow" />';
		echo '		<meta name="revisit-after" content="1 days">';
		echo '		<meta name="author" content="Alejandro Marín">';
		echo '		<meta name="description" content="' . $website_description . '" />';
		echo '		<meta name="keywords" content="' . $website_keywords . '" />';
		echo '		<meta name="twitter:card" content="summary" />';
		echo '		<meta name="twitter:title" content="' . $website_title . '" />';
		echo '		<meta name="twitter:description" content="' . $website_description . '" />';
		echo '		<meta name="twitter:image" content="' . $website_domain . '/images/logo.png" />';
		echo '		<meta name="twitter:url" content="http://www.dentalandmedicalcentre.com/" />';
		echo '		<meta name="twitter:creator" content="@alejandromaring" />';
		echo '		<meta property="fb:admins" content="100006008464502" />';
		echo '		<meta property="og:url" content="http://www.dentalandmedicalcentre.com/" />';
		echo '		<meta property="og:title" content="' . $website_title . '" />';
		echo '		<meta property="og:site_name" content="' . $website_title . '" />';
		echo '		<meta property="og:image" content="' . $website_domain . '/images/logo.png" />';
		echo '		<meta property="og:description" content="' . $website_description . '" />';
		echo '		<meta property="og:type" content="website" />';
		echo '		<link type="text/css" href="' . $website_domain . '/css/fonts.css" rel="stylesheet" />';
		echo '		<link type="text/css" href="' . $website_domain . '/css/reset.css" rel="stylesheet" />';
		echo '		<link type="text/css" href="' . $website_domain . '/css/styles.css" rel="stylesheet" />';
		echo '		<link type="text/css" href="' . $website_domain . '/css/adjust_handheld.css" rel="stylesheet" />';
		echo '		<script type="text/javascript" src="https://code.jquery.com/jquery.js"></script>';
		echo '		<script type="text/javascript">';
		echo '			var domain = "' . $website_domain . '";';
		echo '		</script>';
		echo '		<script type="text/javascript" src="' . $website_domain . '/jquery/general.js"></script>';
		echo '		<script type="text/javascript" src="' . $website_domain . '/jquery/slider.js"></script>';
		echo '		<script type="text/javascript" src="' . $website_domain . '/jquery/contact_form.js"></script>';
		echo '	</head>';
		echo '	<body>';
	
	}
	
	function template_header($menu_selected) {
		
		session_start();
		
		include('php/config/domain.php');
		
		echo '		<div id="bar_top">';
		echo '			<nav class="languages">';
		
		if($gestor = opendir('php/languages/')) {

			while(($archivo = readdir($gestor)) != false) {
				
				if(strpos($archivo, '.php') && $archivo != 'index.php') {
					
					$_GET['type'] = 'list';
						
					include('php/languages/' . $archivo);
						
					if($visible == true) {
					
						echo '				<a href="' . $website_domain . '/php/select_language.php?lang=' . substr($archivo, 0, -4) . '&redirect"><img src="' . $website_domain . '/images/flags/' . $flag . '" alt="' . $language . '" title="' . $language . '" height="23" border="0"></a>';
					
					}
				  
				}
				
			}
			  
			closedir($gestor);
			  
		}
		
		echo '			</nav>';
		echo '			<div class="clear"></div>';
		echo '		</div>';
		echo '		<div id="page">';
		echo '			<header>';
		echo '				<div class="logo">';
		echo '					<h3>' . $logo_text[0] . '</h3>';
		echo '					<h5>' . $logo_text[1] . '</h5>';
		echo '				</div>';
		echo '				<div class="logo_image">';
		echo '					<img src="' . $website_domain . '/images/logo.png" height="70" border="0">';
		echo '				</div>';
		echo '				<div class="details">';
		echo '					<div class="contact">';
		echo '						<div class="no_call">';
		echo '							<h6 class="telephone">' . $phone_number . '</h6>';
		echo '							<h6 class="mobile">' . $mobile_number . '</h6>';
		echo '						</div>';
		echo '						<div class="call">';
		echo '							<a href="tel:' . $phone_number . '"><h6 class="telephone">' . $phone_number . '</h6></a>';
		echo '							<a href="tel:' . $mobile_number . '"><h6 class="mobile">' . $mobile_number . '</h6></a>';
		echo '						</div>';
		echo '					</div>';
		echo '					<div class="clear"></div>';
		echo '					<address><a href="' . $website_domain . '/where_we_are.php">Calle Lepanto, 21, 03503 Benidorm, Alicante (Spain).</a></address>';
		echo '				</div>';
		echo '				<div class="clear"></div>';
		echo '				<nav>';
		
		require('php/config/menu.php');
		
		$main_menu_link_position = 0;
		
		foreach($main_menu as $title=>$url){
			
			$main_menu_link_position++;
			
			if($main_menu_link_position == $menu_selected) {
		
				echo '					<a href="' . $website_domain . '/' . $url . '" class="select">' . $title . '</a>';
			
			} else {
				
				echo '					<a href="' . $website_domain . '/' . $url . '">' . $title . '</a>';
				
			}
		
		}
		
		echo '				</nav>';
		echo '			</header>';
		
	}
	
	function template_footer() {
		
		session_start();
		
		include('php/config/domain.php');
		
		echo '			<footer>';
		echo '				<section class="grid grid_column_type_3 specialties">';
		echo '					<h6>Especialidades</h6>';
		echo '					<ul>';
		echo '						<li>Medicina Familiar</li>';
		echo '						<li>Implantes dentales</li>';
		echo '						<li>Prótesis dental (fijada en el día)</li>';
		echo '						<li>Bracketts</li>';
		echo '						<li>Odontología general</li>';
		echo '						<li>Odontopediatría</li>';
		echo '					</ul>';
		echo '				</section>';
		echo '				<section class="grid grid_column_type_3 specialties specialties_2">';
		echo '					<ul>';
		echo '						<li>Blanqueamiento y limpieza dental</li>';
		echo '						<li>Ortodoncia</li>';
		echo '						<li>Periodoncia</li>';
		echo '						<li>Cirugía Oral</li>';
		echo '						<li>Ácido hialurónico</li>';
		echo '					</ul>';
		echo '				</section>';
		echo '				<section class="grid grid_column_type_3 map">';
		echo '					<h6>¿Donde estamos?</h6>';
		echo '					<iframe src="' . $google_maps_location . '" style="border:0" frameborder="0"></iframe>';
		echo '				</section>';
		echo '				<div class="clear"></div>';
		echo '				<div class="footer">';
		echo '					<p>&copy; ' . $website_title . ' 2015</p>';
		echo '					<ul>';
		echo '						<li><a href="">Aviso legal</a></li>';
		echo '						<li><a href="">Pol&iacute;tica de privacidad</a></li>';
		echo '					</ul>';
		echo '				</div>';
		echo '				<div class="clear"></div>';
		echo '			</footer>';
		
	}
	
	function html_footer() {
		
		echo '		</div>';
		echo '	</body>';
		echo '</html>';
		
	}
	
?>
  #4 (permalink)  
Antiguo 02/05/2015, 14:08
 
Fecha de Ingreso: junio-2009
Mensajes: 101
Antigüedad: 14 años, 9 meses
Puntos: 13
Respuesta: ¿Fallo estructura?

No es nada referente al código.

Cambia la codificación del archivo a "UTF-8 sin BOM". No sé que editor de texto utilizarás, con Notepad++ es bastante fácil:

Codificación > Codificar en UTF-8 sin BOM

Espero que te haya servido,
Un saludo

PD: Sabes que puedes insertar código HTML en PHP sin necesidad de tanto "echo"? De esa forma consume más recursos de cara al servidor y es bastante difícil de leer. Ejemplo:

Código PHP:
<?php    if(Account::loged_in()){    ?>

            <div id="menu">This your account menu because of you're logged in!</div>
            
<?php    }else{    ?>

            <div id="menu">This is the visitor menu because of you're not logged in :-(</div>
            
<?php    }        ?>

Última edición por BanNsS1; 02/05/2015 a las 14:14
  #5 (permalink)  
Antiguo 02/05/2015, 14:33
 
Fecha de Ingreso: abril-2010
Mensajes: 267
Antigüedad: 13 años, 11 meses
Puntos: 1
Respuesta: ¿Fallo estructura?

:OO Muchiiiisimas gracias enserio, dios mio lo que me ha costado XD, no lo sabe nadie ajajajaja, muchas gracias :)))
  #6 (permalink)  
Antiguo 02/05/2015, 14:39
 
Fecha de Ingreso: junio-2009
Mensajes: 101
Antigüedad: 14 años, 9 meses
Puntos: 13
Respuesta: ¿Fallo estructura?

Cita:
Iniciado por alejandromaringomez Ver Mensaje
:OO Muchiiiisimas gracias enserio, dios mio lo que me ha costado XD, no lo sabe nadie ajajajaja, muchas gracias :)))
Nada hombre! ;)
Dame un puntito que voy escaso! jajaja
  #7 (permalink)  
Antiguo 02/05/2015, 16:09
Avatar de NSD
NSD
Colaborador
 
Fecha de Ingreso: mayo-2012
Ubicación: Somewhere
Mensajes: 1.332
Antigüedad: 11 años, 10 meses
Puntos: 320
Respuesta: ¿Fallo estructura?

Notaste que todos los liks empiezan con "http://localhost/..."? Osea que solo tu puedes ver a esa pagina correctamente...
__________________
Maratón de desafíos PHP Junio - Agosto 2015 en FDW | Reglamento - Desafios
  #8 (permalink)  
Antiguo 03/05/2015, 01:24
 
Fecha de Ingreso: abril-2010
Mensajes: 267
Antigüedad: 13 años, 11 meses
Puntos: 1
Respuesta: ¿Fallo estructura?

Pues la verdad que en la captura no me fijé, pero si entras a la web se ve igual, estaba ya comprobado, con el mismo fallo, las pruebas las hago en localhost y las subo al dominio, pero ya está arreglado.

Ya te he dado el punto :)

Por cierto, aprovecho el tema para hacer otra preguntita, para no abrir otro, ¿alguien sabe porqué en el archivo template, en el function template_footer no me añade el titulo de la web que guardo en la variable $website_title?, me es curioso porque me va en todos menos en ese function, y pongo los mismos includes que en el function template_header, concretamente lo contiene el de domain.php, su código es el siguiente:

Cita:
<?php

session_start();

date_default_timezone_set('Europe/Madrid');

// Bloqueamos la descarga de la web con HTTrack

if(eregi('HTTrack',$_SERVER['HTTP_USER_AGENT'])) {

exit();

}

// Traduction

if($_SESSION['lang'] == NULL || !file_exists('php/languages/' . $_SESSION['lang'] . '.php')) {

include('php/select_language.php');

}

include('php/languages/' . $_SESSION['lang'] . '.php');

$website_subdomain = 'dentalandmedicalcentre.com';

$website_domain = 'http://localhost/clinica';

$noreply_email = '[email protected]';

$website_title = $logo_text[0] . ' ' . $logo_text[1];

$website_description = 'Su centro médico y dental situado en Benidorm.';

$website_keywords = 'medicina, general, pediatría, ginecología, dental, médico, clínica, Abba, Alicante, Benidorm, implantes, dental, dentales, bracketts, odontología, odontopediatría, blanqueamiento, limpieza, dental, dientes, ortodoncia, periodoncia, cirugía, oral, Ácido, hialuránico, medical, centre, family, doctor, pediatrics, gynecology, dental, implants, dental, prosthesis, general, dentistry, pediatric, teeth, whitening, cleaning, orthodontics, periodontics, surgery, hyaluronic, acid, emergency, calle lepanto, 21, calle, lepanto, dentist, street, rue, la médecine, la pédiatrie générale, gynécologie, soins dentaires, médicaux, cliniques, Abba, Alicante, Benidorm, implants, dentaire, bracketts, la dentisterie, pédiatrique, de blanchiment, de nettoyage, de soins dentaires, des dents, l\'orthodontie, parodontie, chirurgie, par voie orale, l\'acide, hyaluronique, geneeskunde, algemene kindergeneeskunde, gynaecologie, tandheelkunde, medische, klinische, Abba, Alicante, Benidorm, implantaten, tandheelkundige, bracketts, tandheelkunde, pediatrische tandheelkunde, bleken, schoonmaken, tandheelkundige, tanden, orthodontie, parodontologie, chirurgie, orale, zuur, hyaluronzuur, Medizin, allgemeine Kinderheilkunde, Frauenheilkunde, Zahnmedizin, Medizin, klinische, Abba, Alicante, Benidorm, Implantate, Zahnmedizin, Bracketts, Zahnheilkunde, Kinderzahnheilkunde, Bleaching, Reinigung, Dental, Zähne, Kieferorthopädie, Parodontologie, Chirurgie, orale, Säure, Hyaluronsäure';

$phone_number = '+34 865 642 080';

$mobile_number = '+34 617 934 423';

$google_maps_location = 'https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3120.7732494618!2d-0.11943580000000002!3d38.5389948!2m3!1f0!2f0!3f0!3 m2!1i1024!2i768!4f13.1!3m3!1m2!1s0xd6204f05c39e6cf %3A0xf3147f93d97068d4!2sCalle+Lepanto%2C+21%2C+035 03+Benidorm%2C+Alicante!5e0!3m2!1ses!2ses!4v143049 2166528';

?>
Graciaaaas! :)

Última edición por alejandromaringomez; 03/05/2015 a las 02:03
  #9 (permalink)  
Antiguo 03/05/2015, 05:53
Avatar de lauser
Moderator Unix/Linux
 
Fecha de Ingreso: julio-2013
Ubicación: Odessa (Ukrania)
Mensajes: 3.278
Antigüedad: 10 años, 8 meses
Puntos: 401
Respuesta: ¿Fallo estructura?

ESto...
Código PHP:
Ver original
  1. if(eregi('HTTrack',$_SERVER['HTTP_USER_AGENT'])) {
me parece un consumo innecesario, aparte que eregi esta obsoleto.

Mejor en el .htaccess;
Código Apache:
Ver original
  1. RewriteCond %{HTTP_USER_AGENT} HTTrack [NC,OR]
  2. RewriteRule .* - [F]
Lo de las keywords, es de traca... pon como mucho 8 o 10, lo unico que conseguirás es ser penalizado.
__________________
Los usuarios que te responden, lo hacen altruistamente y sin ánimo de lucro con el único fin de ayudarte. Se paciente y agradecido.
-SOLOLINUX-
  #10 (permalink)  
Antiguo 03/05/2015, 07:34
 
Fecha de Ingreso: abril-2010
Mensajes: 267
Antigüedad: 13 años, 11 meses
Puntos: 1
Respuesta: ¿Fallo estructura?

¡Muchas gracias Lauser! ,

He hecho las modificaciones, pero me sigue pasando lo mismo... :/

Muchas gracias y un saludo :)
  #11 (permalink)  
Antiguo 03/05/2015, 11:29
 
Fecha de Ingreso: junio-2009
Mensajes: 101
Antigüedad: 14 años, 9 meses
Puntos: 13
Respuesta: ¿Fallo estructura?

Cita:
Iniciado por alejandromaringomez Ver Mensaje
¡Muchas gracias Lauser! ,

He hecho las modificaciones, pero me sigue pasando lo mismo... :/

Muchas gracias y un saludo :)
Para conservar variables no instanciadas (que no esten dentro de una clase) dentro de una instancia o función, necesitas la palabra clave GLOBAL:

Código PHP:
function template_footer() {
    global 
$website_title;
    
    [...]

  #12 (permalink)  
Antiguo 04/05/2015, 10:09
 
Fecha de Ingreso: abril-2010
Mensajes: 267
Antigüedad: 13 años, 11 meses
Puntos: 1
Respuesta: ¿Fallo estructura?

Wow! Solucionado jeje :D

Muchas gracias y no molesto más XD
  #13 (permalink)  
Antiguo 04/05/2015, 12:48
 
Fecha de Ingreso: junio-2009
Mensajes: 101
Antigüedad: 14 años, 9 meses
Puntos: 13
Respuesta: ¿Fallo estructura?

Cita:
Iniciado por alejandromaringomez Ver Mensaje
Wow! Solucionado jeje :D

Muchas gracias y no molesto más XD
No hay problema hombre!

Etiquetas: Ninguno
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 17:31.