html css photoshop php forumas
PHP ir SQL => Klausimai ir pagalba => Tema atidaryta: marvel on 2011-01-28 16:43:44
-
hi dar karta
savo portfolio radau veikianti who online scripta jis skaiciuoja kiek butent tuo metu zmoniu yra, o as dar noreciau pasidaryt kad sumuotu kiek isviso apsilankyta
Kodas :
<?php
include_once ("usersOnline.class.php");
$visitors_online = new usersOnline();
if (count($visitors_online->error) == 0) {
if ($visitors_online->count_users() == 1) {
echo "There is " . $visitors_online->count_users() . " visitor online";
}
else {
echo "There are " . $visitors_online->count_users() . " visitors online";
}
}
else {
echo "<b>Users online class errors:</b><br /><ul>\r\n";
for ($i = 0; $i < count($visitors_online->error); $i ++ ) {
echo "<li>" . $visitors_online->error[$i] . "</li>\r\n";
}
echo "</ul>\r\n";
}
?>
Cia speju butu galima kazkurioj vietoj pakeist kazka ir uztektu :)
-
Na cia parodytas kodas tik atvaizduoja kiek yra dabar. Tai taip kad is butent sito nemanau kad ispesi ka :D
<?php
include_once ("usersOnline.class.php");
$visitors_online = new usersOnline();
//Tikrina ar yra klaidu
if (count($visitors_online->error) == 0) {
if ($visitors_online->count_users() == 1) {
// Jeigu nera klaidu ir jeigu online tik vienas useris isveda i ekrana atsakyma
echo "There is " . $visitors_online->count_users() . " visitor online";
}
else {
// Jeigu nera klaidu ir jeigu online daugiau nei vienas useris online isveda i ekrana atsakyma
echo "There are " . $visitors_online->count_users() . " visitors online";
}
}
else {
//Isveda klaidas
echo "<b>Users online class errors:</b><br /><ul>\r\n";
for ($i = 0; $i < count($visitors_online->error); $i ++ ) {
echo "<li>" . $visitors_online->error[$i] . "</li>\r\n";
}
echo "</ul>\r\n";
}
?>
Nebent parodytum dar klasiu faila tai is ten kazka galima butu pasakyti
-
Tai kad daugiau nieko nera yra tik prisijungimas prie DB :)
O negaletum man toki scripta padaryt ar papeistint jei pats turi zinok tikrai pagelbetum per google toki veikianti vos ir tai radau
class usersOnline {
var $timeout = 600;
var $count = 0;
var $error;
var $i = 0;
function usersOnline () {
$this->timestamp = time();
$this->ip = $this->ipCheck();
$this->new_user();
$this->delete_user();
$this->count_users();
}
function ipCheck() {
/*
This function will try to find out if user is coming behind proxy server. Why is this important?
If you have high traffic web site, it might happen that you receive lot of traffic
from the same proxy server (like AOL). In that case, the script would count them all as 1 user.
This function tryes to get real IP address.
Note that getenv() function doesn't work when PHP is running as ISAPI module
*/
if (getenv('HTTP_CLIENT_IP')) {
$ip = getenv('HTTP_CLIENT_IP');
}
elseif (getenv('HTTP_X_FORWARDED_FOR')) {
$ip = getenv('HTTP_X_FORWARDED_FOR');
}
elseif (getenv('HTTP_X_FORWARDED')) {
$ip = getenv('HTTP_X_FORWARDED');
}
elseif (getenv('HTTP_FORWARDED_FOR')) {
$ip = getenv('HTTP_FORWARDED_FOR');
}
elseif (getenv('HTTP_FORWARDED')) {
$ip = getenv('HTTP_FORWARDED');
}
else {
$ip = $_SERVER['REMOTE_ADDR'];
}
return $ip;
}
function new_user() {
$insert = mysql_query ("INSERT INTO useronline(timestamp, ip) VALUES ('$this->timestamp', '$this->ip')");
if (!$insert) {
$this->error[$this->i] = "Unable to record new visitor\r\n";
$this->i ++;
}
}
function delete_user() {
$delete = mysql_query ("DELETE FROM useronline WHERE timestamp < ($this->timestamp - $this->timeout)");
if (!$delete) {
$this->error[$this->i] = "Unable to delete visitors";
$this->i ++;
}
}
function count_users() {
if (count($this->error) == 0) {
$count = mysql_num_rows ( mysql_query("SELECT DISTINCT ip FROM useronline"));
return $count;
}
}
}
?>
-
Ziurek
Sita funkcija iraso ip i DB.
<?php
function new_user() {
$insert = mysql_query ("INSERT INTO useronline(timestamp, ip) VALUES ('$this->timestamp', '$this->ip')");
if (!$insert) {
$this->error[$this->i] = "Unable to record new visitor\r\n";
$this->i ++;
}
}
?>
Tai tu susikurk dar viena lentele duomenu bazeje ir prirasyk dar viena uzklausa:
<?php
function new_user() {
$insert = mysql_query ("INSERT INTO useronline(timestamp, ip) VALUES ('$this->timestamp', '$this->ip')");
mysql_query ("INSERT INTO userall(timestamp, ip) VALUES ('$this->timestamp', '$this->ip')"); //pvz tokia
if (!$insert) {
$this->error[$this->i] = "Unable to record new visitor\r\n";
$this->i ++;
}
}
?>
Po to kazkur pasirasyt skripta kad suskaiciuotu tos naujos lenteles irasus .Cia ir rodys kiek skirtingu apsilanke.
O tada atvaizdavima daraisi kazkoki tai.. trauki is tos lenteles reiksmes ir rusiuoji pagal data .. Pvz pasidarai kad rodytu ta diena tiek, kita diena tiek ir t.t.
Na dabar pats ilindes i darbus todel nelabai laiko turiu parasyt as tau :)
-
O kaip tas scriptas turi atrodyt kad viska suskaiciuotu ? Tas reiksmiu traukimas ?
Nu dekui ir uz tiek jau jei uzsiemes esi netrukdysiu :) Patrukdysiu kitus :)
-
as tai sioje vietoje nenaudociau duombazes, o tiesiog paprasta faila, kuriame butu skaiciukas, kuris nurodytu kiek atvertimu padaryta. jei tau tinka tiesiog atvertimu skaicius. jei tau reikia ir ip, tai gal tada geriau su sql. +pagalvok apie tai, kad kas kiek laiko ta pati ip skaiciuosi kaip nauja atejima: kas valanda, dvi, o gal para? zodziu pagalvok kas tavo lankytojai ir kokie ju ip :)
su failais turetu praversti sios pamokos:
http://www.tizag.com/phpT/fileopen.php (http://www.tizag.com/phpT/fileopen.php)
http://www.tizag.com/phpT/fileclose.php (http://www.tizag.com/phpT/fileclose.php)
http://www.tizag.com/phpT/filewrite.php (http://www.tizag.com/phpT/filewrite.php)
http://www.tizag.com/phpT/fileread.php (http://www.tizag.com/phpT/fileread.php)
-
Nelabai man sitie tutorialai ka ir padeda
-
Nelabai man sitie tutorialai ka ir padeda
o ka darei ir kas neisejo?
-
Nelabai man sitie tutorialai ka ir padeda
o ka darei ir kas neisejo?
Na as ant php neturiu ant tiek daug praktikos, kad galeciau pritaikyt ant sistemos kaip tuose linkuose
-
tai tie linkai tam ir skirti. suprask kas ten rasoma ir nebus imanoma nesugebeti prisitaikyti.
-
tai tie linkai tam ir skirti. suprask kas ten rasoma ir nebus imanoma nesugebeti prisitaikyti.
Lengva tau sakyt kaip viska moki. Zodziu dar google pasiieskosiu :)
-
Marvel, Tave nukreipia teisinga linkme, o pats jau ar moki pasinaudoti ar ne tavo reikalas, tačiau visi mokomes, tai kodėl turi visiškai viską parašyti? Būtų kur nors klaida, ar bent būtum bandęs tai padėtų dar daugiau, o be mėginimo tai čia bus tik sausas kodas :)
-
Na teisinga tai teisinga bet i ta nelabai yra noro taip ziauriai gilintis, dar as tiek tesuprantu ta koda tai.. kai dar dabar su paskaliu pradejo kankint kolegijoj man jau bloga :D Nu zdz jei jau taip gaila :D pats pasieskosiu :)
Bet va vieno dalyko nzn kaip surast google :D tai butu pwz kai psl persikrauna man vis grazina home.php.. nu pradini psl zdz nors buciau belekuriam o turetu uzkraut ta pati refreshinus
-
Siaip tai nuo Luko gausi velniu, kad toj pacioj temoj rasai :) O jei taip reikia tai tikriausiai imanoma su jQuery, nes kiek zinau eina nuskaityt narsykles mygtuku veiksmus, bei klaviaturu kodus.
-
Siaip tai nuo Luko gausi velniu, kad toj pacioj temoj rasai :) O jei taip reikia tai tikriausiai imanoma su jQuery, nes kiek zinau eina nuskaityt narsykles mygtuku veiksmus, bei klaviaturu kodus.
Aha googlei pasikinisau maciau kad tokiu dalykus galima pasidaryt :)
Nu ir kas cia tokio kad toj pacioj temoj gi ne koks stambus dalykas.