Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][HTML][MYSQL] liczenie klikniec
Forum PHP.pl > Forum > Przedszkole
dcodie
Witam wszystkich smile.gif
mam gotowy formularz do dodawania danych do bazy, wszystko git... wyswietlanie odbywa sie za pomoca kodu podanego nizej i teraz pytanie:

- jak 'zrobic' by kazdo klikniecie w link powodowalo wzrost o 1 wartosci clicks dla tego linku ?

myslalem, zeby napisac funkcje, ktora dodawalaby to na zasadzie i=clicks, if click then clicks++1, tylko za bardzo nie wiem jak zrobic by pobierala zawsze wlasciwy url? a moze zupelnie inne rozwiazanie ? plz help nup smile.gif


  1. <?php
  2.  
  3. mysql_connect("localhost" , "xxx" , "xxx") or die ("Nie masz dostepu do bazy");
  4. mysql_select_db("thumblogger4");
  5.  
  6. $wynik = mysql_query("SELECT * FROM testowa ORDER By date DESC, clicks DESC")
  7.  
  8.  
  9. or die('Blad zapytania');
  10.  
  11. /*
  12. wys'wietlamy wyniki, sprawdzamy,
  13. czy zapytanie zwróci?o wartos'c' wie;ksza; od 0
  14. */
  15. $i = 1;
  16.  
  17. if(mysql_num_rows($wynik)) {
  18.    /* jez.eli wynik jest pozytywny, to wys'wietlamy dane */
  19.    echo "<table cellpadding=\"2\" border=0>";
  20.    while($r = mysql_fetch_assoc($wynik) AND $i <= 5) {
  21.      echo "<td><a href=\"{$r['url']}\"><img src=\"{$r['thumburl']}\" border=0 width=140 height=140><br>{$r['date']} - {$r['id']} - {$r['clicks']}</td>";
  22. $i++;
  23.    }
  24.    echo "</table>";
  25. }
  26.  
  27. if(mysql_num_rows($wynik)) {
  28.    /* jez.eli wynik jest pozytywny, to wys'wietlamy dane */
  29.    echo "<table cellpadding=\"2\" border=0>";
  30.    while($r = mysql_fetch_assoc($wynik) AND $i <= 10) {
  31.      echo "<td><a href=\"{$r['url']}\"><img src=\"{$r['thumburl']}\" border=0 width=140 height=140><br>{$r['date']} - {$r['id']} - {$r['clicks']}</td>";
  32. $i++;
  33.    }
  34.    echo "</table>";
  35. }
  36. ?>
rinz
Jesli wszystkie linki tez prowadzą do naszego serwisu mozna dodac dodawajke kliknięć na poczatku tych plików docelowych (jesli to nie sa pliki PHP, zawsze mozna zrpobic przekierowanie z nich na wlasciwy plik juz po dodaniu kliniecia ) smile.gif Jesli nie mozna to rozwiazac za pomocą AJAXa... dry.gif  
Pride
nie wiem, czy cie dobrze rozumiem...
Można by dodać do linku:
  1. <?php
  2. <a href=&#092;"{$r['url']}\">
  3. ?>
Coś takiego:
  1. <?php
  2. <a href=&#092;"{$r['url']}&cos=klik\">
  3. ?>

Następnie gdzieś na początku:
  1. <?php
  2. if(!empty($_GET['cos']) AND $_GET['cos'] == 'klik')
  3. {
  4. //tutaj INSERT do bazy z clicks=clicks+1
  5. }
  6. ?>
dcodie
wszystkie strony beda na serwerze [a wlasciwie .html z includem]

Pride: dobrze mnie zrozumiales, dokladnie o to mi chodzilo smile.gif dziekuje

jezeli dobrze zrozumialem to kod

  1. <?php
  2. if(!empty($_GET['cos']) AND $_GET['cos'] == 'klik')
  3. {
  4. //tutaj INSERT do bazy z clicks=clicks+1
  5. }
  6. ?>


wstawiam na poczatku indexu, na ktorym wszystko sie wyswietla [kod ktory podalem w pierwszym poscie] ?

tylko jak skonstruowac inserta, ktory bedzie dodawala tego klika do odpowiedniego linku? na stronie bedzie z grubsza 200-300 linkow... sorry, jezeli pytanie glupie, ale prosze przynajmniej o nakierowanie smile.gif

wyedytowalem na cos takiego, ale wydaje sie nie dzialac ;] gdzie popelnilem blad?

  1. <?php
  2.  
  3. mysql_connect("localhost" , "maksiu" , "maksiumysql") or die ("Nie masz dostepu do bazy");
  4. mysql_select_db("thumblogger4");
  5.  
  6. $wynik = mysql_query("SELECT * FROM testowa ORDER By date DESC, clicks DESC")
  7.  
  8.  
  9. or die('B?a;d zapytania');
  10.  
  11. /*
  12. wys'wietlamy wyniki, sprawdzamy,
  13. czy zapytanie zwróci?o wartos'c' wie;ksza; od 0
  14. */
  15. $i = 1;
  16.  
  17. if(mysql_num_rows($wynik)) {
  18.    /* jez.eli wynik jest pozytywny, to wys'wietlamy dane */
  19.    echo "<table cellpadding=\"2\" border=0>";
  20.    while($r = mysql_fetch_assoc($wynik) AND $i <= 5) {
  21.      echo "<td><a href=\"{$r['url']}\"><img src=\"{$r['thumburl']}\" border=0 width=140 height=140><br>{$r['date']} - {$r['id']} - {$r['clicks']}</td>";
  22.      
  23. if(!empty($_GET['cos']) AND $_GET['cos'] == 'klik')
  24. {
  25. $hits=$r['clicks'];
  26. $hits++;    
  27. mysql_query("UPDATE supporters SET clicks = '$hits' WHERE id = '$id'");
  28.  
  29. }
  30.  
  31. $i++;
  32.    }
  33.    echo "</table>";
  34. }
  35. ?>
-dcodie-
upne bo dalej nie wykombinowalem - moze dlatego, ze w robocie bylem... ale ani w nocy, ani nad ranem nic weszlo ;D poprawilem rekord z ostatniego postu, ale nic nie dalo [zarowno na glownej jak i na stronie linku] - help
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.