* FAQ    * Search  * Register * Login 
Active topics
Unanswered topics

All times are UTC-06:00



Post new topic  Reply to topic  [ 4 posts ] 
Author Message
 Post subject: terminal chat program
PostPosted: Fri Sep 16, 2011 8:20 am 
Offline
DBB Artist
DBB Artist
User avatar

Joined: Mon Aug 01, 2005 8:47 am
Posts: 7124
Location: Ơ̸̦͇̲̬̭̱̰͎̞͈̣͎͚̳ͬ͋̃̀̇͊͂͋͐ͦ̽ͣ̂ͥ͊̅̀̚͠ B̶͖̯͉̜̰̲̓̔͋̈́ͅ È̯ Y̪̤̼͉̠̙͝
I will do the challenges after this. I really had to get a good introduction to MySQL going first.

Check it out. I made a terminal chat program. It's kinda silly, because its a terminal based chat program, that only updates when you make a post. Kinda weird. But it works. Saves to my msql table and everything.

What do you all think?
Code:
import MySQLdb


class chatsys:
   def __init__(self):
      self.newcomment=""
      chat = MySQLdb.connect( host = "localhost" , user="isaac" , passwd="password" , db="chatbox" )
      self.cur = chat.cursor()
   def login(self):
      self.username=raw_input("User name?")
   def chat(self):
      self.comment=raw_input("Comment: (Type 'exit' to exit) ")
      self.newcomment="insert into chatlog values(NULL,'%s',NULL,'%s')" % (self.username,self.comment)
      self.cur.execute(self.newcomment)
   def showlog(self):
      self.cur.execute("select * from chatlog ORDER by -id limit 15")      
      lastfive=[a for a in self.cur.fetchall()]
      lastfive.reverse()
      for a in lastfive:
         print str(a[0])+":  "+str(a[1])+" Said: "+str(a[3])
      
c=chatsys()
c.login()

while True:
   
   c.showlog()
   c.chat()
   if c.comment == "exit":
      print "exited"
      break



c.cur.close()


edit:
Oops. Forgot to show my table description:
Code:

mysql> describe chatlog;
+----------+--------------+------+-----+-------------------+-----------------------------+
| Field    | Type         | Null | Key | Default           | Extra                       |
+----------+--------------+------+-----+-------------------+-----------------------------+
| id       | mediumint(9) | NO   | PRI | NULL              | auto_increment              |
| USERNAME | char(30)     | YES  |     | NULL              |                             |
| TIMELOG  | timestamp    | NO   |     | CURRENT_TIMESTAMP | on update CURRENT_TIMESTAMP |
| comment  | varchar(300) | YES  |     | NULL              |                             |
+----------+--------------+------+-----+-------------------+-----------------------------+

_________________
s☼-£♦и̫͍ͥ̍ͪ͌̓͗͡о̡̹̱͊̅ͮ̓̕͢б̧̝̻̪̤̳̜͐̓̉ͤ͢͜ ͙̬͙̆̑ͮ̐ͭ̾̂́͘i̎̌̾̓̽̀̈̓̀҉͉̙̦͎̘̝͕f̻͕͔̘ͣͣ̓͊̿͢͜ ͍͔͈͕̮̫ͣ̆ͮ̊͋/♂6Æ!♪╩"▲L└уͭ̂͐̇҉̴̣̼̞̠̯͓̺̞ф̜̊͌̈́̋̏̐́ц̨͔̮̿̇ ̨̛͖̙͖̖̮̗̱ͩ̆͞ͅа̥͇̞̖͚̟̅͐ͤ͞͠͠э̜̘̩̳̬͔̾ͯ̀ͫ̒̐̿ͅͅг̭̖̀ͦ̒̑ͥ̌ͮͫ͞ё͔̟̃ͬ̾̓͟ё̦̞̙̫͔̩͑̀͂ͯ̄̔̃̑̀͠ͅͅ


Top
   
 Post subject: Re: terminal chat program
PostPosted: Fri Sep 16, 2011 10:01 am 
Offline
DBB DemiGod
DBB DemiGod
User avatar

Joined: Sat Oct 24, 1998 2:01 am
Posts: 6415
Location: Calgary Alberta Canada
terminal chat programs are pretty old software.


Top
   
 Post subject: Re: terminal chat program
PostPosted: Fri Sep 16, 2011 12:43 pm 
Offline
DBB Master
DBB Master
User avatar

Joined: Sun Sep 05, 1999 2:01 am
Posts: 6377
Location: ☃☃☃
Does this work when the user attempts to chat:
Code:
foo'bar

?
Hint: prepared statements.


Top
   
 Post subject: Re: terminal chat program
PostPosted: Fri Sep 16, 2011 2:30 pm 
Offline
DBB Artist
DBB Artist
User avatar

Joined: Mon Aug 01, 2005 8:47 am
Posts: 7124
Location: Ơ̸̦͇̲̬̭̱̰͎̞͈̣͎͚̳ͬ͋̃̀̇͊͂͋͐ͦ̽ͣ̂ͥ͊̅̀̚͠ B̶͖̯͉̜̰̲̓̔͋̈́ͅ È̯ Y̪̤̼͉̠̙͝
Jeff250 wrote:
Does this work when the user attempts to chat:
Code:
foo'bar

?
Hint: prepared statements.


Omg. hahah wow. Nope! It does not. Thanks.

_________________
s☼-£♦и̫͍ͥ̍ͪ͌̓͗͡о̡̹̱͊̅ͮ̓̕͢б̧̝̻̪̤̳̜͐̓̉ͤ͢͜ ͙̬͙̆̑ͮ̐ͭ̾̂́͘i̎̌̾̓̽̀̈̓̀҉͉̙̦͎̘̝͕f̻͕͔̘ͣͣ̓͊̿͢͜ ͍͔͈͕̮̫ͣ̆ͮ̊͋/♂6Æ!♪╩"▲L└уͭ̂͐̇҉̴̣̼̞̠̯͓̺̞ф̜̊͌̈́̋̏̐́ц̨͔̮̿̇ ̨̛͖̙͖̖̮̗̱ͩ̆͞ͅа̥͇̞̖͚̟̅͐ͤ͞͠͠э̜̘̩̳̬͔̾ͯ̀ͫ̒̐̿ͅͅг̭̖̀ͦ̒̑ͥ̌ͮͫ͞ё͔̟̃ͬ̾̓͟ё̦̞̙̫͔̩͑̀͂ͯ̄̔̃̑̀͠ͅͅ


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 4 posts ] 

All times are UTC-06:00


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  



Descent'rs have piloted these pages
 
The layout and contents contained within this site are © DescentBB.net 1997-2006.
Descent, Descent II are © Parallax Software Corporation.
Descent III is Outrage Entertainment.
Descent is a Trademark of Interplay Productions.

Miner Wars™ is trademark of Keen Software House s. r. o.
.


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group