Avatar billede holm76 Nybegynder
20. maj 2007 - 16:43 Der er 9 kommentarer

Føj til foretrukne med tæller

Jeg kunne rigtig godt bruge en udvidelse af scriptet som føjer en side til foretrukne, som samtidig kan tælle hvor mange gange der bliver trykket på denne, nogen der kan hjælpe?
Avatar billede w13 Novice
20. maj 2007 - 16:53 #1
$count = file("hits.txt");
$count_gl = $count[0];
$ny_count = ++$count_gl;
$data = fopen("hits.txt","w");
$skriv = fwrite($data,$ny_count);
fclose($data);
echo "$ny_count personer har føjet din side til foretrukne";
-----------------------
Sådan der? Det skal så bare køres, hver gang, der føjes til foretrukne.
Avatar billede holm76 Nybegynder
20. maj 2007 - 17:16 #2
Man kan ikke lave det med database istedet for?
Avatar billede w13 Novice
20. maj 2007 - 17:23 #3
Joeh, det kan du vel sagtens. Jeg synes bare, det er lidt meget at oprette en hel tabel for det ene tal. Og jeg har aldrig før programmeret PHP - dette er min første kode. Så at lave en kode til at gemme og hente fra en db, ville nok tage mig lidt længere tid. :)
Denne her fylder i hvert fald minimalt, sådan som jeg ser det.
Avatar billede holm76 Nybegynder
20. maj 2007 - 17:31 #4
ok ja det har du ret i, jeg skal oprette hits.txt og hvordan kan jeg se hitsene?
Avatar billede w13 Novice
20. maj 2007 - 17:32 #5
echo "$ny_count personer har føjet din side til foretrukne";
skulle gerne gøre tricket. =) Dvs. at hitsene, eller hvad du vil kalde dem, ligger i variablen $ny_count. Så lige nu skrives de til alle, der ser siden. Men ellers kan du jo bare åbne hits.txt, hvis kun du skal se tallet.
Avatar billede holm76 Nybegynder
20. maj 2007 - 17:44 #6
ok takker, men den tæller hver gang jeg trykker opdater, altå ikke ved at have tilføjet til foretrukne.
Avatar billede w13 Novice
20. maj 2007 - 17:55 #7
Du føjer til foretrukne med JavaScript? Skriv lige koden til det her.
Avatar billede holm76 Nybegynder
21. maj 2007 - 19:25 #8
Feks den her
<a href=\"java script:window.external.AddFavorite(\'http://www.massageihaderslev.dk\', \'Massage i Haderslev\')\">Føj til foretrukne</a>
Avatar billede w13 Novice
21. maj 2007 - 21:12 #9
Ok. Gem følgende i en ny fil i stedet:
----------------------------------
$count = file("hits.txt");
$count_gl = $count[0];
$ny_count = ++$count_gl;
$data = fopen("hits.txt","w");
$skriv = fwrite($data,$ny_count);
fclose($data);
-------------------------
Kald den "countbookmarks.php".

Og indsæt følgende JavaScript på den side, hvor du har foretrukne-linket:
-------------------------
<script language="JavaScript" type="text/JavaScript">
function createXHR() {
    var req = false;
        try {
            req = new ActiveXObject('Msxml2.XMLHTTP');
        }
        catch (err2) {
            try {
                req = new ActiveXObject('Microsoft.XMLHTTP');
            }
            catch (err3) {
        try {
            req = new XMLHttpRequest();
        }
        catch (err1) {
            req = false;
        }
            }
        }
    return req;
}

function Ajax(a) {
    var req = createXHR();

    req.open("GET", a, true);
    req.send(null);
}
</script>
------------------------
Og ret så:
<a href=\"java script:window.external.AddFavorite(\'http://www.massageihaderslev.dk\', \'Massage i Haderslev\')\">Føj til foretrukne</a>
Til:
<a href=\"java script:window.external.AddFavorite(\'http://www.massageihaderslev.dk\', \'Massage i Haderslev\')\;java script:Ajax('countbookmarks.php');">Føj til foretrukne</a>
----------------------
Så tror jeg det virker. :) Så bruger du "Ajax"-teknikken, som går ud på, at du kører en php-/asp-kode uden at brugeren kan se det.
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
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

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