Jump to content
GSForum - Segélyvonal

Volt-e látogató?


Peredi Zoltán

Recommended Posts

Peredi Zoltán

Uraim!

 

Egy honlap al-oldalait leíró fájlba látogatószámlálót applikálva megtudhatom, hogy az illetõ alegység iránt volt-e érdeklõdés.

 

De van-e mód arra, hogy megtudjam, ráklikkelt-e a látogató egy olyan linkre, amelyik nem valamelyik al-oldalra, hanem egy fix szövegfájlra mutat?

Link to comment
Share on other sites

Kiskalóz

php segítségével meg lehet oldani

Link to comment
Share on other sites

Peredi Zoltán

Na, hogyan? A szövegfájlba nem tudok php-s látogatószámlálót beépíteni.

Link to comment
Share on other sites

payskin

Úgy, hogy nem a szövegfájlt linkeled be, hanem csinálsz mondjuk egy download.php oldalt, ami paraméterben megkapja, hogy mit akarnak letölteni, az elmenti valahova (szövegfájl, adatbázis), hogy a valamit eggyel többször töltötték le, majd elindítja a letöltést (headeren keresztül).

Link to comment
Share on other sites

Peredi Zoltán

Kedves Fõkolompos,

 

köszönöm, ezen a nyomon elindulok. De nem tudnál mutatni egy kód részletet? Fõleg ezt a headeren keresztüli letöltés-indítást nem tudom elképzelni egyelõre.

Link to comment
Share on other sites

Peredi Zoltán

Tehát nem a tanulmany.pdf-et linkelem be, hanem a tanulmany.php-t.

 

Ami most így néz ki:

 

<?php

$filename = "tanulmany.pdf";

header("Content-Type: application/pdf");

header("Location: http://localhost/letolt/");

fopen($filename);

 

/* itt lesz majd a számláló rész*/

 

?>

 

de persze nem mûködik, nem nyitja meg a pdf fájlt. Nem néznétek rá?

Link to comment
Share on other sites

payskin
Első példa, de a számolást előbb kéne elvégezni. A letöltés (header) legyen a legvége.
Link to comment
Share on other sites

Peredi Zoltán

Aha, köszönöm, halad a dolog! Tehát ez:

 

<?php

header('Content-type: application/pdf');

header('Content-Disposition: attachment; filename="downloaded.pdf"');

readfile('original.pdf');

?>

 

De egyelõre nem mûködik. Az original.pdf helyére beírtam a saját tanulmányom nevét. De van itt még egy másik, a downloaded.pdf. Ide mit kéne írni? Merthogy nekem csak egy pdf fájlom van.

Link to comment
Share on other sites

payskin

Ugyanazt kell odaírni, csak a példában egy kicsit zavaró volt...

 

Ez a kód a readfile-nál volt példa a PHP doksiban -- érdemes olvasgatni! Kipróbáltam, működik. De a nagy része felesleges "csicsa", a te három sorod is elég volna hozzá.

 

<?php
$filename = 'a.pdf';

if (file_exists($filename)) 
{
    header('Content-Description: File Transfer');
    header('Content-Type: application/octet-stream');
    header('Content-Disposition: attachment; filename='.basename($filename));
    header('Content-Transfer-Encoding: binary');
    header('Expires: 0');
    header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
    header('Pragma: public');
    header('Content-Length: ' . filesize($filename));
    ob_clean();
    flush();
    readfile($filename);
    exit;
}
else
{
    die('File not found');
}
?>

Link to comment
Share on other sites

Peredi Zoltán

Ez már tökéletesen mûködik, a csicsák törlése után is. Ebben egyértelmû, mi a fájl neve. Van mit tanulni a readfile meg a header témákban!

Még egyszer köszönöm!

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...