Include file fouten, ik snap er niet zo veel van.

Status
Niet open voor verdere reacties.

Remi1995

Gebruiker
Lid geworden
31 jul 2009
Berichten
291
Hallo.

Ik ben bezig om mijn HTML frames site om te zetten in PHP includes.
Ik heb nog geen ervaring met PHP includes.

Probleem 1:
Zoals u ziet zo getypt dat index.php (uit de map site) en index.php (uit de map blog) allebei naar leftside.php verwijzen, en leftside zoekt weer naar menu_style.css.
Allebei de pagina's pikken wel leftside.php op, maar niet menu_style_css, index.php uit de map site wel, maar index.php uit de map blog niet.


Probleem2:
Ik heb een teler op mijn site, de teller staat in leftside.php. ik heb in leftside.php alleen "teller.log" getypt met daarvoor niet iets van ../ .
Maar index.php (uit de map blog) pikt die niet op en ik krijg de foutmelding:
Warning: file_get_contents(teller.log) [function.file-get-contents]: failed to open stream: No such file or directory in C:\xampp\htdocs\php\leftside.php on line 51
Deze pagina is vandaag 0 keer bekeken.

En er word een nieuwe teller.log aangemaakt in de map blog.
Ik wil graag dat allebei de pagina's dezelfde teller.log gebruiken.


Dit is het gedeelte van mijn site dat problemen geeft: (sorry dat het er zo lelijk uitziet)
site.png
.

Dit is de code van index.php in de map site:
Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<html>
<head>
<title>Mijn site</title>
  <link rel="shortcut icon" type="image/x-icon" href="images/rhicon.ico">
  <style type="text/css">
<!--

body
{
scrollbar-arrow-color: #000000;
scrollbar-face-color: #FF8C00;
scrollbar-highlight-color: #0000FF;
scrollbar-3dlight-color: #000000;
scrollbar-shadow-color: #00FFFF;
scrollbar-darkshadow-color: #008080;
scrollbar-track-color: #000000;
}

-->
  </style>
  <style> 
<!-- body{ cursor:url("cursors/Ddagger.cur"); } --> </style>
</head>
<body alink="purple" background="images/bg1.png" link="#ff8c00" text="#FFFFFF" vlink="#ff8c00">
<table border="0" width="100%" height="12%" background="images/bg-topside.png" cellspacing="0" cellpadding="0" align="center" style="border: 1px solid #ff8c00;">
            <div id="pagebody">
                <tr valign="top">
                 <td width="100%">
                    <div id="maincontent">
<?php include("topside.php"); ?>
     </td>
    </tr>
  </tbody>
 
  <table border="0" width="9%" height="100%" background="images/bg-donkergrijs.jpg" cellspacing="0" cellpadding="0" align="left" style="border: 0x solid #ff8c00;">
            <div id="pagebody">
                <tr valign="top">
                  <td width="9%">
                    <div id="maincontent">
<?php include("leftside.php"); ?>		
     </td>
    </tr>
  </tbody>
      <table border="0" width="9%" height="100%" background="images/bg-donkergrijs.jpg" cellspacing="0" cellpadding="0" align="right" style="border: 0x solid #ff8c00;">
            <div id="pagebody">
                <tr valign="top">
                  <td width="9%">
                    <div id="maincontent">
<?php include("rightside.php"); ?>	
     </td>
    </tr>
  </tbody>
</table>
  <table border="0" width="80%" height="100%" background="images/bg-donkergrijs.jpg" cellspacing="0" cellpadding="0" align="center" style="border: 0x solid #ff8c00;">
            <div id="pagebody">
                <tr valign="top">
                  <td width="100%">
                    <div id="maincontent">
<?php include("middleside.php"); ?>	
     </td>
    </tr>
  </tbody>
</table>
</table>
</html>

Dit is de code van leftside.php:
Code:
<html>
<head>
  <style type="text/css">
<!--
body
{
scrollbar-arrow-color: #000000;
scrollbar-face-color: #FF8C00;
scrollbar-highlight-color: #0000FF;
scrollbar-3dlight-color: #000000;
scrollbar-shadow-color: #00FFFF;
scrollbar-darkshadow-color: #008080;
scrollbar-track-color: #000000;
}
-->
  </style>
  <style href>a {text-decoration: none} </style>
	<link rel='stylesheet' type='text/css' href='http://94.214.190.183/php/menu_style.css'>
</head>
<body color="#FFFFFF" alink="purple" link="#FFFFFF" vlink="#ff8c00">

<center>
      <?php

       

      $teller = intval(file_get_contents("teller.log"));

      $bestand = fopen("teller.log", "w");

      fputs($bestand, $teller + 1);

      fclose($bestand);
 
  echo '<font size=-1>Deze pagina is vandaag</font><font color=red> ', $teller, ' </font><font size=-1>keer bekeken.</FONT>';
 
?>
<BR>
<?php

$rip = $_SERVER['REMOTE_ADDR'];
$sd  = time();
$count = 1;

$file1 = "$hm/HUOa/gebruikersonline.txt";
$line2 = "";

	{
		$fp = strpos($line,'****');
		$nam = substr($line,0,$fp);
		$sp = strpos($line,'++++');
		$val = substr($line,$fp+4,$sp-($fp+4));
		$diff = $sd-$val;
		if($diff < 300 && $nam != $rip)
			{
			 $count = $count+1;
			 $line2 = $line2.$line;
			 //echo $line2; 
			}
	}

$my = $rip."****".$sd."++++\n";

echo "<font size=\"-1\">Er zijn nu <font color=red>$count</font> gebruikers online op deze site.</FONT>";
?>


</body>
</html>
Dit is de code van index.php dat in de map blog staat:
Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<html>
<head>
<title>Mijn site</title>
  <link rel="shortcut icon" type="image/x-icon" href="../images/rhicon.ico">
  <style type="text/css">
<!--

body
{
scrollbar-arrow-color: #000000;
scrollbar-face-color: #FF8C00;
scrollbar-highlight-color: #0000FF;
scrollbar-3dlight-color: #000000;
scrollbar-shadow-color: #00FFFF;
scrollbar-darkshadow-color: #008080;
scrollbar-track-color: #000000;
}

-->
  </style>
  <style> 
<!-- body{ cursor:url("../cursors/Ddagger.cur"); } --> </style>
</head>
<body alink="purple" background="../images/bg1.png" link="#ff8c00" text="#FFFFFF" vlink="#ff8c00">
<table border="0" width="100%" height="12%" background="http://94.214.190.183/php/images/bg-topside.png" cellspacing="0" cellpadding="0" align="center" style="border: 1px solid #ff8c00;">
            <div id="pagebody">
                <tr valign="top">
                 <td width="100%">
                    <div id="maincontent">
<?php include("../topside.php"); ?>
     </td>
    </tr>
  </tbody>
 
  <table border="0" width="9%" height="100%" background="http://94.214.190.183/php/images/bg-donkergrijs.jpg" cellspacing="0" cellpadding="0" align="left" style="border: 0x solid #ff8c00;">
            <div id="pagebody">
                <tr valign="top">
                  <td width="9%">
                    <div id="maincontent">
<?php include("../leftside.php"); ?>		
     </td>
    </tr>
  </tbody>
      <table border="0" width="9%" height="100%" background="http://94.214.190.183/php/images/bg-donkergrijs.jpg" cellspacing="0" cellpadding="0" align="right" style="border: 0x solid #ff8c00;">
            <div id="pagebody">
                <tr valign="top">
                  <td width="9%">
                    <div id="maincontent">
<?php include("../rightside.php"); ?>	
     </td>
    </tr>
  </tbody>
</table>
  <table border="0" width="80%" height="100%" background="http://94.214.190.183/php/images/bg-donkergrijs.jpg" cellspacing="0" cellpadding="0" align="center" style="border: 0x solid #ff8c00;">
            <div id="pagebody">
                <tr valign="top">
                  <td width="100%">
                    <div id="maincontent">
<?php include("middleside.php"); ?>	
     </td>
    </tr>
  </tbody>
</table>
</html>


Vriendelijke groeten, Remi1995
 
Laatst bewerkt:
Voor beide problemen heb ik een oplossing.
De teller.log en css worden in de blog map gezocht, maar die komen daar niet in voor. Dit komt omdat je ze include van uit de map blog ipv de vorige map.
Als je de index.php van de blog map in de vorige map zet werkt het wel. (vergeet dan niet de ../ weg te halen van de include)

Om het te laten werken moet je in leftside.php uitzoeken ($_SERVER staan alle $_SERVER variabelen.) in welke map het script zich op dat moment bevind. Dan moet je kijken of de bestand in de vorige map zijn of niet. Zo ja, dan moet je bij de teller.log en css een ../ voor zetten zodat hij vanuit de map blog naar de goede locatie wijst. En als hij in de goede map zit hoeft dit uiteraard niet.

Een andere oplossing is static url opgeven voor de css. Voor de log werkt dit waarschijnlijk niet want ik denk dat je er ook in wilt schrijven. Als je hem alleen uitleest moet dit wel mogelijk zijn!

Ik hoop dat je begrijpt wat ik bedoel en dat je vraag hiermee beantwoord is.
 
Voor beide problemen heb ik een oplossing.
De teller.log en css worden in de blog map gezocht, maar die komen daar niet in voor. Dit komt omdat je ze include van uit de map blog ipv de vorige map.
Als je de index.php van de blog map in de vorige map zet werkt het wel. (vergeet dan niet de ../ weg te halen van de include)

Om het te laten werken moet je in leftside.php uitzoeken ($_SERVER staan alle $_SERVER variabelen.) in welke map het script zich op dat moment bevind. Dan moet je kijken of de bestand in de vorige map zijn of niet. Zo ja, dan moet je bij de teller.log en css een ../ voor zetten zodat hij vanuit de map blog naar de goede locatie wijst. En als hij in de goede map zit hoeft dit uiteraard niet.

Een andere oplossing is static url opgeven voor de css. Voor de log werkt dit waarschijnlijk niet want ik denk dat je er ook in wilt schrijven. Als je hem alleen uitleest moet dit wel mogelijk zijn!

Ik hoop dat je begrijpt wat ik bedoel en dat je vraag hiermee beantwoord is.

Dank u wel, ik snap er nu al meer van.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan