skin Posted July 6, 2006 at 03:06 PM Report #36590 Posted July 6, 2006 at 03:06 PM bem este é o meu primeiro post em PHP 🙂 ! bem eu estive a fazer este código. <?php //-------------------------------------------------------------------------------------------------------------- //http://joaopedropereira.com/ //-------------------------------------------------------------------------------------------------------------- //Config: $local ="localhost"; $user ="root"; //Nome de utilizador para aceder à base de dados $senha=""; //A senha da base de dados $db ="teste_users"; //Base de Dados $tempmins = 5; //minutos para inatividade de um utilizador //Código: $ip=$REMOTE_ADDR; //IP do visitante $res = mysql_connect("$local", "$user", "$senha") or die ("Erro de conexão"); //conecta com a base de dados mysql_select_db($db,$res); //seleciona a base de dados if(mysql_num_rows(mysql_query("SELECT * FROM usersonline WHERE ip='".$ip."'"))>0) { //verrifica se o IP já está na base de dados //ja que ele está é necessario fazer update ao campo time para que ele não seja eliminado rapidamente mysql_query('UPDATE usersonline SET time="'.time().'" WHERE ip="'.$ip.'"'); } else { //se ele não estiver na nossa base de dados, vai haver necessidade de o inserir mysql_query('INSERT INTO usersonline (ip,time) VALUES ("'.$ip.'","'.time().'")'); } mysql_query('DELETE FROM usersonline WHERE time<'.(time()-($tempmins*60))); //elimina os ips com mais de 5 minutos echo mysql_num_rows(mysql_query("SELECT * FROM usersonline")).' utilizadores online'; //Mostra o resultado na página ?> e eu tenho dúvidas: É possivel dar uma instrução de if e else de forma a que se for o valor 1 escrever "1 utilizador online" e se for outro numero qualquer dizer " nº utilizadores online"? se sim como 😉?! Our lives begin to end the day we become silent about things that matter - Martin Luther King
Drone Posted July 6, 2006 at 03:40 PM Report #36603 Posted July 6, 2006 at 03:40 PM $SQL = "SELECT * FROM usersonline"; $results = mysql_query($SQL); $total = mysql_num_rows($results); echo ($total > 1) ? "Neste momento estao $total users online" : "Neste momento está 1 user online"; btw.. dizes no comment 5min e no $tempmins tens 30min 🙂
skin Posted July 6, 2006 at 04:09 PM Author Report #36609 Posted July 6, 2006 at 04:09 PM já está alterado nem tinha reparado. Já está feito e já está direito 🙂 thks! Our lives begin to end the day we become silent about things that matter - Martin Luther King
Drone Posted July 6, 2006 at 04:14 PM Report #36610 Posted July 6, 2006 at 04:14 PM echo mysql_num_rows(mysql_query("SELECT * FROM usersonline")).' utilizadores online'; //Mostra o resultado na página é melhor colocares como eu disse porque assim vai dar um bico na gramática "1 utilizadores online", fica sempre aquele "mau" aspecto 🙂😛 echo (condicao) ? CASO_SEJA_TRUE : CASO_SEJA_FALSE; (isto caso nao tenhas percebido o que eu fiz, fica tambem a dica para um IF mais simples lol para coisas mais simples como esta) 🙂
karva Posted July 6, 2006 at 04:17 PM Report #36614 Posted July 6, 2006 at 04:17 PM boas, tnks pela dica, n sabia ke em php o if tb podia ser simplificado... 🙂 Proud LEIC-A@IST student!
Drone Posted July 6, 2006 at 04:21 PM Report #36615 Posted July 6, 2006 at 04:21 PM também foi à pouco tempo que encontrei esta maneira de fazer um IF, pa e é bastante util para este tipo de coisa.
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now