[HTML/PHP] Simpel maar ik kan er niet opkomen

Pagina: 1
Acties:
  • 119 views sinds 30-01-2008
  • Reageer

  • R4NCOR
  • Registratie: December 2000
  • Laatst online: 19-09 16:48

R4NCOR

eigenlijk gewoon Niels

Topicstarter
Tsss... echt erg gesteld met mij vandaag :)

Ik heb een directory structuur als volgt:
code:
1
2
3
4
5
6
7
8
9
htdocs(root)
    |
    +--img
    |
    +--html
    |
    +--functions
    |
    : (rest niet van belang)

En nou heb ik een index.php in htdocs(root) staan, die include files uit html en img, en linkt naar reguser.php in functions. reguser.php moet ook includen uit html en img...

Hoe doe ik dat?
PHP:
1
2
3
<?
include ("html/header.htm");
?>

Dit werkt dus niet.... hoe zat het ook alweer? :)

Verwijderd

[b]Op woensdag 03 oktober 2001 20:42 schreef
PHP:
1
2
3
<?
include ("html/header.htm");
?>

Dit werkt dus niet.... hoe zat het ook alweer? :)
eerst even een directory 'terug' gaan:
PHP:
1
2
3
<?
include ("../html/header.htm");
?>

  • R4NCOR
  • Registratie: December 2000
  • Laatst online: 19-09 16:48

R4NCOR

eigenlijk gewoon Niels

Topicstarter
Op woensdag 03 oktober 2001 20:56 schreef The_dude het volgende:

[..]

eerst even een directory 'terug' gaan:
PHP:
1
2
3
<?
include ("../html/header.htm");
?>
Werkt ook niet... ;(

  • elnino
  • Registratie: Augustus 2001
  • Laatst online: 03-09 05:13
Op woensdag 03 oktober 2001 21:14 schreef Rancor1984 het volgende:

[..]

Werkt ook niet... ;(
Een directory teruggaan gaat ook niet, omdat je dan een directory terug bent, en dus hele andere mappen hebt...

Probeer eens './html/header.html'.

Of begrijp ik je nu verkeerd :? ?

  • Orphix
  • Registratie: Februari 2000
  • Niet online
Hoe bedoel je 'linken' naar reguser.php?? Gewoon includen?
Vuistregel bij php, je include bestanden redenerend vanuit het <b>oorspronkelijke</b> bestand. Dus vanuit index.php in de root directory. Als jij include('html/bla.php') doet zou het moeten werken naar mijn weten...

Verwijderd

Als je het op een webserver hebt staan, kan je natuurlijk gewoon http://baseadres/img/blaat.gif
op die manier,
en dan moet je baseadres veranderen in b.v. www.rancor.com dus dan ga je elke keer het hele adres gebruiken....

  • goalgetter
  • Registratie: Juni 1999
  • Laatst online: 25-08 15:24
Als ik het goed begrijp heb je in de root een index.php deze include (linkt?)een bestand uit functions. Dit bestand wat net geinclude is (reguser.php) moet ook weer bestanden includen, en wel bestanden uit de directory /html en /img. Nu is het zo dat reguser.php "denkt" dat ie in de root staat omdat ie vandaar werd geinclude. Dit resulteerd dus in:
PHP:
1
2
3
4
<?
//index.php
include "./functions/reguser.php";
?>


PHP:
1
2
3
4
<?
//reguser.php
include "./html/bestandje.html";
?>

  • R4NCOR
  • Registratie: December 2000
  • Laatst online: 19-09 16:48

R4NCOR

eigenlijk gewoon Niels

Topicstarter
Op donderdag 04 oktober 2001 10:00 schreef ceidhof het volgende:
Als je het op een webserver hebt staan, kan je natuurlijk gewoon http://baseadres/img/blaat.gif
op die manier,
en dan moet je baseadres veranderen in b.v. www.rancor.com dus dan ga je elke keer het hele adres gebruiken....
Ja, dat is inderdaad een optie, alleen wel erg onpraktisch.

  • R4NCOR
  • Registratie: December 2000
  • Laatst online: 19-09 16:48

R4NCOR

eigenlijk gewoon Niels

Topicstarter
Op donderdag 04 oktober 2001 10:50 schreef goalgetter het volgende:
Als ik het goed begrijp heb je in de root een index.php deze include (linkt?)een bestand uit functions. Dit bestand wat net geinclude is (reguser.php) moet ook weer bestanden includen, en wel bestanden uit de directory /html en /img. Nu is het zo dat reguser.php "denkt" dat ie in de root staat omdat ie vandaar werd geinclude. Dit resulteerd dus in:
PHP:
1
2
3
4
<?
//index.php
include "./functions/reguser.php";
?>


PHP:
1
2
3
4
<?
//reguser.php
include "./html/bestandje.html";
?>
Je begrijpt me bijna goed :)

Ik heb een index.php die include uit "html" en "img", in de index.php staat een LINK naar reguser.php in functions.

Deze reguser.php (totaal lostaande file van index.php dus verder) moet OOK includen uit html en img.. en dat werkt dus niet.

'html/header.htm'
'/html/header.htm'
'./html/header.htm'
'../html/header.htm'
Werkt allemaal niet ;(

Of ligt het probleem bij mijn Apache instellingen?

  • goalgetter
  • Registratie: Juni 1999
  • Laatst online: 25-08 15:24
../html/header.html zou moeten werken. Als ik het nu wel goed heb wordt die reguser.php direct door de browser opgeroepen (www.mijndomein.nl/functions/reguser.php)

Lijkt me stug dat het aan je apache instellingen zou liggen. Post eens wat errors?

Verwijderd

bestaat header.htm uberhaupt wel ?
index.php
PHP:
1
2
3
4
5
6
<?
// de index.php file
include("./functions/reguser.php");
include("./html/file.html");
echo "[img]\"./imag/img.jpg\">";
?[/img]

reguser.php
PHP:
1
2
3
4
5
<?
// de reguser.php file
include("../html/file.html");
echo "[img]\"../img/img.jpg\">";
?[/img]

file.html
PHP:
1
2
3
4
<?
// de file.html
echo "[img]\"./imag/img.jpg\">";
?[/img]

Zoiets zou moeten werken naar mijn idee..... :? Al snap ik er ook geen snars van wat je nou bedoelt :)

  • R4NCOR
  • Registratie: December 2000
  • Laatst online: 19-09 16:48

R4NCOR

eigenlijk gewoon Niels

Topicstarter
Op donderdag 04 oktober 2001 11:23 schreef goalgetter het volgende:
../html/header.html zou moeten werken. Als ik het nu wel goed heb wordt die reguser.php direct door de browser opgeroepen (www.mijndomein.nl/functions/reguser.php)

Lijkt me stug dat het aan je apache instellingen zou liggen. Post eens wat errors?
Juist... Mjah gewoon standaard include errors, dat het path niet bestaat ofzo.

  • R4NCOR
  • Registratie: December 2000
  • Laatst online: 19-09 16:48

R4NCOR

eigenlijk gewoon Niels

Topicstarter
Op donderdag 04 oktober 2001 11:30 schreef Tuin het volgende:
bestaat header.htm uberhaupt wel ?
index.php
PHP:
1
2
3
4
5
6
<?
// de index.php file
include("./functions/reguser.php");
include("./html/file.html");
echo "[img]\"./imag/img.jpg\">";
?[/img]

reguser.php
PHP:
1
2
3
4
5
<?
// de reguser.php file
include("../html/file.html");
echo "[img]\"../img/img.jpg\">";
?[/img]

file.html
PHP:
1
2
3
4
<?
// de file.html
echo "[img]\"./imag/img.jpg\">";
?[/img]

Zoiets zou moeten werken naar mijn idee..... :? Al snap ik er ook geen snars van wat je nou bedoelt :)
Jah, header.htm bestaat :)

Hehe, is mijn verhaal zo vaag? :D Maar goed, ik ga nog wel ff klooien, en als ik er echt niet uitkom, hoor je het wel :P

  • goalgetter
  • Registratie: Juni 1999
  • Laatst online: 25-08 15:24
Euhm, je attributes staan toch wel goed he? Als je webuser de directory niet in mag krijg je ook een 'standaard' include error...

Verwijderd

Includes werken vanuit het bestand dat het includen doet en de directory waar deze in staat .
Als dus in je index wil includen, include je ./html/bestandje.html. Een link in HTML die voorkomt vanuit bestandje.html zal zich dus gedragen alsof hij in de hoofddirectory staat, niet in de subdir /html/
Links in het html bestandje worden dus naar html/anderbestandje.html.

Een handige tip voor php includes zodat je je niet zorgen hoeft te maken over relatieve paden is de volgende :
in je apache conf bij de settings van je virtual host of directory dit zetten :
code:
1
php_value include_path "/dit/is/je/include/dir"

Ter verduidelijking, alles wat nu in die dir staat kan je gewoon includen met:
PHP:
1
2
3
<?
include("bestandje.inc.php");
?>

Dan worden subdirs van die includedir ook wat makkelijker :)
Pagina: 1