Problemas al mostrar lo que esta en php

Iniciado por DeXon18, 15 Abril 2011, 16:22 PM

0 Miembros y 1 Visitante están viendo este tema.

DeXon18

Hola amigos, hace mucho que no me paso por aqui... Pero a lo que venia, encontrado este curioso sistema  y funciona de lujo pero encuentro un problema, en las paginas que tiene lo que pongo en php no lo muestra e probado de mil y una forma pero nada

Sistema
http://tutorialzine.com/2009/09/simple-ajax-website-jquery/

Código (php) [Seleccionar]
if(file_exists('pages/page_'.$page.'.php'))
echo file_get_contents('pages/page_'.$page.'.php');


Codigo cambiado para que muestre en PHP las extensiones.

Pero nada de contenido como comentaba. Alguna idea?

Gracias de antemano ;)

[u]nsigned

1. Creo que en lugar de usar commilas simples ('), estas usando estas usando comillas especiales (no se el nombre xD). Fijate que las que estan en tu codigo estan como inclinadas. Para sacarte esa duda directamente podes usar comillas dobles (".

2. Podrias hacer:

Código (php) [Seleccionar]

if(file_exists('pages/page_'.$page.'.php') or die("No existe la pagina page_" . $page))
{
   $cadena = file_get_contents('pages/page_'.$page.'.php')or die("No se pudo leer la pagina page_" . $page);
   echo $cadena;
}


Para estar seguro en que parte se produce el error ;)

Saludos

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!

DeXon18

nsigned, gracias por la respuesta, probe y nada, asi que encontre esto

Código (javascript) [Seleccionar]
function ajaxFunction() {
  var xmlHttp;
 
  try {
   
    xmlHttp=new XMLHttpRequest();
    return xmlHttp;
  } catch (e) {
   
    try {
      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      return xmlHttp;
    } catch (e) {
     
  try {
        xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
        return xmlHttp;
      } catch (e) {
        alert("Tu navegador no soporta AJAX!");
        return false;
      }}}
}
function Enviar(_pagina,capa) {
    var ajax;
    ajax = ajaxFunction();
    ajax.open("POST", _pagina, true);
    ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

    ajax.onreadystatechange = function() {
if (ajax.readyState==1){
document.getElementById(capa).innerHTML = "<div class=\"loading\"><img src=\"secciones/portada/images/ajax_load.gif\" width=\"16\" height=\"16\" alt=\"Cargando\" /> Cargando datos...</div>";
     }
if (ajax.readyState == 4) {
   
                document.getElementById(capa).innerHTML=ajax.responseText;
     }}

ajax.send(null);
}


Por si alguno le ayuda

Salu2

WHK

#3
document.getElementById(capa).innerHTML=ajax.responseText;

  $cadena = file_get_contents('pages/page_'.$page.'.php')or die("No se pudo leer la pagina page_" . $page);
  echo $cadena;


vee el código fuente generado con javascript en tu web, vee el DOM con firebug y verás que si funciona bién, te apuesto que el problema es que no se ve por los tags <?php ?> ya que eso no se interpreta en html, intenta utilizar carácteres de escape, imprime mejor desde php nl2br(htmlspecialchars($contenido, 'html'));

Si lo que quieres es ver la web entonces hazle include y no file get contents ya que eso obtiene el código fuente del php pero no lo ejecuta, include si lo ejecuta, pero ten cuidado con el lfi, por ejemplo que tal si alguien como página te pide ./../../config.ph donde están las contraseñas de la db y cosas asi?.