Why doesn't my python chat client show the data that the server is sending to it?
<p>Here is the server:</p>

<pre><code>import socket
from threading import Thread

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(('127.0.0.1', 4444))

def get_data(s, conn): 
    data = conn.recv(1024) 
    print conn, data, "\n" 
    return data; 

def send_data(s, conn, data):
    conn.sendall(data) 
    print "Data sent to clients \n" 

def listen():

    s.listen(5)
    conn, addr = s.accept()
    print addr, " connected \n"
    while True:
        data = get_data(s, conn)
        send_data(s, conn, data)


for i in range(5):
    Thread(target = listen).start()
</code></pre>

<p>and the client:</p>

<pre><code>import socket
import time

HOST = '127.0.0.1'
PORT = 4444
NICKNAME = 'NICKNAME_HERE' + ' &gt;'


def connect():
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    s.connect((HOST, PORT))

    while True:
        message = raw_input("&gt; ")
        nickandmessage = NICKNAME + message
        s.send(nickandmessage)
        data = s.recv(1024)
        if NICKNAME not in data:
            print data

connect()
</code></pre>

<p>Everything works, multiple clients can connect to the server, but if I write a message in a client, the server gets it but it doesn't seem to make it to the other clients... I think I missed something VERY simple and I think that I'm just too stupid to figure it out.</p>