Page 1 of 1

I need Help With This Code

Posted: Sun Jun 26, 2005 2:11 am
by Jizphp_oh
MySQL Query Error: DELETE FROM guests WHERE lastaction<1119791522 OR ip='69.150.130.176'
Returned Error: Unknown column 'lastaction' in 'where clause'MySQL Query Error: SELECT guests.* FROM guests WHERE guests.lastaction > 1119791522
Returned Error: Unknown column 'guests.lastaction' in 'where clause'MySQL Query Error: UPDATE stats SET value='1', date='1119791582' WHERE name='members_max_ever'
Returned Error: Unknown column 'name' in 'where clause'MySQL Query Error: UPDATE stats SET value='1', date='1119791582' WHERE name='users_max_ever'
Returned Error: Unknown column 'name' in 'where clause'

I get this on this code

Code: Select all

//=============================
		// Now get Guests, Members & Staff online:
		//=============================
		$User->online_guests = guests_online();
		$User->online_members = members_online();
		$User->online_staff = grab_online_staff();
		// Max online ever only returns if there are guests/members online, check if it returned:

			$query = $Db->query("SELECT * FROM stats");
			while($a = $Db->fetch_array( $query )){
				$Vars->stats["{$a['name']}"] = $a['value'];
				$Vars->stats["{$a['name']}_date"] = $a['date'];
			}
			$Vars->stats['guests_online'] = $Db->num_rows($User->online_guests);
			$Vars->stats['members_online'] = $Db->num_rows($User->online_members);
			$Vars->stats['users_online'] = $Vars->stats['members_online']+$Vars->stats['guests_online'];

			if($Vars->stats['guests_online'] > $Vars->stats['guests_max_ever']){
				$Db->query("UPDATE stats SET value='{$Vars->stats['guests_online']}', date='".time()."' WHERE name='guests_max_ever'");
				$Vars->stats['guests_max_ever'] = $Vars->stats['guests_online'];
				$Vars->stats['guests_max_ever_date'] = time();
			}
			if($Vars->stats['members_online'] > $Vars->stats['members_max_ever']){
				$Db->query("UPDATE stats SET value='{$Vars->stats['members_online']}', date='".time()."' WHERE name='members_max_ever'");
				$Vars->stats['members_max_ever'] = $Vars->stats['members_online'];
				$Vars->stats['members_max_ever_date'] = time();
			}
			if($Vars->stats['users_online'] > $Vars->stats['users_max_ever']){
				$Db->query("UPDATE stats SET value='{$Vars->stats['users_online']}', date='".time()."' WHERE name='users_max_ever'");
				$Vars->stats['users_max_ever'] = $Vars->stats['users_online'];
				$Vars->stats['users_max_ever_date'] = time();
			}
			#echo $Vars->stats['members_max_ever']."(members), ".$Vars->stats['guests_max_ever']."(guests)";

   }

Posted: Sun Jun 26, 2005 7:09 am
by Chris Corbyn
Post your database structure please?

Posted: Sun Jun 26, 2005 1:15 pm
by Jizphp_oh

Code: Select all

DROP TABLE IF EXISTS content;
CREATE TABLE content (
  id int(10) NOT NULL auto_increment,
  name mediumtext NOT NULL,
  author int(8) NOT NULL default '0',
  catid int(8) NOT NULL default '1',
  date int(11) NOT NULL default '0',
  content mediumtext NOT NULL,
  `restrict` int(2) NOT NULL default '0',
  description mediumtext NOT NULL,
  hits_total int(18) NOT NULL default '0',
  hits_today int(18) NOT NULL default '0',
  hitreset int(11) NOT NULL default '0',
  PRIMARY KEY  (id),
  KEY id (id)
) TYPE=MyISAM;


INSERT INTO content (id, name, author, catid, date, content, `restrict`, description, hits_total, hits_today, hitreset) VALUES (NULL,'.show',1,1,1064868173,'0',0,'',0,0,1064868173);


DROP TABLE IF EXISTS content_cats;
CREATE TABLE content_cats (
  id int(10) NOT NULL auto_increment,
  name varchar(250) NOT NULL default '',
  `restrict` int(2) NOT NULL default '0',
  catid int(8) NOT NULL default '0',
  PRIMARY KEY  (id),
  KEY id (id),
  KEY catid (catid)
) TYPE=MyISAM;



INSERT INTO content_cats (id, name, `restrict`, catid) VALUES (1,'MySite.com',0,0);



DROP TABLE IF EXISTS guests;
CREATE TABLE guests (
  ip varchar(100) NOT NULL default '',
  date int(11) NOT NULL default '0',
  location varchar(250) NOT NULL default ''
) TYPE=MyISAM;



DROP TABLE IF EXISTS members;
CREATE TABLE members (
  id int(11) NOT NULL auto_increment,
  username varchar(100) NOT NULL default '',
  password varchar(250) NOT NULL default '',
  email varchar(250) NOT NULL default '',
  email_priv enum('1','0') NOT NULL default '0',
  user_level int(2) NOT NULL default '1',
  lastaction int(11) NOT NULL default '0',
  lastpage varchar(250) NOT NULL default '',
  userinfo mediumtext NOT NULL,
  posts int(10) NOT NULL default '0',
  bday_month int(2) NOT NULL default '1',
  bday_day int(2) NOT NULL default '1',
  bday_year int(4) NOT NULL default '1988',
  bday_priv enum('1','0') NOT NULL default '0',
  gender enum('m','f') NOT NULL default 'm',
  gender_priv enum('1','0') NOT NULL default '0',
  signup_time int(11) NOT NULL default '0',
  is_banned enum('1','0') NOT NULL default '0',
  user_ip varchar(100) NOT NULL default '',
  PRIMARY KEY  (id),
  KEY id (id),
  KEY username (username),
  KEY signup_time (signup_time),
  KEY password (password)
) TYPE=MyISAM;



INSERT INTO members (id, username, password, email, email_priv, user_level, lastaction, lastpage, userinfo, posts, bday_month, bday_day, bday_year, bday_priv, gender, gender_priv, signup_time, is_banned, user_ip) VALUES (1,'Admin',MD5('password'),'admin@mysite.com','1',3,1064273118,'/signup.php','',0,8,17,1988,'1','m','1',1064273118,'0','');


DROP TABLE IF EXISTS messages;
CREATE TABLE messages (
  id int(18) NOT NULL auto_increment,
  user_to int(10) NOT NULL default '0',
  user_from int(10) NOT NULL default '0',
  date_sent int(11) NOT NULL default '0',
  is_read enum('1','0') NOT NULL default '0',
  saved enum('1','0') NOT NULL default '0',
  msg_title varchar(250) NOT NULL default '',
  content mediumtext NOT NULL,
  UNIQUE KEY id (id)
) TYPE=MyISAM;



INSERT INTO messages (id, user_to, user_from, date_sent, is_read, saved, msg_title, content) VALUES (1,1,1,1064564119,'1','0','Message Test','Messaging works great!');


DROP TABLE IF EXISTS stats;
CREATE TABLE stats (
  vkey varchar(200) NOT NULL default '',
  vval mediumtext NOT NULL,
  date int(11) NOT NULL default '0'
) TYPE=MyISAM;

Posted: Sun Jun 26, 2005 2:47 pm
by Chris Corbyn
OK first off, the code you posted first time round contains no DELETE clause so we're missing some code.

But even without that I can see your database isn't set up correctly for the script. The error tells what the problem is and the SQL you posted clarifies it.

The table `guests` should have a column named `lastaction`.
The table `stats` should have a column named `name`... etc etc..

Did you write this yourself?

Posted: Sun Jun 26, 2005 4:12 pm
by Jizphp_oh
NO it was made for me by a friend, iam trying to get it working again for my website, but he wrote the mysql wrong :(

Iam try ing to learn PHP and MYsql