begin process at 2012 05 24 23:53:54
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Python

 > 

Divers

 > 

Débutant(e)

 > 

fenêtre avec client /serveur avec socket.


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

fenêtre avec client /serveur avec socket.

dimanche 24 octobre 2010 à 10:18:14 | fenêtre avec client /serveur avec socket.

francoisjack

Bonjour a tous j'ai un problème avec mon pt programme
je veux faire une connexion entre deux fenêtres client et serveur avec une connexion via socket mon serveur marche mais je bug côté client.
Est ce que qq pourrai éclairer ma lanterne. merci

#côté client
# -*- coding: cp1252 -*-
import socket, sys, select, msvcrt
import Pmw
from Tkinter import *

class fenetreClient:
def __init__(self):

self.fenetre=Tk()
self.fenetre.title("Client")

self.fenetreTitle = Label(self.fenetre, text="Côté Client", fg="black", font='georgia 12')
self.fenetreTitle.pack()

self.fenetreTextport = Pmw.EntryField()#a la place du port ds clientsocket
self.fenetreTextport.pack(expand=YES, fill=BOTH, padx=50, pady=5)

self.fenetreText = Pmw.EntryField()
self.fenetreText.pack(expand=YES, fill=BOTH, padx=50, pady=5)

self.boutton1 = Button(self.fenetre, text="Démarrer client", command = self.ConnectionClient)
self.boutton1.pack(side=LEFT,padx=20, pady=20)

self.boutton2 = Button(self.fenetre, text="Déconnection", command = self.Deconnection)
self.boutton2.pack(side=RIGHT,padx=20, pady=2)

self.boutton3 = Button(self.fenetre, text="Envoyer", command = self.Envoyer())
self.boutton3.pack(side=RIGHT,padx=20, pady=20)

self.fenetre.mainloop()

def Envoyer(self):
self.fenetreText = raw_input(" ")


def Deconnection(self):
self.connection.close()

def ConnectionClient(self):
#Création d'une socket
connection = socket.socket(socket.AF_INET,socket.SOCK_STREAM)

#.get pour récupérer le port il faut caster le entryfield en int c'est un string

# remplir clientaddresse avec adresse et n°port du server
connection.connect(("localhost",self.fenetreTextport))
#attend l'arrive d'un message de fenetreTextArea
connection.send (self.fenetreText)

#ouverture d'une connection vers le serveur
line = connection.recv(1024)
#à la fin des échanges, fermer
connection.close()

if __name__ == '__main__':

client = fenetreClient()

#Côté server

# -*- coding: cp1252 -*-
import Server, sys, msvcrt
import socket
import Pmw
from Tkinter import *

class fenetreServer:
def __init__(self):
self.fenetre=Tk()
self.fenetre.title("Serveur")

self.fenetreTitle = Label(self.fenetre, text="Côté Serveur", fg="black", font='georgia 12')
self.fenetreTitle.pack()

self.fenetreText = Pmw.ScrolledText(self.fenetre,labelpos=N,label_text ="Réception des messages",label_font ='Verdana 15 bold',
label_fg='black', label_pady=1, text_font='Verdana 10 normal', text_bg ='white', text_padx=5, text_pady=5,
borderframe=15, borderframe_borderwidth=20)
self.fenetreText.pack(expand=YES, fill=BOTH, padx=50, pady=5)

self.fenetreText.tag_configure('msgServer', foreground ='white', font ='System 10 bold')
self.fenetreText.tag_configure('msgClient', foreground ='white', font ='Verdana 10 bold')

boutton1 = Button(self.fenetre, text="Démarrer serveur", command = self.connectionServer)
boutton1.pack(side=LEFT,padx=20, pady=20)

boutton2 = Button(self.fenetre, text="Quitter", command = self.fenetre.destroy)
boutton2.pack(side=RIGHT,padx=20, pady=2)

self.fenetre.mainloop()

def connectionServer(self):

#création d'une socket
connection = socket.socket(socket.AF_INET,socket.SOCK_STREAM)

#Associer la socket à un port
serveradresse = (('localhost',5678))

#associe une socket a une adresse locale
connection.bind(serveradresse)

TailleMax = 5 #5 Attentes max sur la file

#serveur de taille max de la liste d'attente
connection.listen(TailleMax)

#créer une socket server associée au numero de port "port"
nouveausock, serveradresse = connection.accept()

#Accepte la connection d'un client
print "connection TCP depuis %s sur port %d"%(serveradresse)
line = nouveausock.recv(1024)
#En attente des demandes
while line:
line = nouveausock.recv(1024)
self.fenetreText.insert(END,line)
self.fenetreText.update()
#si la connection n'a pas cette configuration
#if not line: break
#nouveausock.send(line)

#fermeture de connection
nouveausock.close()
# now on accepte de la prochaine connection


if __name__ == '__main__':

server= fenetreServer()








Cette discussion est classée dans : text, connection, fenetre, self, socket


Répondre à ce message

Sujets en rapport avec ce message

Socket : charger ip depuis fichier [ par Shinji ] Bonjour @ ttes et @ ts, voici mon pb:  j'essaye de faire une petite app client/serveur et j'aimerais pouvoir enregister l'ip/port du serveur dans un Débutant en python... problème avec les fonctions [ par pedro ] Bonjour,Je suis sur python depuis quelques heures... en plus les languages orientés objets sont un peu nouveau pour moi... J'essaie désesperement de f msn client/serveur python [ par tsic ] Bonjour, je suis bloqué ilya preque 2 semaines dans le code suivant. je veut que le client et le serveur envoyent leurs message d'une maniere comme ms Porbleme affichage d'image avec pyqt [ par TYKO86 ] bonjour à tous, je suis débutant avec pyQt et je voudrais créer une classe qui me permet d'afficher des images mais mon soucis est je n'y arrive pas a chat basique en python [ par rezuz ] bonjour, je suis en train d'essayer de programmer un chat en python, principalement dans le but d'apprendre l'utilisation des sockets et de la commun Affichage des données dans un Treeview [ par dahrprog ] j'ai enfin pu connecté l'interface Tkinter avec ma base PostgreSQL , j'ai mis ce code : [code=py]#! /usr/bin/python #-*- coding:Utf-8-*- from Tkint Tkinter Treeview [ par dahrprog ] Bonjour tout le monde , voila mon probleme actuel :) : j'ai une treeview qui contient 4 champs : Id , col1 , col2 , col3 , et j'ai une base de données reseau local, serveur/client [ par xilure ] Bonjour,j'ai fait un petit scripte, que me permet soit d'etre un serveur ou un clien, et d'envoyer des message (chat en reseau) Mais voila, quand je s TWISTED : Transfert de fichier [ par chmod666 ] Bonjour,je viens enfin de trouver ce qu'il me faut aprés bcps bcps de recherche il faut le dire ... Situation:J'ai un client qui envoie un fichierJ' raw socket [ par ebossss ] Salut,voila je cherche un tutorial (anglais ou francais) qui explique comment se servir des raw socket en python, sans passer par une bibliotheque ext


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,406 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales