webForumDet fria alternativet

Problem att öppna dokument.

6 svar · 415 visningar · startad av mikaelsooh

mikaelsoohMedlem sedan feb. 2007200 inlägg
#1

Tänkte kolla med någon om lite hjälp.

Är ganska kass på PHP så det är förmodligen huvudskälet till att jag inte får saker att fungera. Men...

Jag håller på med en sida indelad i två boxar. I den övre har jag en meny och i den undre så vill jag ha innehållet. Problemet är bara att jag inte får innehållet att öppnas där. Koden ser ut som följer:


<!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>
		<meta http-equiv="content-type" content="text/html;charset=utf-8" />
		<meta name="generator" content="Adobe GoLive" />
		<title>Mikael Bruér</title>
		<link href="css/style.css" rel="stylesheet" type="text/css" media="all" />
		
	</head>

	<body>
		<div id="top">
		
			<div id="meny">
   				<ul>
      				<li><a href="index2.php?page=info.php">info</a></li>
      				<li><a href="index2.php?page=interior.php">Interiör</a></li>
      				<li><a href="index2.php?page=HDR.php">HDR</a></li>
     				<li><a href="index2.php?page=hastar.php">Hästar</a></li>
     				<li><a href="index2.php?page=scen.php">Scen</a></li>
     				<li><a href="index2.php?page=manniskor.php">Människor</a></li>
     				 
   				</ul>
			</div>
		</div>
		
<div id="container">
<?php
$allowed_pages = array(
   'start',
   'information',
   'kontakt'
 );

  $page = $_GET['page'];
  if(isset($page) && !empty($page) && in_array($page, $allowed_pages)){
     include($page . '.php');
  } else {
    include('info.php');
  }  
?> 
</div>
</body>

</html>

Jag är ytterst tacksam för all hjälp jag kan få. Är som sagt kass på det hela...

The_HulkMedlem sedan juni 20031 937 inlägg
#2

Vad innehåller sidan du vill inkludera?
Är det en komplett html-sida med <html> <head> osv eller är det en php-sida som genererar html-kod?

Hur ser html-koden ut som blir genererad när du testkör sidan?

mikaelsoohMedlem sedan feb. 2007200 inlägg
#3

The_Hulk skrev:

Vad innehåller sidan du vill inkludera?
Är det en komplett html-sida med <html> <head> osv eller är det en php-sida som genererar html-kod?

Hur ser html-koden ut som blir genererad när du testkör sidan?

Det är en komplett sida. Använde iframes till att börja med så upplägget är ungefär detsamma.

The_HulkMedlem sedan juni 20031 937 inlägg
#4

Då kommer det inte bli bra eftersom du får felaktig html-kod.
Har du testat att plocka bort de överflödiga html-taggarna från sidorna du vill länka in?

finns det någon php-kod i sidan eller är det ren html-kod?
Om det är ren html-kod så är det nog bättre att använda

$buf = file_get_contents($page . '.php');
echo $buf;

istället för

include($page . 'php');
mikaelsoohMedlem sedan feb. 2007200 inlägg
#5

Jag har försökt rensa ut html från dokumentet som ska öppnas, även testat din kod utan att få det att fungera.

Kan du ge exempel på hur koden i dokumentet som ska öppnas får, eller inte får se ut.

The_HulkMedlem sedan juni 20031 937 inlägg
#6

det är bättre du visar hur den genererade koden ser ut.
Kommer det ut någonting i div-blocket?

<div id="container">

</div>

Om man kollar på dina länkar så pekar de på t.ex. "index2.php?page=info.php", dvs page = "info.php"
Du kollar sedan om page är någon av följande:

$allowed_pages = array(
   'start',
   'information',
   'kontakt'
 );

Ingen av dina länkar kommer att matcha det.
Använder du dig av de länkarna som finns i koden du bifogade i första posten eller använder du någon annan?

mikaelsoohMedlem sedan feb. 2007200 inlägg
#7

Tänk vad lätt det är att få saker att fungera om man bara öppnar ögonen lite.

Givetvis var det allowed pages som felade. Tack som helvete för hjälpen!!!

Genererad på 375 ms · cache AV · v20260730165559-full.f96bc7eb