login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Server side include perikelen

Offline Liehon - 17/09/2008 18:08
Avatar van LiehonNieuw lid Met behulp van een tutorial van een andere site probeerde ik een tijdje terug een server side include te maken.

Volgens die site moet 'k daarvoor een shtml-pagina maken met een koppeling naar een txt-bestand voor wat 'k wil . Bon, zo gezegd, zo gedaan. Probleem is dat m'n include niet verschijnt op de pagina. Naar verluidt hoor ik dus een htaccess te gebruiken om te zorgen dat shtml gelezen wordt door de server.

Ikke dus in een txt-bestandje volgende twee regels geschreven:

AddType text/html .shtml
AddHandler server-parsed .shtml

daarna geüpload naar de server van belgacom/skynet en bestandje hernoemd naar .htaccess en vanaf dat moment krijg ik dus enkel de 500-fout.

Iemand die me kan helpen dit recht te zetten?
Of een simpele manier kent voor server side include? (ken enkel html, als je een php manier kent, moet je erop voorbereid zijn dat je me stap per stap zal moeten begeleiden )

7 antwoorden

Gesponsorde links
Offline Wim - 17/09/2008 18:25
Avatar van Wim Crew algemeen PHP.net: include
PHP.net: include_once
PHP.net: require
PHP.net: require_once
Offline henver - 17/09/2008 19:39
Avatar van henver HTML gevorderde

Inderdaad, maar denk niet dat Belgacom hosting PHP ondersteunt... 
Offline Wim - 17/09/2008 20:18
Avatar van Wim Crew algemeen ik citeer uit hun FAQ:
Citaat:
het inbedden van de PHP-code binnenin het html-document: de bestandsnaam dient op .php of .php4 of .phtml te eindigen, het bestand moet voor alle gebruikers van het systeem leesbaar zijn en er moeten geschikte PHP-tags in de html-code zijn ingebed;


ze ondersteunen zelfs MySQL!
Offline Liehon - 17/09/2008 22:05
Avatar van Liehon Nieuw lid

Liehon schreef:
Of een simpele manier kent voor server side include? (ken enkel html, als je een php manier kent, moet je erop voorbereid zijn dat je me stap per stap zal moeten begeleiden )


Ben tot aan het eerste voorbeeldje geraakt en dan de moed opgegeven.
Daarna de moed weer herpakt en denk dat 't voorbeeldje nummer drie is dat ik nodig heb, nee?
Dus nu keren we terug naar het feit dat ik stap-voor-stap-begeleiding nodig heb (of anders in een ravijn val en een dramatische doch tragische dood zal sterven) en hoop ik dat er iemand is die me kan uitleggen hoe ik onderstaande voorbeeld moet aanpassen zodat het in mijn geval kan werken. (oh ja en vertel er ook direct bij waar ik deze code moet plakken in mijn html-pagina)

  1. <?php
  2.  
  3. /* This example assumes that www.example.com is configured to parse .php
  4.  * files and not .txt files. Also, 'Works' here means that the variables
  5.  * $foo and $bar are available within the included file. */
  6.  
  7. // Won't work; file.txt wasn't handled by www.example.com as PHP
  8. include 'http://www.example.com/file.txt?foo=1&bar=2';
  9.  
  10. // Won't work; looks for a file named 'file.php?foo=1&bar=2' on the
  11. // local filesystem.
  12. include 'file.php?foo=1&bar=2';
  13.  
  14. // Works.
  15. include 'http://www.example.com/file.php?foo=1&bar=2';
  16.  
  17. $foo = 1;
  18. $bar = 2;
  19. include 'file.txt'; // Works.
  20. include 'file.php'; // Works.
  21.  
  22. ?>
Offline AcIdBuRn - 17/09/2008 22:18
Avatar van AcIdBuRn HTML beginner heel eenvoudig doe ik het altijd zo:


  1. $errorpagina = 'error.php';
  2.  
  3. $paginas = array('startpagina', 'error', 'artikel');
  4.  
  5. if( isset( $_GET['nav'] ) ) {
  6. if( in_array( $_GET['nav'], $paginas ) ) {
  7. if( file_exists( $_GET['nav'] . '.php' ) ) {
  8. include( $_GET['nav'] . '.php' );
  9. }
  10. else {
  11. include( $errorpagina );
  12. }
  13. }
  14. else {
  15. include( $errorpagina );
  16. }
  17. }
  18. else {
  19. include( $paginas[0] . '.php' );
  20. }


Dit is dus de code van de include, op de plaats van dit script wordt dus het bestand geinclude.

Om dit script nu aan te roepen doe je zo:

  1. <a href="www.voorbeeld.com?nav=1">link</a>


dus wanneer je op deze link klikt verschijnt deze link in de adresbalk:
www.voorbeeld.com?nav=1

dus de pagina wordt ververst, en door middel van $_GET['nav'] wordt deze variabele uit de url gelezen, en wordt de juiste pagina geinclude.

Ik hoop dat dit alles wat duidelijker maakt.
Offline Wim - 17/09/2008 22:19
Avatar van Wim Crew algemeen een voorbeeldje:
header.html
  1. <html>
  2. <head><title>Testpagina</title></head>
  3. <body>


footer.html
  1. </body>
  2. </html>


Als ik nu een .php bestand maak, met volgende tekst en code in:
  1. <?php
  2. include ('header.html');
  3. ?>
  4. Dit is de paginainhoud
  5. <?php
  6. include ('footer.html');
  7. ?>

zal dit de uiteindelijke pagina worden die de gebruiker te zien krijgt:
  1. <html>
  2. <head><title>Testpagina</title></head>
  3. <body>
  4. Dit is de paginainhoud
  5. </body>
  6. </html>


Volgens mij moet je met dit voorbeeld het wel snappen, anders horen we het wel 
Offline Liehon - 18/09/2008 11:17 (laatste wijziging 19/09/2008 13:49)
Avatar van Liehon Nieuw lid Oké, ik heb jouw voorbeeldje uitgeprobeerd wimmarien en begin te snappen hoe includes en php's werken.
Nu heb ik geprobeerd jouw voorbeeldje aan te passen naar mijn noden en daar zit ik weer vast 

Ik wil dus een pagina maken met een 2x2-tabel. In de cel linksonder van de tabel wil ik dus een menu includen dat afkomstig is uit het bestand menu.html zodat wanneer er een nieuwe link op mijn site komt ik niet elke pagina handmatig moet gaan aanpassen.
Enig idee waar mijn denkfout zit?

  1. <meta content="text/html; charset=ISO-8859-1"
  2. http-equiv="content-type">
  3. <title>PHPTest</title>
  4. </head>
  5. <table style="text-align: left; width: 100%;" border="1"
  6. cellpadding="2" cellspacing="2">
  7. <tr>
  8. <td>Menutitel</td>
  9. <td>Paginatitel</td>
  10. </tr>
  11. <tr>
  12. <td>menu
  13. <?php include ('menu.html');
  14. ?></td>
  15. <td>Pagina-inhoud</td>
  16. </tr>
  17. </tbody>
  18. <br>
  19. </body>
  20. </html>


EDIT: Als ik mijn internetbronnen mag vertrouwen dan heeft 't te maken met het feit dat html geen php parset ofzo
maar 'k heb een tut gevonden waar ze uitleggen hoe je via htaccess dat html wel php kan laten parsen ... enig probleem is dat 'k dan weer bij af ben omdat htaccess 500-fouten genereerd ... wat hoort er eigenlijk allemaal te staan in een blanco htaccess? En moet 'k dat op een speciale manier aanmaken ofzo?
Want tot nu toe heb 'k dat gewoon in kladblok twee regeltjes tekst gecopypasted, daarna geüploaded naar mijn webruimte en dan de naam veranderd in .htaccess

RE-EDIT: Provider gemaild ... mijn abonnement ondersteunt geen htaccess. Dat probleem zal dus wel opgelost raken 
Thanks iedereen
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.222s