CS
VB, VB.NET
ASP.NET,ASP
C, C++
ColdFusion
PHP
Javascript
Delphi
Flash
Java
Graphisme
Irc
Assembleur
C#
Mobilité
SQL
Foxpro
Python
Windev
Snippets
IT Pros
Codes
(37983)
Listes de codes
Toutes
les sources
Les plus
récents
Les
mis à jour
Les plus
populaires
Les plus
populaires du mois
Tout le
niveau 1
(débutant)
Tout le
niveau 2
(initié)
Tout le
niveau 3
(expert)
Toutes les sources avec un
fichierZIP
Les sources
(1147)
Les
mieux notés
Trouver des codes
Trouver un code par mot clé
(Nouveau)
Top des codes
Les Trophées
Top des favoris des membres
Top par catégorie
Auteurs de codes
Les auteurs de sources
Le top des membres
Ajouter une source
Tutoriaux
(37983)
Forums
(1111977)
Vidéos
Livres
(27864)
Outils & Liens
Emploi (CV et Offres)
Services
Téléchargement
Chat
Autres Sites
Divers
Partenaires
Section étudiants
Section pro
Connexion
begin process at 2008 05 22 21:59:42
Derniers blogs
SQL Server : DELETE FR...
Instance private and p...
Wygday : Les grèves n'...
ZUNE : Comment récupér...
Petite annonce : Vends...
La suite...
Mini Sondage
Votre navigateur n'utilise pas le javascript, pour
voter aux sondages de ce site, cliquez ici
Derniers logiciels
mIRC (6.32)
Ad-Aware 2008 (7.0.2.8...
Super [eRightSoft] (v2...
Autoit (V3)
FlightGear (1.0.0)
La suite...
Comparer les prix
Acer Aspire 8920G-934G50Bn (LX.AP30X.031) Ordinateur Portable au meilleur prix
Mes RSS
Office 2007 : ouvertu...
Le site officiel de x...
Fin des pubs tv : tou...
Toshiba : 2 nouveaux ...
Cea : une pile à comb...
La suite...
Personnaliser
Stats
1 177 987
membres
633
nouveaux aujourd'hui
13 991
membres club
Divers
Mettre ce site au démarrage
Ajouter ce site à vos favoris
CodeS-SourceS dans votre MSN !
Mes Favoris
Plein Ecran
Connexion
Trouver une ressource
Trouvez une ressource parmi
37 983
codes,
1 111 977
messages d'aide etc...
Recherche:
dans
Tout le site
Codes
Tutoriaux
Forum
Blogs
Livres
RFC
Icones
News .NET
Boutique
[ Dernières recherches ]
Filtre:
Tous les langages
Python
Foxpro
SQL
PDA / PocketPC
C# / C#.NET
Assembleur
IRC
Graphisme
JAVA / J2EE
Flash
Delphi
Javascript / Ajax / DHTML
PHP
ColdFusion
C / C++ / C++.NET
ASP / ASP.NET
Visual Basic, VB6, VB.NET, VB 2005, VB
Tous les codes
.NET uniquement
Exclure .NET
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 !
683 commentaire(s) de Delphiprog
sur des sources sur tout
CodeS-SourceS
Le :
20/05/2008 22:23:24
Source :
JEU DE CHIFFRES
OK pour les modifs,mais pas pour les règles du jeu :
1- peut-on cliquer plusieurs fois sur une même case ?
2- comment sont calculés les points accumulés par chacun des joueurs ?
3- Quelles sont les stratégies de jeu, possibles ou à privilégier ?
4- etc.
Tu vois ? toutes ces petites choses qui font qu'on a envie d'essayer le jeu sans devoir lire le code source pour essayer de comprendre comment ça marche et, inversement, pour pouvoir vérifier que le code respecte les règles décrites :)
Alors, des règles écrites (un .txt suffit) et jointes à l'archive, ce serait bien. Je suis désolé de devoir insister.
Le :
14/05/2008 10:54:16
Source :
GFACT - GESTION DE FACTURATION
@adelpro : une solution pour comprendre, http://translate.google.com.
(sélectionner la détection automatique de préférence).
Le :
11/05/2008 10:36:22
Source :
UTILISATION DLL NETAPI32 POUR LISTER UTILISATEURS RESEAU ET GESTIONNAIRE DE SERVEUR DE FICHIERS
Ca a l'air propre et bien écrit mais l'absence de commentaires dans le code est pénalisante pour la compréhension.
Le :
11/05/2008 10:29:57
Source :
GFACT - GESTION DE FACTURATION
Bonjour Adelpro : est-ce une nouvelle version des deux codes sources précédents ou quelque chose de vraiment nouveau ?
NB 1 : on retrouve les mêmes critiques que précédemment.
NB 2 : si les pharmaciens se mettent à faire de la programmation, il ne faut pas s'étonner que les épiciers veuillent vendre de la pharmacie !...(humour)
NB 3 : ne sois pas étonné que peu de gens s'intéressent à ton code car nous n'avons pas envie d'installer toute une batterie de nouveaux composants juste pour voir.
Le :
10/05/2008 17:59:37
Source :
GRID AVEC PROPRIÉTÉS D'AFFICHAGE ET D'ÉDITION
Je me suis dit : super travail.
J'ai donc voulu voir à quoi ça ressemblait en fonctionnement et patatras, sous Delphi 7, au lancement de l'application :
---------------------------
Notification d'une exception du débogueur
---------------------------
Le projet DemoTThGrid.exe a provoqué une classe d'exception EConvertError avec le message ''' n'est pas une valeur en virgule flottante correcte'. Processus stoppé. Utilisez Pas-à-pas ou Exécuter pour continuer.
---------------------------
OK Aide
---------------------------
sur la ligne 916 de l'unité thgrids.pas :
if AValue <> '' then
DrawCellValue(AValue, ACol, ARow, ARect, AState);
What's wrong ?
Le :
10/05/2008 17:12:52
Source :
JEU DE CHIFFRES
Bravo, pas franchement de défaut hormis le fait de prendre le risque d'exposer un certain nombre de variables, dans la partie interface, à des modifications intempestives.
Il aurait été aussi souhaitable d'alléger le code à certains endroits par l'emploi de with...do begin...end.
Questions :
1- Serait-il possible de fournir les règles du jeu ?
2- Comment interrompre une partie avant la fin ?
Le :
10/05/2008 15:54:34
Source :
GDC MANAGER
Effectivement, pour une première, c'est pas mal.
Voici néanmoins quelques remarques (constructives) :
1- Eviter de désactiver les messages d'erreur du compilateur qui ne sont pas là pour meubler le décor. Ainsi, les avertissements suivants sont à prendre au sérieux :
[Avertissement] AjoutContact.pas(256): La variable 'senderEdt' n'est peut-être pas initialisée
[Avertissement] AjoutContact.pas(267): La variable 'SenderEdt' n'est peut-être pas initialisée
[Avertissement] AjoutContact.pas(299): Le symbole 'fmShareDenyRead' est propre à une plate-forme
[Avertissement] ModifContact.pas(260): La variable 'senderEdt' n'est peut-être pas initialisée
[Avertissement] ModifContact.pas(271): La variable 'SenderEdt' n'est peut-être pas initialisée
[Avertissement] ModifContact.pas(312): Le symbole 'fmShareDenyRead' est propre à une plate-forme
Hormis l'avertissement concernant l'utilisation du symbole fmShareDenyRead, le reste peut poser de gros problèmes à l'exécution.
2- Il manque des contrôles à la suppression d'un contact : si on ne rentre aucune donnée et que l'on clique sur le bouton [ok], voici le beau message qui s'affiche :
---------------------------
Gestion Des Contacts
---------------------------
Base de données inconnue.
Alias: Contact.
---------------------------
OK
---------------------------
A affiner, donc.
3- idem que ci-dessus lorsque l'on tente de visualiser un contact ou tous les contacts avec une base de données vide.
4- "Visualiser un contact", puis cliquer sur "visualiser", on obtient ceci :
---------------------------
Gestion Des Contacts
---------------------------
Violation d'accès à l'adresse 005263D0 dans le module 'GDCManager.exe'. Lecture de l'adresse 0000033C.
---------------------------
OK
---------------------------
5- Au niveau du code, on trouve des redondances comme dans Timer1Timer et dans FormCreate (Accueil.pas) pour une simple mise à l'heure des différents composants. Place cette potion de code dans une procédure que tu appelles ensuite.
De même pour :
procedure TFenPrincipale.AjoutContact1Click(Sender: TObject);
begin
TFajoutContact.Create(Self);
ActiveMDIChild.Caption := 'Ajout d''un nouveau Contact';
end;
{-------------------------------------------------------------------------}
procedure TFenPrincipale.Label11Click(Sender: TObject);
begin
TFajoutContact.Create(Self);
ActiveMDIChild.Caption := 'Ajout d''un nouveau Contact';
end;
De plus, je dirai que c'est un peu maladroit qu'une fiche soit chargée de modifier le titre d'une autre fiche lorsque ce titre est statique.
6- Attention à la façon de nommer tes composants car cela peut prêter à confusion comme ici :
procedure TFenPrincipale.AjoutContact2Click(Sender: TObject);
begin
TFsuppContact.create(self);
ActiveMDIChild.Caption := 'Suppression d''un Contact';
end;
Le bouton AjoutContact a pour action d'afficher la fiche de suppression d'un contact !
7- Ce type de code fait un peu ringard de nos jours et me rappelle les applications des années 80 :
procedure TFenPrincipale.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
if
MessageDlg('Cette operation fermera l''application. Voulez-vous effectuer cette operation ?', mtConfirmation, [mbYes, mbNo], 0) = mrYes then
Application.Terminate
else
begin
Action := caNone;
end;
end;
On alerte l'utilisateur uniquement si des données ont été modifiées et non sauvegardées. D'autre part, éviter l'utilisation de l'appel à Application.Terminate qui arrête brutalement l'application sans laisser le temps aux composants orientés données de vider leurs buffers.
8- Attention à vérifier l'existence d'un fichier avant de l'ouvrir comme dans :
procedure Tsplash.FormShow(Sender: TObject);
begin
sprite := tbitmap.create;
sprite.loadfromfile('1.bmp');
9- Privilégier l'utilisation de TDataModule pour centraliser la logique métier en matière de gestion des données. Cela aurait évité de multiplier les composants TQuery sur chaque fiche et de retrouver des requêtes identiques d'une fiche à l'autre. Lors de la maintenance d'une application, cela peut devenir critique et coûteux en temps avec des tests inutiles quand il faut revisiter chaque fiche de l'application (qui peut en contenir plusieurs centaines). La preuve :
E:\delphifr\GDC\GDC Manager\Acceuil.pas
163 ActiveMDIChild.Caption := 'Ajout d''un nouveau Contact';
171 ActiveMDIChild.Caption := 'Ajout d''un nouveau Contact';
187 ActiveMDIChild.Caption := 'Recherche et Modification d''un Contact';
195 ActiveMDIChild.Caption := 'Suppression d''un Contact';
E:\delphifr\GDC\GDC Manager\AjoutContact.pas
173 query1.SQL.Add('insert into contact (civilite,Societe,Nom,Prenom,Adresse,CodePostal,Ville,Pays,Site,Email,telephone,Fax,Mobile,DateNaiss,Observation,photo) values (:ci,:s,:n,:p,:a,:c,:v,:pa,:si,:e,:t,:f,:m,:d,:o,:pho)');
E:\delphifr\GDC\GDC Manager\ModifContact.pas
105 Query1.SQL.Add('select * from contact where nom = :p');
198 Query1.SQL.Add('UPDATE contact SET civilite=:ci ,societe=:s,Nom=:n,Prenom=:p,Adresse=:a,CodePostal=:c,ville=:v,pays=:pa,Email=:e,site=:si,telephone=:t,fax=:f,mobile=:m,datenaiss=:d,observation=:o,photo=:pho WHERE nom=:pr');
335 Query1.SQL.Add('SELECT Nom from contact where Nom LIKE :p Order by Nom Asc');
E:\delphifr\GDC\GDC Manager\SelectContact.pas
64 Query1.SQL.Add('SELECT Nom from contact where Nom LIKE :p Order by Nom Asc');
81 Query1.SQL.Add('select * from contact where nom = :p');
E:\delphifr\GDC\GDC Manager\SupprimerContact.pas
54 Query1.SQL.Add('select prenom from contact where nom = :p ');
86 Conf := MessageDlg(('Voulez-vous Vraiment supprimer le contact ' + combo.Text
92 Query1.SQL.Add('Delete from Contact WHERE nom=:pr');
116 Query1.SQL.Add('SELECT Nom from contact where Nom LIKE :p Order by Nom Asc');
Dans le code, on remarque aussi que tu ne vérifies aucune des données entrées par l'utilisateur et que tu ne prends même pas la précaution de "quoter" tes chaines. Rien de tel pour faire planter une requête si un contact s'appelle "Monsieur Archibald de l'archipel". Ta base de données est gravement exposée aux injections SQL.
Bon, je vais m'arrêter là et passer le relais aux autres. Tu as déjà de quoi occuper les quelques jours du long week-end qu'il te reste.
Mais, je le dis comme d'autres ici, pour une première c'est pas mal du tout.
Le :
19/04/2008 10:09:02
Source :
AJOUT VALEUR CHAMP ENUM
tetechercheuse a écrit :
"L'intéret de cette source n'est pas pour l'administrateur du site qui bien évidemment peux changer les valeurs directement sur la base MySQl mais plutot pour l'utilisateur des pages qui va créer sa liste déroulante lui-même."
Alors, cela s'appelle une faute frave : si l'utilisateur lambda a tous les droits sur une base, y compris le droit ALTER, ça craint ! Et pourquoi pas les droits DROP DATABASE ? Les commandes CREATE USER et GRANT ne sont pas faites pour faire bien mais pour servir.
Et que se passe-t-il si l'utilisateur ajoute une valeur déjà existante ? Comme le fait si bien remarquer TheSin, une "ch'tite gestion d'erreur" serait la bienvenue.
Personnellement, j'ai même déjà vu des sites web en ligne où l'on se connecte en root et sans mot de passe à la base de données ! Si, je vous le jure. Et encore, je ne vous parle pas de la non vérification des entrées utilisateur dans les formulaires...
Pour en revenir au débat code/snippet, je ne pencherais ni pour l'un ni pour l'autre dans la mesure où l'intérêt réside uniquement dans la formulation de la requête SQL et qu'elle peut être saisie directement en ligne de commande.
A quand un snippet pour les champs de type SET ? :)
Le :
19/04/2008 08:46:34
Source :
MLD D'UN BASE DE DONNÉES MYSQL OU SQLITE
Ah oui, aussi : le terme MLD est un peu galvaudé ici puisque les scripts ne font que de décrire le modèle physique des tables.
Appelons un chat un chat...
Le :
19/04/2008 08:44:09
Source :
MLD D'UN BASE DE DONNÉES MYSQL OU SQLITE
Et les vues ? et les procédures stockées ? et les triggers ?
Une base de données digne de ce nom comme MySql et, dans une moindre mesure, SqlLite ne se limite pas au simple stockage de données.
Je suis d'accord avec Malalam pour dire que le HTML n'est absolument pas utile ici. Il n'y a pas besoin de faire "joli" mais uniquement de l'utile.
L'idée est bonne et mérite d'être encouragée.
Allez, encore un petit effort et tire la quintessence du schéma INFORMATION_SCHEMA de MySql.
[
Page 1
Page 2
Page 3
Page 4
Page 5
Page 6
Page 7
Page 8
Page 9
Page 10
]
>
>|
Appels d'offres
SITE PERSONNALISATION ...
Budget :
4 000€
Encoder des photos de ...
Budget :
35€
Transposition de scrip...
Budget :
200€
La suite
RSS
Pub
Côté IT
Installation des drive...
Supprimer un module da...
Nettoyer les fichiers ...
Intégration de Reporti...
Automatisation de back...
Installation de WSS V3...
Installation de SQL Se...
Tous les articles IT
CalendriCode
Mai
2008
L
M
M
J
V
S
D
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
VS Express FR Gratuit !
Boutique
Besoin d'icones ?
Besoin d'icones de qualité professionnelle pour vos sites et applications ? Alors ne cherchez plus, IconShock est la réponse !
IconShock est recommandé par CodeS-SourceS