2011-08-09 4 views
1

J'essaye de faire une page qui retourne un dossier si la page est demandée par un utilisateur, et renvoie une réponse d'api si demandé par le code. Il fonctionne très bien, mais Google Chrome (et par exemple) rendent la page de l'utilisateur comme si elle était:include_once ne fonctionne pas correctement

<head></head> 
<body><title>BLAH</title> 
<h1>Bloo bloo blah</h1></body> 

Même si retourne voir la source:

<head><title>BLAH</title></head> 
<body><h1>Bloo bloo blah</h1></body> 

mais quand je vais à la page qui est inclus , il affiche incorrectement.

Code PHP:

<?php 
if ($_GET['mode']) { 
    echo 'server response'; 
} 
else { 
    include_once('main.php'); 
} 
?> 

Code main.php:

<!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><title>BLAH</title></head> 
<body><h1>Bloo bloo blah</h1></body> 
</html> 

Toute aide serait appréciée. J'utilise IIS 6.1 avec PHP 5.3.5 fonctionnant sur un ordinateur Windows 7.

+1

s'il vous plaît fournir plus de détails, ce qui est ce 'main.php' fait? – ajreal

+1

Nous avons besoin de plus de [input] (http://www.youtube.com/watch?v=AbkbU32X5dI) – cwallenpoole

+0

@ajreal - main.php ne fait tout simplement rien - ** pour le moment ** – comp500

Répondre

1

S'il vous plaît essayez ce qui suit:

Au lieu de

if ($_GET['mode']) { 

vérifier si une valeur pour la mode clé est définie avant de l'utiliser:

if (isset($_GET['mode']) && $_GET['mode']) { 

C'est juste une précaution en cas PHP génère une sortie en raison d'un avertissement ou d'un avis (mais ne doit pas), ce qui peut influencer la sortie alors.

A côté de cela, vous devriez vérifier ce que le serveur renvoie, et non pas la source de vue dans le navigateur. Installez l'outil cUrl de ligne de commande (Download), puis exécutez dans une coquille:

curl http://myurl 

Il affichera le code HTML que votre serveur retourne. Cette information est réellement nécessaire avant que votre problème puisse être analysé plus avant.

Modifier: La cause de votre problème est que main.php est enregistré avec une nomenclature. Supprimer la nomenclature du fichier et vous allez bien.

connexes:

+0

merci, en installant curl maintenant. – comp500

+0

pouvez-vous m'aider avec l'installation curl? – comp500

+0

ive installé wget à la place – comp500