login  Naam:   Wachtwoord: 
Registreer je!
 Forum

koppeling laten openen in een div (Opgelost)

Offline chth - 05/01/2011 15:46 (laatste wijziging 05/01/2011 15:46)
Avatar van chthLid hallo,

hoe kan ik een bepaalde koppeling, link laten openen in een div?

stel dat ik een html pagina heb met deze code:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <link rel="stylesheet" href="test.css" type="text/css" />
  6. <title>test</title>
  7. </head>
  8.  
  9. <body>
  10. <div id="total">
  11. <div id="sidebar">
  12. <a href="http://www.google.be">ga naar google</a>
  13. </div>
  14.  
  15. <div id="content">
  16.  
  17. </div>
  18. </div>
  19. </body>
  20. </html>


en deze css code gebruik:
  1. html {
  2. height: 100%;
  3. }
  4. body {
  5. height: 100%;
  6. margin: 0;
  7. background: yellow;
  8. border: 5px dotted white;
  9. }
  10. div#total {
  11. height: 100%;
  12. background: yellow;
  13. width: auto;
  14. padding: 5px;
  15. margin: auto;
  16. }
  17. div#sidebar {
  18. height: 300px;
  19. width: 150px;
  20. background: red;
  21. border: 1px dotted black;
  22. float: left;
  23. }
  24.  
  25. div#content {
  26. float: left;
  27. height: 300px;
  28. width: 500px;
  29. border: 1px dashed blue;
  30. margin: auto;
  31. }


hoe kan ik er dan voor zorgen dat de koppeling naar google geopent wordt in de div met id=content
zonder html-frames te gebruiken?

is er een manier waardoor ik bv. met php dan kan includen in de div content?

alvast bedankt

26 antwoorden

Gesponsorde links
Offline MrWolf - 05/01/2011 16:03
Avatar van MrWolf Lid Als je het doet moet met php include moet je dit in php.ini wijzigen:
allow_url_fopen: true
allow_url_include: true
Offline Sam - 05/01/2011 16:09
Avatar van Sam PHP expert Ik denk dat je de inhoud van de pagina dan beter met ajax opvraagt en via js in de div zet...
Offline chth - 05/01/2011 16:35
Avatar van chth Lid daar was ik al bang voor.
ik heb totaal geen kennis van js, heeft er iemand een eenvoudig script waarmee dit mogelijk is?
Offline vinTage - 05/01/2011 16:53
Avatar van vinTage Nieuw lid Het kan niet simpeler denk ik 
Offline MrWolf - 05/01/2011 16:57
Avatar van MrWolf Lid
Sam schreef:
Ik denk dat je de inhoud van de pagina dan beter met ajax opvraagt en via js in de div zet...

Volgens mij kan je met ajax alleen gegevens downloaden van dezelfde site, dus niet een andere.
Offline chth - 05/01/2011 16:59
Avatar van chth Lid als ik vragen mag, hoe heeft men dit op sitemasters gedaan dat de inhoud steeds in het midden opent en dat er tog links en rechts nog een kolommen zijn met koppelingen in en die koppelingen openen ook in het midden?
Offline Hend - 05/01/2011 17:04
Avatar van Hend Lid met een aantal divs en met php denk ik
Offline pijke - 05/01/2011 17:08
Avatar van pijke Gouden medaille

Lid
divs->tables
 
Offline vinTage - 05/01/2011 17:09 (laatste wijziging 05/01/2011 17:10)
Avatar van vinTage Nieuw lid ok, weer een topic verkloot door zowel de ts als 'nuttige reacties zoals hierboven..

(edit: ik bedoelde niet de reactie van pijke)
Offline chth - 05/01/2011 17:09
Avatar van chth Lid ja, maar HOE kan ik dit dan met php doen?
ik dacht aan "include()" maar hoe kun je dan aangeven waar hij die koppeling moet openen?
Offline vinTage - 05/01/2011 17:12
Avatar van vinTage Nieuw lid
  1. if(isset($_GET['iets_uit_de_url']))
  2. {
  3. //controles
  4. include('dat_uit_de_url);
  5. }
Offline chth - 05/01/2011 17:15
Avatar van chth Lid kan je een uigebreider voorbeeld geven aub?
Offline MrWolf - 05/01/2011 17:16
Avatar van MrWolf Lid Zo:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <link rel="stylesheet" href="test.css" type="text/css" />
  6. <title>test</title>
  7. </head>
  8.  
  9. <body>
  10. <div id="total">
  11. <div id="sidebar">
  12. <a href="http://www.google.be">ga naar google</a>
  13. </div>
  14.  
  15. <div id="content">
  16. <?php include("hoi.php"); ?>
  17. </div>
  18. </div>
  19. </body>
  20. </html>

(Bij dit voorbeeld moet dus in dezelfde map het bestand hoi.php staan)
Als dan bijvoorbeeld hoi.php dit bevat:
  1. Hoi dit is een pagina!<br />
  2. Je kan ook gewoon in deze pagina html-tags gebruiken.<br />
  3. <?php echo "PHP kan je ook gebruiken!"; ?>

Dan ziet de totale pagina er zo uit:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <link rel="stylesheet" href="test.css" type="text/css" />
  6. <title>test</title>
  7. </head>
  8.  
  9. <body>
  10. <div id="total">
  11. <div id="sidebar">
  12. <a href="http://www.google.be">ga naar google</a>
  13. </div>
  14.  
  15. <div id="content">
  16. Hoi dit is een pagina!<br />
  17. Je kan ook gewoon in deze pagina html-tags gebruiken.<br />
  18. PHP kan je ook gebruiken!
  19. </div>
  20. </div>
  21. </body>
  22. </html>
Offline chth - 05/01/2011 17:22 (laatste wijziging 05/01/2011 17:23)
Avatar van chth Lid @MrWolf: bedankt maar ik denk dat je me verkeerd begrijpt ofwel heb ik het verkeerd uitgelegd, hopelijk doe ik het deze keer duidelijker:
stel: ik heb in men linkse kolom (div met id=sidebar) een link staan contact die verwijst naar contact.php
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <link rel="stylesheet" href="test.css" type="text/css" />
  6. <title>test</title>
  7. </head>
  8.  
  9. <body>
  10. <div id="total">
  11. <div id="sidebar">
  12. <a href="contact.php">contact</a>
  13. </div>
  14.  
  15. <div id="content">
  16.  
  17. </div>
  18. </div>
  19. </body>
  20. </html>

en ik gebruik dezelfde css-code als daarnet, hoe kan ik er dan voor zorgen dat contact.php zich opent in de de div met id=content als ik op contact klik in de linkse kolom?
Offline MrWolf - 05/01/2011 17:52
Avatar van MrWolf Lid Je kan linken naar bijvoorbeeld mijnsite.nl/?pagina=contact
Dan kan je met isset($_GET['pagina']) controleren of er een pagina meegegeven is en daarna kan je met include dat bestand openen
Offline chth - 05/01/2011 18:30
Avatar van chth Lid als ik dit in de div content plaats:
  1. <?php
  2. if(isset($_GET["contact.php"])) {
  3. include("contact.php");
  4. }
  5. ?>


dan wordt contact rechtstreeks geopent maar niet in de div
Offline Hend - 05/01/2011 19:42 (laatste wijziging 05/01/2011 19:44)
Avatar van Hend Lid Heb je de include wel binnen de div-tags staan?
  1. <div id="content">
  2. <?php
  3. if(isset($_GET["contact.php"])) {
  4. include("contact.php");
  5. }
  6. ?>
  7. </div>
Offline chth - 05/01/2011 20:27
Avatar van chth Lid ja natuurlijk, is namelijk ook te zien in men vorig codevoorbeeld 
Offline Beirensg - 11/01/2011 16:21
Avatar van Beirensg HTML beginner
MrWolf schreef:
Je kan linken naar bijvoorbeeld mijnsite.nl/?pagina=contact
Dan kan je met isset($_GET['pagina']) controleren of er een pagina meegegeven is en daarna kan je met include dat bestand openen


hetgeen MrWolf voorstelt is relatief simpel en duidelijk: link in a is mijnsite.nl/?pagina=contact
en in de div.content moet je vragen of pagina is ingevuld en niet:

  1. if(isset($_GET["contact.php"])) {
  2. include("contact.php");
  3. }

maar wel:
  1. if(isset($_GET["pagina"])) {
  2. include($_GET["pagina"].".php");
  3. }


Dit zou moeten werken.

Let wel dit vereist een refresh van de hele pagina, aangezien de link verwijst naar een nieuwe pagina. Deze refresh kan men elimineren door JavaScript te gebruiken (preloaden van alle pagina's, en enkel de juiste tonen aan de gebruiker) of door ajax (na een klik de div refreshen)

ik hoop dat ik ongeveer duidelijk was.
Offline vinTage - 11/01/2011 16:33 (laatste wijziging 11/01/2011 16:33)
Avatar van vinTage Nieuw lid
Beirensg schreef:
[..quote..]

hetgeen MrWolf voorstelt is relatief simpel en duidelijk: link in a is mijnsite.nl/?pagina=contact
en in de div.content moet je vragen of pagina is ingevuld en niet:

[..code..]
maar wel:
[..code..]

Dit zou moeten werken.

Let wel dit vereist een refresh van de hele pagina, aangezien de link verwijst naar een nieuwe pagina. Deze refresh kan men elimineren door JavaScript te gebruiken (preloaden van alle pagina's, en enkel de juiste tonen aan de gebruiker) of door ajax (na een klik de div refreshen)

ik hoop dat ik ongeveer duidelijk was.


url.tld?pagina=config 
Offline Beirensg - 11/01/2011 16:39
Avatar van Beirensg HTML beginner  
Je hebt volledig gelijk, ik was iets te snel.

natuurlijk moet de beveiliging wel nog bekeken worden. Je maakt het beste een switch instructie (zonder default) voor $_GET['pagina'].
Maar het idee blijft hetzelfde.

Offline Kevin - 11/01/2011 19:20
Avatar van Kevin Crew Ajax/REST En toch is het (zonder refresh) met jQuery gemakkelijker dan hier deze lange overvloedige uitleggen.

bv

  1. <script src="path/naar/jquery.js"></script>
  2.  
  3. <a href="javascript:void(0);" onclick="$('#content').load('http://www.google.be');">Laad google</a>
  4.  
  5. <div id="content">
  6. Lorem ipsum die wijzigt naar google als ik op de link klik.
  7. </div>
Offline vinTage - 11/01/2011 19:49
Avatar van vinTage Nieuw lid En dan vergeteet je de SEO maar even 
Er zijn veel mooiere manieren om het met js in te laden hoor.

Kevin schreef:
<a href="javascript:void(0);" onclick="$('#content').load('http://www.google.be');">Laad google</a

kan al een pak netter door
<a href="deJuisteURL" onclick="$('#content').load('http://www.google.be'); return false;">Laad google</a>

Maar nog mooier is met swfadress, dan kan je tenminste nog bookmarken, of andere mensen een linkje laten delen.
Offline chth - 13/01/2011 18:40
Avatar van chth Lid @ Beirensg

bedankt voor reactie maar het lukt me niet, ik weet niet wat ik verkeerd doe
dit is de code die ik gebruik:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <link rel="stylesheet" href="test.css" type="text/css" />
  6. <title>test</title>
  7. </head>
  8.  
  9. <body>
  10. <div id="total">
  11. <div id="sidebar">
  12. <a href="http://phptestsite.site90.com/?pagina=info">welkom</a>
  13. </div>
  14.  
  15. <div id="content">
  16. <?php
  17. if(isset($_GET["info"])) {
  18. include($_GET["info"].".php");
  19. }
  20. ?>
  21. </div>
  22. </div>
  23. </body>
  24. </html>

Offline Beirensg - 14/01/2011 09:55
Avatar van Beirensg HTML beginner Je zit verkeerd met de $_GET variable.

Indien je in de url variabelen wil meegeven (in je code is dit de variabele pagina, dewelke je "info" meegeeft als waarde), kan je die ophalen met behulp van $_GET. Maar je moet dan $_GET['pagina'] gebruiken, dit retourneert dan "info".

Code moet dan zo zijn:

  1. <div id="total">
  2. <div id="sidebar">
  3. <a href="http://phptestsite.site90.com/?pagina=info">welkom</a>
  4. </div>
  5.  
  6. <div id="content">
  7. <?php
  8. if(isset($_GET["pagina"])) {
  9. include($_GET["pagina"].".php");
  10. }
  11. ?>
  12. </div>
  13. </div>
  14. </body>


Na klikken op de link wordt dan de volgende url geladen: http://phptestsite.site90.com/?pagina=info. en in div#content wordt volgende script geinclude: info.php.
Offline chth - 15/01/2011 09:54
Avatar van chth Lid bedankt, nu lukt het wel. 
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.371s