Weergegeven resultaten: 1 t/m 6 van 6
  1. #1
    Approved 9-lifer stoffer's schermafbeelding
    Lid sinds
    22/09/02
    Locatie
    Singapore
    Berichten
    1.919
    iTrader
    10 (100%)

    PHP: Afbeeldingslocatie verborgen houden

    Ik zou een afbeelding op een site willen plaatsen waarvan de locatie verborgen moet blijven.

    Te vergelijken met
    <?
    include("bestand.txt");
    ?>
    om gegevens op te halen zonder dat de bezoeker weet uit welk bestand deze komen

    Nog anders gezegd:
    Stel dat ik een afbeelding heb op locatie: http://www.test.com/afb.JPG
    dan wil ik niet dat bezoekers die locatie achterhalen maar wil ik de afbeelding wel laten zien wanneer ze bvb ingelogd zijn.

    Ofwel zou de afbeelding niet mogen verschijnen wanneer de rechtstreekse url gebruikt wordt.

    Heeft iemand hier een eenvoudige oplossing voor?

  2. #2
    Approved 9-lifer Lashknife's schermafbeelding
    Lid sinds
    17/07/02
    Locatie
    Boechout
    Berichten
    3.304
    iTrader
    1 (100%)
    Weblogs
    1
    eens de prent in de browser cache zit, kan je er niks tegen doen dat ze ze toch in hun bezit krijgen.
    En anders proberen hotlinking met htaccess tegengaan? Kunnen ze de prent niet rechtstreeks refereren, maar moeten altijd via de pagina gaan.

  3. #3
    Verwarmingselement Radiance's schermafbeelding
    Lid sinds
    1/07/02
    Locatie
    Brussel
    Berichten
    3.779
    iTrader
    14 (100%)
    Maak een image.php die als parameter een bv. id of naam van een bestand aanneemt.
    Met fopen() kan je uw bestandje uitlezen, als je dan nog de juiste header()s meegeeft, dan kan je in je html gewoon het volgende placeren:

    PHP-code:
    <?php
    ob_start
    ();
    // assuming you have image data in $imagedata
    $length strlen($imagedata);
    header('Last-Modified: '.date('r'));
    header('Accept-Ranges: bytes');
    header('Content-Length: '.$length);
    header('Content-Type: image/jpeg');
    print(
    $imagedata);
    ob_end_flush();
    ?>

    <img src="image.php?id=3" />

  4. #4
    Approved 9-lifer stoffer's schermafbeelding
    Lid sinds
    22/09/02
    Locatie
    Singapore
    Berichten
    1.919
    iTrader
    10 (100%)
    Citaat Oorspronkelijk geplaatst door Lashknife Bekijk bericht
    eens de prent in de browser cache zit, kan je er niks tegen doen dat ze ze toch in hun bezit krijgen.
    En anders proberen hotlinking met htaccess tegengaan? Kunnen ze de prent niet rechtstreeks refereren, maar moeten altijd via de pagina gaan.
    Ik heb er geen problemen mee dat ze de afbeelding in hun bezit krijgen. Ik wil echter niet dat ze de locatie van de afbeelding te weten komen.
    Ik heb zitten prutsen met htaccess maar dat lukte niet echt.

    @Radiance:
    Om te testen gebruik ik nu volgende code:
    PHP-code:
    test.php

    <?php
        ob_start
    ();

        
    $myFile "afb.JPG";
        
    $imagedata fopen($myFile'r');

        
    // assuming you have image data in $imagedata
        
    $length strlen($imagedata);
        
    header('Last-Modified: '.date('r'));
        
    header('Accept-Ranges: bytes');
        
    header('Content-Length: '.$length);
        
    header('Content-Type: image/jpeg');
        print(
    $imagedata);
        
    ob_end_flush();
    ?>
    PHP-code:
    main.php

    <?php
        
    echo "<img src='test.php' />";
    ?>
    afb.JPG zit in dezelfde map als de *.php bestanden

    Ik krijg echter niets te zien, enig idee wat ik nog verkeerd doe?

  5. #5
    Member dJeez's schermafbeelding
    Lid sinds
    17/07/02
    Locatie
    Sol System
    Berichten
    10.240
    iTrader
    1 (100%)
    Citaat Oorspronkelijk geplaatst door stoffer Bekijk bericht
    Ik krijg echter niets te zien, enig idee wat ik nog verkeerd doe?
    Ja, je leest een binair bestand in als een string en probeert dan via strlen de grootte van dat bestand te bepalen. Gebruik dus vb. filesize en readfile eens in je script.

  6. #6
    Approved 9-lifer stoffer's schermafbeelding
    Lid sinds
    22/09/02
    Locatie
    Singapore
    Berichten
    1.919
    iTrader
    10 (100%)
    Ahha!
    Het werkt :-)

    thx

Discussie informatie

Users Browsing this Thread

Op dit moment bekijken 1 gebruikers deze discussie. (0 leden en 1 gasten)

Regels voor berichten

  • Je mag geen nieuwe discussies starten
  • Je mag niet reageren op berichten
  • Je mag geen bijlagen versturen
  • Je mag niet je berichten bewerken
  •