Avatar billede thadoews Nybegynder
04. marts 2013 - 14:03 Der er 18 kommentarer

Hjælp til downloadtæller

Hej

Jeg har på min side lidt filer til download, hvor jeg synes det kunne være sjovt at se hvor mange der downloader dem i og med at jeg har ca. 50 besøgende pr. dag og mange flere hits.

Jeg har nu fulgt et udmærket eksempel:
http://www.kavoir.com/2010/05/simplest-php-hit-counter-or-download-counter-count-the-number-of-times-of-access-visits-or-downloads.html

Det har jeg fulgt, men det eneste jeg får ud af det er en hvid side, ingen counts og ingen fil til download... Hvordan får jeg det fixet, så jeg får count og fil?

Som tillæg kunne jeg godt tænke mig at downloadsiden åbnede i et nyt vindue og evt. forsvandt efter at filen er downloadet?
Avatar billede olebole Juniormester
04. marts 2013 - 16:32 #1
<ole>

Først skriver du dette i toppen af dokumentet:

error_reporting(E_ALL)

Dernæst fjerner du de snabel-A'er, der står i koden. Så vil du få udskrevet en fejl

/mvh
</bole>
Avatar billede thadoews Nybegynder
04. marts 2013 - 16:45 #2
Hej Ole!

Jeg har gjort som du sagde, men jeg får stadig ikke noget frem? Er der noget jeg glemmer?
Hvad skulle jeg egentlig få ud af at indsætte "error_reporting(E_ALL)"?
Avatar billede olebole Juniormester
04. marts 2013 - 16:58 #3
Du skulle gerne få udskrevet en fejl. Hvis du ikke får udskrevet en fejl med det, jeg har skrevet, gør du noget helt galt uden at fortælle om det.
Avatar billede thadoews Nybegynder
04. marts 2013 - 17:09 #4
One.com, som jeg hoster igennem, synes at være periodisk nede i dag og jeg kan slet ikke komme igennem til deres support eller logge ind. Så jeg kan ikke finde ud af om det er deres indstillinger den er galt med.

Men her er min komplette kode på én side inkl. den du siger jeg skal tilføje:

<?php
error_reporting(E_ALL)

$hit_count = file_get_contents('count_transformer.txt');
$hit_count++;
file_put_contents('count_transformer.txt', $hit_count);

header('Location: http://www.simonhollander.dk/docs/Elektro/Transformer2.xlsx'); // redirect to the real file to be downloaded

?>


Og nu til det dumme spørgsmål... Skal jeg have html og body tags med? Jeg har googlet mig frem til at nogen siger jeg skal og andre siger jeg ikke skal?
Avatar billede olebole Juniormester
04. marts 2013 - 17:30 #5
Det skal du ikke. Koden fungerer helt fint - men du vil naturligvis aldrig se en fejl  =)

Udkommenter header'en til slut. Så vil siden ikke redirect'e - og du kan nå at læse, hvad PHP siger, fejlen er.

Formodentlig skyldes fejlen, at du ikke har adgang til file_get_contents og file_put_contents hos one.com - men det får du at vide  =)
Avatar billede thadoews Nybegynder
04. marts 2013 - 19:10 #6
Så skete der noget! Jeg manglede at sætte to flueben under deres indstillinger?! Det var jo også lige til at vide heh...

Nå, men jeg fik det her frem:

Parse error: syntax error, unexpected T_VARIABLE in /customers/0/e/3/simonhollander.dk/httpd.www/docs/Elektro/transformer.php on line 1
Avatar billede olebole Juniormester
04. marts 2013 - 19:28 #7
Semikolon:

<?php
error_reporting(E_ALL);

- men den linje bør du slette igen, når det virker - og det gør det åbenbart nu  =)
Avatar billede thadoews Nybegynder
04. marts 2013 - 19:57 #8
Jamen det virker jo nu! :) Jeg takker mange gange :) Lig et svar :)
Avatar billede thadoews Nybegynder
04. marts 2013 - 20:08 #9
Lige som et tillægsspørgsmål:
Er det muligt at hente værdier vha. PHP fra et dokument i en anden mappe eller skal PHP-filen ligge i samme mappe som dokumentet med værdien?
Avatar billede olebole Juniormester
04. marts 2013 - 20:29 #10
Den kan ligge, hvor du ønsker. Du kan skrive:

$hit_count = file_get_contents($_SERVER['DOCUMENT_ROOT'] . 'sti/fra/roden/count_transformer.txt');

- og samme model, når du gemmer  =)

Ellers tak, jeg samler ikke point. Du lægger bare selv et svar og accepterer det, så tråden lukkes  =)
Avatar billede thadoews Nybegynder
04. marts 2013 - 22:36 #11
Lige nu har jeg to problemer:
Halvdelen af mine filer vil ikke downloades selvom de alle har samme kode.... Jeg har været destinationen igennem og det der kommer frem er fejlkoden fra tidligere.

Samt synes jeg ikke at kunne få noget læst fra mine .txt-filer:

<?php

$hit_count = file_get_contents($_SERVER['DOCUMENT_ROOT'] . 'docs/Elektro/count_transformer.txt');
echo $hit_count;

?>

Burde det ikke virke? Jeg får absolut intet tilbage...
Avatar billede olebole Juniormester
05. marts 2013 - 00:06 #12
Prøv lige med fejlmeddelelser slået til igen
Avatar billede olebole Juniormester
05. marts 2013 - 00:08 #13
Hvis du skriver:

<?php

$hit_count = file_get_contents($_SERVER['DOCUMENT_ROOT'] . 'docs/Elektro/count_transformer.txt');
echo $hit_count;

header( ... ... ...);
?>

- går det galt! Du kan ikke sætte en header, når du har outputtet noget til browseren. Slet echo'en - så virker det sikkert
Avatar billede olebole Juniormester
15. marts 2013 - 21:25 #14
?
Avatar billede thadoews Nybegynder
15. marts 2013 - 21:54 #15
Hej igen :)

Der kom noget der tog det meste af min tid :)

Jeg kan se i min frustration at jeg har forsøgt at løse to problemer på én og samme gang, så lad os starte med at skrive til *.txt-filen, såfremt du stadig er villig til at hjælpe :)

Jeg har den her kode som tidligere:
<?php

$hit_count = file_get_contents('count_transformer.txt');
$hit_count++;
file_put_contents('count_transformer.txt', $hit_count);

header('Location: http://www.simonhollander.dk/docs/Elektro/Transformer2.xlsx'); // redirect to the real file to be downloaded

?>


Når jeg trykker på mit downloadlink kommer det her frem:
Parse error: syntax error, unexpected T_VARIABLE in /customers/0/e/3/simonhollander.dk/httpd.www/docs/Elektro/transformer.php on line 1

Hvad jeg ikke forstår er at, vi fik det meste til at virke den dag, men nu virker kun ét downloadlink? :S
Avatar billede olebole Juniormester
15. marts 2013 - 23:13 #16
Det synes jeg er en pudsig fejl med dén kode. Er du sikker på, den stammer fra den kode, du viser?
Avatar billede thadoews Nybegynder
17. marts 2013 - 10:56 #17
Det er jeg et hundred på! Er det min udbyders PHP-opsætning der er fejlen? Den står godt nok med fejlmeddelelser sat til.
Avatar billede olebole Juniormester
17. marts 2013 - 16:24 #18
Fejlmeddelelser skal være slået til, når der udvikles.

Derudover kan jeg garantere dig, at fejlen, du viser, ikke stammer fra koden i #15 - uanset, hvad du 'er hundred på'  =)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester