login  Naam:   Wachtwoord: 
Registreer je!
 Forum

map voor public_html

Offline kenzo - 13/03/2010 12:29
Avatar van kenzoPHP beginner Hallo,

Ik wil vanuit deze map: public_html/map/bestand.php een bestand oproepen van buiten de public_html map

dus op het zelfde niveau als public_html staat een map => MAP

hoe kan ik bestanden hieruit in een iframe zetten?


heb al geprobeerd met verschillende combinaties met ./ en ../ etc...

maar krijg niet de goede map


bedankt

13 antwoorden

Gesponsorde links
Offline Martijn - 13/03/2010 12:35
Avatar van Martijn Crew PHP 1. waarom zou je zo willen werken? T heet public html omdat anderen er dan bij kunnen...
2. je kunt een absolute path proberen
Offline kenzo - 13/03/2010 12:37
Avatar van kenzo PHP beginner het is namelijk zo...

ik heb een script dat een backup van alle bestanden maakt.
Ik wil de map backup niet backuppen en vanuit public_html/backup kan hij om de een of andere reden alleen bestanden in de map backup backuppen en niet een map die ervoor ligt.

met een absolute path zegt hij dat de map niet gevonden kan worden
Offline nick5556 - 13/03/2010 12:38
Avatar van nick5556 PHP beginner in de map backup en met een htacces bestand de map blokkeren, of met een CHMOD alles dichtgooien.
Offline kenzo - 13/03/2010 12:41
Avatar van kenzo PHP beginner ja maar dan vind hij de voorliggende map niet (hij backupt alleen wat in de map backup/ staat)
Offline Filip - 13/03/2010 12:46
Avatar van Filip IRC guru Heel simpel, een map buiten de public_html kan je NIET aanspreken via het web.. Het enige dat je kan doen is die file inladen in php (via een file_get_contents ofzo) en op die manier doorsturen. Je kan nooit een map buiten je public_html zomaar aanspreken, aangezien dat een vette security lek zou zijn. Je moet dus alles door php laten opvragen, en er voor zorgen dat php 'lees' rechten heeft op die bepaalde map.
Offline kenzo - 13/03/2010 13:07
Avatar van kenzo PHP beginner
  1. $homepage = file_get_contents('../../backup/index.php');
  2. echo $homepage;


gebruik dit maar krijg alleen maar een lege pagina te zien
Offline Koen - 13/03/2010 17:03
Avatar van Koen PHP expert
nephilim schreef:
Je moet dus alles door php laten opvragen, en er voor zorgen dat php 'lees' rechten heeft op die bepaalde map.
Offline Filip - 15/03/2010 09:18
Avatar van Filip IRC guru En dan ook, als je het dan toch zo doet, gebruik dan een absoluut path...
Offline kenzo - 27/03/2010 10:39
Avatar van kenzo PHP beginner dus... hoe kan ik nu verder?
Offline TotempaaltJ - 27/03/2010 13:31
Avatar van TotempaaltJ PHP interesse Lees wat Nephilim zei!
Offline kenzo - 27/03/2010 13:36
Avatar van kenzo PHP beginner in het eerste topic heb ik aangegeven dat het gaat om de map voor public_html..
hoe roep ik dit met een absolute path aan dan?
Offline TotempaaltJ - 27/03/2010 13:53
Avatar van TotempaaltJ PHP interesse Zucht...

Een absolute path is vanaf de root, en begint dus met "/", daarna ga je naar de volgende map, en de volgende, etc. Wil je erachter komen hoe je daar komt? Echo eens $_SERVER['SCRIPT_FILENAME'].
Offline ArieMedia - 28/03/2010 12:05
Avatar van ArieMedia Gouden medaille

PHP ver gevorderde
Volg dit stapsgewijs uit, en waarschijnlijk lukt het je dan.

Stap 1:
Maak een test.php (A) aan en zet er deze code in:
  1. <?php
  2. echo 'hoi
  3. ?>

met programmeerfout meenemen!

Stap 2:
Open test.php (A), je zal daar een error vinden zoals dit:

Citaat:
Warning: Unexpected character in input: ''' (ASCII=39) state=1 in /home/x/domains/x/public_html/test.php on line 2


Uitleg
/home/x/domains/x/public_html/ is je absolute pad, je ziet al dat deze naar public_html gaat, dit kunnen we veranderen met een include ;)

Stap 3:
Maak een nieuw testbestandje (B) aan , en zet daar in:
  1. <?php die('inlcuded'); ?>


Zet in je eerste testbestand (A)
  1. $sPath = 'home/x/domains/x/public_html/'; // public_html ga je dus wijzigen naar de map waar jij je bestandje B in hebt gezet
  2. $sBestand = 'test.php'; // bestandje B
  3. $sPath .= $sBestand;
  4. require_once($sPath);


Stap 4:
Open opnieuw test.php (A), als het goed is zie je nu included staan (wat dus uit bestand B komt)
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.227s