<?php Include uit andere map

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

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Caddy
  • Registratie: Januari 2000
  • Laatst online: 13-09 20:26

Caddy

Press start to shutdown

Topicstarter
zojuist wil ik een bestand ( connect.php ) include die een mapje terug staat.
dus ik wil de connect.php uit: /httpdocs/shivella/connect.php
include in: /httpdocs/shivella/modules/nieuws.php

ik gebruik dus:

<?
include "../connect.php";
?>

Deze geeft bij mij een error !
Hoe kan ik dit oplossen ? de ../ gebruik je in HTML maar kan deze dus niet in php gebruikt worden ??


Graag alleen serieus antwoorden. Want mensen die je doorverwijzen naar de zoek functie hierboven en google.com snappen denk ik het idee van een forum niet!

Acties:
  • 0 Henk 'm!

  • Stoffel
  • Registratie: Mei 2001
  • Laatst online: 19-09 10:17

Stoffel

Engineering the impossible

Welke error krijg je dan? Dit zou namelijk gewoon moeten werken.

Edit: dan wel zo natuurlijk:

include("../connect.php");

[ Voor 35% gewijzigd door Stoffel op 28-02-2005 11:07 ]


Acties:
  • 0 Henk 'm!

  • CH4OS
  • Registratie: April 2002
  • Niet online

CH4OS

It's a kind of magic

Ik zou zeggen, check de rechten op de map, waar je de file uit wil halen, en de rechten op het bestand zelf...

Acties:
  • 0 Henk 'm!

  • Caddy
  • Registratie: Januari 2000
  • Laatst online: 13-09 20:26

Caddy

Press start to shutdown

Topicstarter
Hij geeft deze error:

Warning: main(): Unable to access ../connect.php in C:\apache\htdocs\shivella\modules\nieuws.php on line 3

Warning: main(../connect.php): failed to open stream: No such file or directory in C:\apache\htdocs\shivella\modules\nieuws.php on line 3

Warning: main(): Failed opening '../connect.php' for inclusion (include_path='.; \apache\includes;\apache\htdocs\;\apache\htdocs\phpmyadmin') in C:\apache\htdocs\shivella\modules\nieuws.php on line 3

Acties:
  • 0 Henk 'm!

  • Sybr_E-N
  • Registratie: December 2001
  • Laatst online: 12:54
Misschien heb je wat aan dit. Met name de kwoot: "If filename begins with ../, it is looked only in include_path relative to the current working directory.". Misschien dat je include_path niet goed staat?

[ Voor 4% gewijzigd door Sybr_E-N op 28-02-2005 11:13 ]


Acties:
  • 0 Henk 'm!

  • BasieP
  • Registratie: Oktober 2000
  • Laatst online: 22-07-2024
die error geeft aan dat de file er gewoon niet is.
hij zou volgens jouw dus hier moeten staan:

C:\apache\htdocs\shivella\connect.php

This message was sent on 100% recyclable electrons.


Acties:
  • 0 Henk 'm!

Verwijderd

Want mensen die je doorverwijzen naar de zoek functie hierboven en google.com snappen denk ik het idee van een forum niet!
Een forum is niet bedoeld om zomaar vanalles te vragen en om mensen jouw codes te latens chrijven. Als je gezocht hebt en je kan er dan nog niet uitkomen dan willen mensen je best helpen.

Forum is niet gemaakt voor luie mensen die geen reet willen doen en bij problemen direct om hulp vragen.

Hint: http://nl3.php.net/include/ en het misterie rond includen is opgelost.

Warning: main(../connect.php): failed to open stream: No such file or directory in

Bestand bestaat niet, of je hebt niet de juiste rechten. CHMOD 'shivella' eens naar 777 of read/write goedzetten op Windows.

Als je include($_SERVER["DOCUMENT_ROOT"]."/connect.php"); gebruikt?

Acties:
  • 0 Henk 'm!

  • Caddy
  • Registratie: Januari 2000
  • Laatst online: 13-09 20:26

Caddy

Press start to shutdown

Topicstarter
jah daar staat ie ook in!
de bestanden die in hetzelfde mapje als de connect.php staan werken wel prima.
Tis echt als ik een mapje terug wil met ../

Vreemd!


maar bedankt voor jullie hulp!

Acties:
  • 0 Henk 'm!

Verwijderd

Zou ik toch even naar je php.ini kijken, met name naar:
include_path
safe_mode_include_dir
open_basedir

Acties:
  • 0 Henk 'm!

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 19:51

Creepy

Tactical Espionage Splatterer

Caddy schreef op maandag 28 februari 2005 @ 11:05:
Graag alleen serieus antwoorden. Want mensen die je doorverwijzen naar de zoek functie hierboven en google.com snappen denk ik het idee van een forum niet!
Die mensen snappen het denk ik prima. We gaan er hier namelijk vanuit dat je eerst zelf actief opzoek gaat naar een oplossing en dat je dus aangeeft wat je al hebt geprobeerd. Als je dit niet doet dan krijg je vanzelf die verwijzingen ;)

Dus als je zelf al wat hebt geprobeerd en gedebugt, geef dat dan aan.

Zie ook P&W FAQ - De "quickstart" voor wat we verwachten van een startpost hier in Programming & Webscripting

[ Voor 6% gewijzigd door Creepy op 28-02-2005 11:21 ]

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Acties:
  • 0 Henk 'm!

  • Caddy
  • Registratie: Januari 2000
  • Laatst online: 13-09 20:26

Caddy

Press start to shutdown

Topicstarter
Uiteraard snap ik dat je eerst ff rond moet zoeken voordat je een topic start maar
ik zie vaak op het tweakers.net forum reakties zoals "google eerst ff rond!" , "dit is al eerder besproken!" etc... en dan denk ik, zo iemand vraagt gewoon hulp en het antwoord zal heus wel ergens op het www te vinden zijn maar wees gewoon hulpzaam en als je van mening bent dat het al eerder besproken is dan klik je er toch lekker niet op laat staan reageren!
Maar ik ben nog steeds beetje aan het klote!
het heeft denk ik idd met me php.ini te maken!
Ik laat ff weten als ik er uit ben!

Acties:
  • 0 Henk 'm!

Verwijderd

Wat gebeurt er als je dit doet?

PHP:
1
include( dirname(__FILE__).'/../include.php' );

[ Voor 8% gewijzigd door Verwijderd op 28-02-2005 11:33 ]


Acties:
  • 0 Henk 'm!

  • BasieP
  • Registratie: Oktober 2000
  • Laatst online: 22-07-2024
Verwijderd schreef op maandag 28 februari 2005 @ 11:33:
Wat gebeurt er als je dit doet?

PHP:
1
include( dirname(__FILE__).'/../include.php' );
doe het dan direct helemaal goed en maak ervan:

incldue('http://jouwurl.iets/shivella/connect.php');

en als dat hierboven werkt:
include('./../include.php');

wanneer de bovenste niet werkt dan IS het gewoon een rechtenprobleem (al xx keer gezegt)

[ Voor 13% gewijzigd door BasieP op 28-02-2005 11:40 ]

This message was sent on 100% recyclable electrons.


Acties:
  • 0 Henk 'm!

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 02:21

Janoz

Moderator Devschuur®

!litemod

Je bovenste voorbeeld (met http://) hoort sowieso niet op die manier te werken. Waneer iets via een url opgeroepen wordt, wordt er alleen gecompileerde code opgeleverd. Er is in dat geval geen database verbinding aangemaakt die in de rest van het script gebruikt kan worden (wat neem ik aan gebeurt in connect.php).

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Acties:
  • 0 Henk 'm!

Verwijderd

BasieP schreef op maandag 28 februari 2005 @ 11:39:
[...]


doe het dan direct helemaal goed en maak ervan:

incldue('http://jouwurl.iets/shivella/connect.php');

en als dat hierboven werkt:
include('./../include.php');

wanneer de bovenste niet werkt dan IS het gewoon een rechtenprobleem (al xx keer gezegt)
Doe het dan helemaal goed??? Ik geloof dat __FILE__ het absolute pad naar het script dat ge-include wordt. Dat is even heeel wat anders dan wanneer je de URI (met http://) opgeeft...

Ik bedoel dat je met behulp van dirname(__FILE__).'/' op een makkelijke manier relatief je bestanden kan includen. (zonder dat je het domein of pad hoeft te weten)

[ Voor 25% gewijzigd door Verwijderd op 28-02-2005 13:26 ]


Acties:
  • 0 Henk 'm!

  • Caddy
  • Registratie: Januari 2000
  • Laatst online: 13-09 20:26

Caddy

Press start to shutdown

Topicstarter
Yep werkt als ik het volledige http:// url invul..

Vreemd!!
Maar bedankt!!! iedereen!

Acties:
  • 0 Henk 'm!

  • SgtStrider
  • Registratie: Juli 2003
  • Laatst online: 11:15

SgtStrider

Fractal Switchover!

Als je even leest, moet dat dus NIET op die manier gebeuren.

Maargoed.

CM NR200P | Gigabyte B550i Aorus Pro AX | 5600X | AMD Radeon 6900XT | Crucial P2 1TB | Ballistix 2x16GB 3600CL16 | BQ DarkRock TF | Corsair SF600


Acties:
  • 0 Henk 'm!

  • MTWZZ
  • Registratie: Mei 2000
  • Laatst online: 13-08-2021

MTWZZ

One life, live it!

Al naar realpath gekeken?
PHP:
1
2
$real_path = realpath("../connect.php");
include($real_path);

Nu met Land Rover Series 3 en Defender 90


Acties:
  • 0 Henk 'm!

  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 20:50

Pelle

🚴‍♂️

Inderdaad, gewoon met absolute paden werken voor includes.

PHP:
1
include('/var/www/website.nl/includes/connect.php');


Dat werkt altijd. En weet je het absolute path niet, dan kun je daar o.a. met realpath() achterkomen ja :)
Pagina: 1