begin process at 2008 07 04 23:24:26
1 204 973 membres
490 nouveaux aujourd'hui
14 118 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

CYBERCOMPTEUR


Information sur la source

Catégorie :Réseau & Internet Classé sous : Compteur, Gestion, Cybercafe, Iinifile, Sockets Niveau : Initié Date de création : 10/05/2008 Date de mise à jour : 11/05/2008 10:44:57 Vu / téléchargé: 3 962 / 557

Note :
7 / 10 - par 2 personnes
7,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (15)
Ajouter un commentaire et/ou une note

Description

Bonjour

Le CyberCompteur, est un logiciel de gestion de cyber café.

J’ai subdivisé mon projet en deux parties ; la première est une partie Serveur (CyberCompteurServeur) et la deuxième est une partie Cliente (CyberCompteurClient).

Je commence par les qualités de mon CyberCompteur ;

Dans la partie serveur, vous aller trouver un menu qui contient les items suivants ;
Fichier [Modifier tarif ] + [Paramètres]+ [Quitter]
Gestion [Abonnés]+[Caisse] ;
J’ai précisé le nombre maximum de postes par 15 postes, tous sont crée dynamiquement.
Un choix est offert pour changer l’unité de mesure, le tarif global (de tous les poste), et le tarif spécifique (de chaque poste), ainsi qu’une prise en main pour gérer la recette journalière et globale à l’aide d’un gestionnaire de caisse protégé par mot de passe -tout est dans la page Paramètres-.
La gestion des abonnés ; le CyberCompteur gère aussi les abonnés, avec un suivi de paiement, et de consommation.
J’ai utilisé dans la partie serveur, une barre de statut, pour afficher l’état du serveur (Connecté ou non connecté), le montant à payer de chaque poste sans revenir aux détails, le tarif global, l’unité de mesure à afficher chez le client et le nombre de postes membres, ainsi qu’une barre de progression pour connaitre le taux d’activation.

Dans la partie Client, vous allez trouver deux étiquettes (Label).  La première est pour afficher le numéro de poste, et la deuxième pour afficher le montant à payer ainsi que l’unité de mesure (reçus par le programme serveur).
Dans la page paramètres des deux parties vous connaitrez directement l’adresse IP et le nom du poste (qu'il soit Serveur ou Membre) sans recourir à d’autres applications ou commandes.

Au niveau programmation ;
Grâce à mon projet vous aller apprendre ;
1. Comment utiliser une base de données PARADOX dans un programme Delphi sans coder les actions standards (Ajout, Modification, Suppression,…).
2. Comment Filtrer une table sur un champ de type date à l’aide d’un TDateTimePicker.
3. Comment utiliser les fichier INI, (création, exploitation,…) avec des exemples différenciés des instructions : WriteString, WriteInteger, WriteBool.
4. L’utilisation du composant StringGrid.
5. L’utilisation des messages de dialogue (InputBox, et les messages de choix).
6. Comment Créer un TButton dynamiquement, ainsi que de spécifier son emplacement et la police, et comment coder un bouton créé dynamiquement.
7. Comment créer un TLabel, TImage, dynamiquement et comment les coder.
8. Comment envoyer une variable d’une forme à une autre (Voir : AFirst.OnShow ; SBEnregistrer -Tspeedbutton-)
9. Comment utiliser les sockets ; (TClientSocket, et TServerSocket), dans un programme Delphi pour transmettre une chaîne de caractère d’un programme à un autre –Les composants TClientSocket et TServerSocket sont créés dynamiquement-
10. Comment afficher l’adresse IP et le nom du poste dans un String.
11. Et pour ne pas parler trop, je vous laisse découvrir le reste par vous-même.

Juste une petite chose à préciser, la version originale du CyberCompteur finalisé en 2005 sous VisualBasic6 à l’aide des composants MailSlot -sont compatibles aussi avec Delphi et sont plus performants-, (pour voir la version originale du CyberCompteur taper mon site Internet).

A vrai  dire je me suis cassé la tête pour réaliser ce projet, c’est pour ça que je demande à tous ceux qui veulent m’aider pour l’améliorer de me laisser plus de commentaires.

Avant de terminer, je veux juste mentionner que je suis apte à recevoir des critiques dans le sens d’améliorer, et SVP non pas dans le sens de me décourager.

Pour terminer, je souhaite que mon modeste travail comme vous le voyez vous sera utile dans votre vie (académique, professionnelle, …).

N.B :
Changer l’extension « iex » par « exe », pour voir les fichiers exécutables du CyberCompteur.

Source

Conclusion

Rien à dire que de vous souhaiter bonne chance et plein de succès.
Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

  • signaler à un administrateur
    Commentaire de Rematrix le 11/05/2008 10:45:42

    * l'utilisation d'un timer pour incrémenté un compteur n'est pas juste tu peut perdre ou gagné du temps et si le pc server se block le compte se bloquera aussi si tu utilise l'heur de system ça serai plus correcte, et pour les socket t'as du utiliser les socket non bloquante (avec les thread) mais la meilleur façon reste de faire un server http comme l'Apash par exemple ( trés utile pour ton cas) mais je sais q'un gestionnaire de cyper n'est jamais trés bien payé alors je comprend :D.
    j'aime bien le coté de gestion ça reste ton coté fort ;), apré tous c ton domaine hien! ainsi que la source est trés bien commenté et la structure est pas male aussi.
    -conclusion trés bon solo travail, c'est pas donnée pour tous le monde.
    aller bonne continuation ya elblad.

  • signaler à un administrateur
    Commentaire de emirej le 11/05/2008 21:48:23 9/10

    Bravo logiciel utile et il m'a l'air bien structuré

  • signaler à un administrateur
    Commentaire de delphinait le 11/05/2008 23:22:18

    tres bonne structure de codage et de commentaires , j'ai beacoup appris en consultant ta source , 1000 merçi pour toi Fouad , bon courage et bonne programmation .

  • signaler à un administrateur
    Commentaire de hakiman le 12/05/2008 13:48:49

    Bravo FOUAD Et bien bonne chance alors pour votre nouveau projet,  j'éspire que sera  aussi intéressant que le cyber compteur et géstion de bibliothéque je compte bien y passer régulièrement.

  • signaler à un administrateur
    Commentaire de alex3105 le 12/05/2008 17:41:02

    salut foued

    Enfin en matiere de programmation c acceptables:
    qqs: remarques:
    - les timer c pas geniales surtout avec delphi, utilises plutot des callback (API windows) c plus precis et sur.
    - Tsocket et autres c pas geniale, les Indy sont meilleur
    - le nombre de poste est (je pense fixe) il doit etre dynamique (des qu'1 client de connecte sont Objet Poste est créé automatiquement et est detruit des qu'il de deconnecte.
    - penses a utiliser un sys de recuperation apres crash.
    - evites d'utiliser l'horloge sys pour le calcul (plutot un
    compteur autoincrementable chaque seconde depuis l'heure de depart etc...)
    - penses a utiliser un sys de tarification dynamique (+ tarifs proposes et editables)
    - donnes la possibilite aux client de consulter leurs comptes depuis une page web et non depuis une interface client (delphi) comme tu la fais (Javas, php , xml , webservice, etc) c facile a mettre en ouvre.
    - etc....

  • signaler à un administrateur
    Commentaire de HAFTARIFOUAD le 12/05/2008 20:27:21

    Bonjour à tous

    je doit remercier tous les gens qu'ils m'ont laissé leurs commentaires.

    @alex3105; Merci à vous pour votre initiative;
    En réponse à vos questions:
    1.les timer c pas geniales surtout avec delphi, utilises plutot des callback (API windows) c plus precis et sur.
    Je suis tout d'accord avec vous un timer est à éviter.
    2.Tsocket et autres c pas geniale, les Indy sont meilleur
    En principe dans un projet comme celui là on as pas besoin d'envoyer une chaine de caractère de taille plus de 255
    3.le nombre de poste est (je pense fixe) il doit etre dynamique (des qu'1 client de connecte sont Objet Poste est créé automatiquement et est detruit des qu'il de deconnecte.
    si à chaque fois je crée le pc quand il connecté et je le libre quend il se déconnecte c pas aussi génial même il peut prends du temps et le plus grave ce qu'il peut bloquer le programme serveur
    4.evites d'utiliser l'horloge sys pour le calcul (plutot un
    compteur autoincrementable chaque seconde depuis l'heure de depart etc...).
    Je vous pose un question: quand il aura un problème d'électricité et le Serveur reboot, qu'est ce qu'on doit faire pour récupèrer les données?
    5.penses a utiliser un sys de tarification dynamique (+ tarifs proposes et editables)
    quand il aura un poste qui travaille sans conexion par exemple jeux ou traitement de texte qu'est ce qu'on pourra faire? y même quand on veux appliquer une remise
    6.donnes la possibilite aux client de consulter leurs comptes depuis une page web et non depuis une interface client.
    ça c'est bon.

    l'essentiel, un grand merci à vous.
      

  • signaler à un administrateur
    Commentaire de HAFTARIFOUAD le 12/05/2008 21:51:58

    Désolé j'ai pas terminé mon commentaire ...En principe dans un projet comme celui là on as pas besoin d'envoyer une chaine de caractère de taille plus de 255 ...
    A mon avis Mailslots peuvent remplacer tt j'ai travaillé avec mais en VB, ils sont plus performants que les TSockets et les Indy. bonne chance à tous et plein de succès.

  • signaler à un administrateur
    Commentaire de cantador le 12/05/2008 23:08:14 5/10

    Bonsoir  HAFTARIFOUAD,

    juste deux choses :
    paradox hum mais comme c'est un petit projet çà peut fonctionner.
    Utilises des query à la place des TTables et met en place des transactions;
    Ces dernières te permettront de traiter facilement les erreurs grace au rollback.
    Tu peux remplacer les 15 TPopupMenu par un seul en détectant le composant qui reçoit le clic du sender.

    Bon courage

  • signaler à un administrateur
    Commentaire de HAFTARIFOUAD le 12/05/2008 23:10:19

    trés bien CANTADOR merci à vous bravo

  • signaler à un administrateur
    Commentaire de Rematrix le 13/05/2008 10:48:44

    @Alex3105

    "- évites d'utiliser l'horloge sys pour le calcul (plutot un "
    es ce que t'as développer un gestionnaire de cybercafé avant ?!!
    si tu ne travail pas avec l'heur du sytem tu sera un voleur tu peut me croire par e que j'ai testé.

      (* un copie coller de mon ancient gestion de cyber*)
    //************ar: argent , hd :heur debut; hf :heur final, //************tm:temps: écoulé
    procedure calt(hd,hf:string; pr:real; var ar:real; var tm:string);
    var   min,heur:integer;
    begin
    min:=(strtoint(copy(hf,4,2)))-(strtoint(copy(hd,4,2)));
    heur:=(strtoint(copy(hf,0,2)))-(strtoint(copy(hd,0,2)));
    if (min<0) and (heur<=0 )then
    begin
    min:=min+60  ;
    heur:=heur+23;
    end
    else
    if min<0 then
    begin
    min:=min+60;
    heur:=heur-1;
    end
    else
    if heur<0 then
    begin
    heur:=heur+24
    end  ;

    tm:=inttostr(min)+' min '+inttostr(heur)+'  h';
    ar:=min*(pr/60)+(heur*pr);
    ar:=strtofloat(FormatFloat('0.00',ar));
    end;

  • signaler à un administrateur
    Commentaire de alex3105 le 13/05/2008 15:22:36

    re salut

    @rematrix


    ton code contient ++ failles ... désolé !!

    Oui je suis l'auteur d'un compteur Pro. (entre autre) vendu a ++++++++ exemplaire,...
    je porte simplement mon aide pas plus..

    pour ce ki é de l'horloge sys, as tu pensé un moment si ça venait de changer (par un tiers:batterie HS/virus/utilisateur/programme/etc),
    dans un LAN/pc sou NT c facile (commande net time ....)
    là tt la gestion est a jeter,
    on ne peux pas faire hr1-hr2, c n'importe koa, pense aussi au passage a minuit , je sais bien ce ke je dis,
    pour ce ki es de la détection des crashs, c pas compliqué
    c une signature (petit fichier ou clé registre etc) qui est créée au démarrage et supprimée a la sortie (normale) du pgm, si elle vient d'être détectée au démarrage (avant sa création) c ke la sortie été anormale (même principe utilisé par windows) , ici tu demande au user de préciser kel type de crash a causé l'arrêt du pgm et tu fais ce kil faut pour recuperer les compteur ...

    pour la création dynamique des Objets compte clients je pense ke c la meilleur solution (il suffit de savoir utiliser mes threads et la manip dynamique de composants).
    penses si tons compteur devrait gerer un parc de + de 100 PC, va tu reprogrammer ton App ???? (100 popup, 100 images,100 bouton etc)


    pour le sys de tarification variable, je pense ke tu n'a pas saisie le sens, en fait tu créé une liste de tarifs avec label et tarif ke tu affecte a n'importe kel compte (au démarrage), ainsi tu peux avoir plusieurs calculs pour chq poste.(si qq1 bascule d'un mode a un autre par exp)

    on fait t'as pas idée des trucs k'1 Compteur pour cyberCafé peut avoir c fous, le mien m'a pris + 20 mois,

    bonne chance ...



    je suis l'auteur d'un compteur professionnel

  • signaler à un administrateur
    Commentaire de Rematrix le 14/05/2008 10:24:11

    re salut aussi
    @alex3105

    "ton code contient ++ failles ... désolé !!
    pour ce ki é de l'horloge sys, as tu pensé un moment si ça venait de changer (par un tiers:batterie batterie HS /virus/utilisateur/programme/etc),
    dans un LAN/pc sou NT c facile (commande net time ....)
    là tt la gestion est a jeter,
    on ne peux pas faire hr1-hr2, c n'importe koa, pense aussi au passage a minuit , je sais bien ce ke je dis"

    1er-pour quoi etre désolé, arrêt stp!!ont est la pour changé nos idée, apprendre..blablala.

    aparament tu ne sais pas ce que tu dit, et tu dit n'importe quoi, simplement (rek tetmaniek).

    par ce que déja le compteur et chez un server, alors le virus, NT,lan, batterie ( c'est du science fiction ça!!), c'est pas mon probleme, c'est un gestionnaire de cyber pas un administrateur raiseau ou un anti-virus... c'est vraiment n'import quoi.

    pour le passage a minuit il est calculé,
    et en plus c'est une procedure de calcul quand tu la use tu format tes dates (date US, FR) tu voie ce que je veux dire ;) ok j'explique; je veux dire parle plus tôt de format de date.
    et je prefere qu'un virus blast mon pgm (aprés tous pq les virus existe :D?) et pas que mon pgm vole un client.

    conclusion a mon avis un "inc" c'est pas détous professionnelle;tu doit faire une mise ajour :D.

    bon courage ya lebled.

  • signaler à un administrateur
    Commentaire de alex3105 le 14/05/2008 14:03:52

    re re
    je pense ke le coté superficiel de la chose augure un mal entendu énorme,...

    @Rematrix

    plus de gros mot stp.(rek tetmaniek, C pas bien ça)

    je ne dis n'importe quoi, du moment ke j'enseigne l'informatique depuis ++ années donc...

    pour etre juste j'ai l'impression qu'on prefere le coté bidouille que autre chose (c inné chez qq uns),
    faut savoir que plus on apprend bien des le début plus on s'améliore ++.

    le plus simple n'est pas toujours le + juste !!

    B.C.



  • signaler à un administrateur
    Commentaire de Bacterius le 18/05/2008 17:31:20

    Bonjour,
    oh la la les gars vous avez tous rat? le r?glement codes sources "n'ecris pas en sms" ^^

    FOUAD, je vais tester ta source des que j'ai de la place sur mon disque dur (eh oui, c'est pas illimit? ces trucs la), et je te ferai part de mes observations, mes remarques, mes f?licitations, ^^

    Et je compte essayer de faire un logiciel de gestion de cybercaf? ?galement :)
    Merci de m'avoir donn? l'id?e, j'?tais a court :p

    Cordialement, Bacterius !

  • signaler à un administrateur
    Commentaire de Bacterius le 18/05/2008 17:32:58

    Oh la la quelle plaie ces accents, pourquoi les avoir inventes ><
    Desole pour les deux posts :( mais fallait que j'explique ca ^^

    Cordialement, Bacterius !

Ajouter un commentaire

Pub



Appels d'offres

Snippets en rapport

CalendriCode

Juillet 2008
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Téléchargements

Boutique

Boutique de goodies CodeS-SourceS