Vraag & Antwoord

Webprogrammeren & scripting

php - header

35 antwoorden
  • Hoe kan ik ervoor zorgen dat elke pagina een bepaald frame laad? Kan dat met een header include?
  • Met includes kan je stukken code (php, html) invoegen binnen je php script. Hiermee is het dus mogelijk om bepaalde vaste onderdelen terug te laten komen op elke pagina. Een voorbeeld indeling van je php script zou dan kunnen zijn: [code:1:cad59e403f] <?php include_once("global_functions.php); include_once("header.php); // write page header including website logo // content echo "hello world"; // end content include_once("footer.php); // close the page ?> [/code:1:cad59e403f] Maar het is me niet helemaal duidelijk wat je bedoelt met 'frame' en 'header include', dus als je kan verduidelijken wat je precies wil bereiken dan kan ik je denk ik wat beter helpen.
  • Ik bedoel zeg maar dat elke pagina mijn gemaakte navigatiebalk boven aan de pagina te laten zien.
  • jah, dan maak je een pagina met je eigen navigatiebalk, en dan include je daarONDER alle pagina's die je wilt. Ik heb bijv een hele map voor includes, en include die in een tabel. Of je include je header natuurlijk gewoon in elke pagina, kan ook ..
  • Ik heb in een database (page) het volgende: id| bestand 1 | 1.php 2 | 2.php Ik heb de volgende code gebruikt, maar het werkt niet. Wat doe ik fout? [code:1:9814828c7c]<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>ASquare -- page.php</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <table width="75%" border="1"> <tr> <td>BlaBla</td> <td>222222222222222222</td> <td>33333333333333333333</td> </tr> <tr> <td>44444444444444444444</td> <td>55555555555555555555555555</td> <td>66666666666666666666</td> </tr> </table> <br> <?php include("db_info.php"); $db = mysql_connect("localhost","user","password"); mysql_select_db("user_db",$db); $requete = "SELECT bestand FROM page WHERE id=".$id; $result = mysql_query ($requete,$db); $bestand =mysql_fetch_object($result); mysql_free_result($result); ?> <tr> <?php echo"$bestand"; ?> </tr> </body> </html>[/code:1:9814828c7c]
  • Laat me raden: $id is leeg. Als je die id via de URL doorgeeft moet het $_GET['id'] zijn...
  • De fout zit waarschijnlijk hier:[code:1:eb3a357236]$requete = "SELECT bestand FROM page WHERE id=".$id;[/code:1:eb3a357236]Vervang het door het volgende:[code:1:eb3a357236]$requete = "SELECT bestand FROM page WHERE id=".$_GET["id"];[/code:1:eb3a357236]- Bas Edit: Dammed, Bill! Laat anderen ook eens antwoorden! ;)
  • Het werkt helaas no steeds niet. Ik krijg een foutmelding on line 43 terwijl die niet bestaat? Ik denk zelf dat het probleem ligt in het volgende stukje code: [code:1:9b6863d66a]<?php include("$bestand); ?>[/code:1:9b6863d66a] Het is de bedoeling dat het script de inhoud van het opgevraagde bestand toont, maar dat doet ie dus niet. Hoe los ik dit op?
  • Dat moet zijn: [code:1:8a77f20711] <?php include ($bestand); ?>[/code:1:8a77f20711] Dus zonder de quote ("). Ik zie dat ik mijn eerste voorbeeldje een fout heb gemaakt, dit zou het moeten zijn: [color=darkblue:8a77f20711]include_once("global_functions.php");[/color:8a77f20711]
  • Oke bedankt. ik ga het meteen uitproberen. :P
  • Helaas het werkt nog steeds niet. Ik heb in bestand 1.php gezet [b:1536669cbf]echo"blabla";[/b:1536669cbf] . Maar als ik dit script uitvoer met id=1 krijg ik niet blabla te zien. :cry:
  • [quote:829379ab22="Chris_GbaSpDude"]Helaas het werkt nog steeds niet. Ik heb in bestand 1.php gezet [b:829379ab22]echo"blabla";[/b:829379ab22][/quote:829379ab22] Alleen echo"blabla"; is niet genoeg, je moet ook de php tags plaatsen: <?php echo"blabla"; ?> Als er niets te zien is in de browser, moet je altijd even naar de source code kijken. wimb
  • Dat heb ik gedaan. Helaas werkt het nog steeds niet. :cry:
  • Post je huidige script eens dan?
  • Oké. Dit is mijn script: [code:1:6dd1dc1c96]<html> <head> <title>page.php</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <table width="75%" border="1"> <tr> <td>BlaBla</td> <td>222222222222222222</td> <td>33333333333333333333</td> </tr> <tr> <td>44444444444444444444</td> <td>55555555555555555555555555</td> <td>66666666666666666666</td> </tr> </table> <?php include("db_info.php"); $db = mysql_connect("localhost","user","password"); mysql_select_db("user_db",$db); $requete = "SELECT bestand FROM page WHERE id=".$_GET["id"]; $result = mysql_query ($requete,$db); $bestand =mysql_fetch_object($result); mysql_free_result($result); ?> <table> <tr> <?php include($bestand); ?> </tr> </table> </body> </html>[/code:1:6dd1dc1c96] en in het bestand met id 1 staat dan bijv. [code:1:6dd1dc1c96]<?php echo "Hallo....."; ?>[/code:1:6dd1dc1c96]
  • Kijk nog eens goed naar het gebruik van [url=http://www.php.net/mysql_fetch_object]mysql_fetch_object[/url]. Wat hier in je code staat is namelijk niet correct.
  • Sorry, maar ik snap het niet helemaal. Ik heb het heel goed bekeken maar wat moet ik veranderen?
  • [code:1:622b6b82fd] $requete = "SELECT bestand FROM page WHERE id=".$id; $result = mysql_query ($requete,$db); $bestand =mysql_fetch_object($result); mysql_free_result($result); [/code:1:622b6b82fd] Zal moeten zijn: [code:1:622b6b82fd] while ($row= mysql_fetch_object($result)); $bestand = $row->[bestand]; mysql_free_result($result); [/code:1:622b6b82fd] // Edit Sorry haakje verkeerd gezet ;-)
  • de while loop heeft overigens niet veel nut als je maar 1 record terugkrijgt (daar ga ik dan maar even van uit)
  • Helemaal mee eens Annie, 'k heb niet echt opgelet toen ik em typte.... :oops:

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.