[PHP] fopen - Hoe krijg je een filename?

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Eerst een stukje code :)
code:
1
2
3
4
5
6
7
8
<?php
$handle = fopen("http://www.example.com/", "rb");
$contents = '';
while (!feof($handle)) {
  $contents .= fread($handle, 8192);
}
fclose($handle);
?>


Hoe kun je nou erachter komen wat de bestandsnaam is van de opgehaalde info? (index.html / index.php etc.)

Acties:
  • 0 Henk 'm!

  • Maxxi
  • Registratie: Mei 2004
  • Laatst online: 19-04 19:18
$phpself = $_SERVER['PHP_SELF'];
OF $PHP_SELF

Dit geeft de filename ZONDER een .

Acties:
  • 0 Henk 'm!

  • simon
  • Registratie: Maart 2002
  • Laatst online: 00:18
Maxxi schreef op donderdag 23 juni 2005 @ 08:55:
$phpself = $_SERVER['PHP_SELF'];
OF $PHP_SELF

Dit geeft de filename ZONDER een .
dat werkt niet op alle configs en geeft niet de opgehaalde bestandsnaam aan. Bij wat jij probeert zul je misschien even moeten spelen met kijken of er een index.html, index.php etc. file is, want de webservert serveert gewoon bij het aanvragen een pagina en geeft volgens mij niet de filename mee.

|>


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
$PHP_SELF had ik al geprobeerd, zonder succes... ook __FILE__ doet het niet. Het ziet er idd naar uit dat je alle mogelijke opties af moet zoeken.

Thx voor jullie snelle reacties! :)

Acties:
  • 0 Henk 'm!

  • xces
  • Registratie: Juli 2001
  • Laatst online: 20-09 16:56

xces

To got or not to got..

@maxxi, volgens mij wil hij een remote url openen, en dan moet je dus de "header" uitlezen van de url om te zien welk bestand je krijgt geserveerd. Het kan namelijk ook zo zijn dat je niet op / blijft, maar geredirect wordt naar een compleet andere url.

Je zou het eens met CURL kunnen proberen. Bekijk dan vooral het commentaar van "rodrigo dot nakahodo at dhweb dot com dot br", die heeft een kant en klare url.

Acties:
  • 0 Henk 'm!

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 14:28
Als de webserver een aanvraag krijgt voor ./ zal hij je toch niet gaan redirecten naar index.html? Ik neem aan dat de webserver dan zelf zo slim is om gewoon dat juiste bestandje te laden. Anders is het gewoon zonde van de tijd.

Acties:
  • 0 Henk 'm!

  • simon
  • Registratie: Maart 2002
  • Laatst online: 00:18
djluc schreef op donderdag 23 juni 2005 @ 11:23:
Als de webserver een aanvraag krijgt voor ./ zal hij je toch niet gaan redirecten naar index.html? Ik neem aan dat de webserver dan zelf zo slim is om gewoon dat juiste bestandje te laden. Anders is het gewoon zonde van de tijd.
Inderdaad, dat stel je in op je webserver, die bekijkt je aanvraag, en is een bestand als index.html enz. beschikbaar dan opent de webserver deze gewoon. Je wordt dus niet doorgestuurd.

|>


Acties:
  • 0 Henk 'm!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 18:14
Het enige wat een webserver doet is het document terugsturen waar naar verwezen wordt door de URL die je meegeeft. Hoe de webserver dat doet, daar heb je als client niets mee te maken. Er is dan ook geen manier om uit te zoeken of het document uit een bestand komt en zo ja hoe dat bestand dan heet; HTTP ondersteunt dat simpelweg niet.

Het zou ook niet kunnen, want het is best mogelijk dat een document (zoals bijvoorbeeld een directory listing zoals de meeste webservers wel kunnen genereren) geheel gegenereerd wordt zonder dat er een fysiek bestand aan te pas komt.

[ Voor 27% gewijzigd door Soultaker op 23-06-2005 15:09 ]

Pagina: 1