الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشروع واب Isapi

رائج
بدأه زكيري عبد العالي في 23 يناير 2009 · 151 رد · 13,644 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#101

جربت الكود لكن

اقتباس
Error 500

إعجاب الإنسان بنفسه دليل على صغر عقله

-----------------------------------------------------------------

رأس الحكمة مخافة الله

#102

:resentful: الكود جيد ربما نست شئ

نتضر قيلا و نري ماحص عند الاخ علي B)

#103

انا مازلت اتابع ما فاتني الى الان

لا تنسى اني اعدت تنصيب نظام التشغيل وانا الان بصدد ارجاع البيانات

اخي عبد العالي ساقوم بانشاء الجداول عن طريق Sql server ان لم يكن هناك مانع

لانه علي ان احمل my sql من الاول وهذا يتطلب وقت

اقترح ذلك الي حين تحميل MYSQL

طبعا ان لم يكن لديك مانع

تم تعديل هذه المشاركة بواسطة علي .ع في 8 فبراير 2009 في 23:25

اللهم علمنا ما ينفعنا وانفعنا بما علمتنا وانفع الناس بنا واغفر لنا وارحمنا

#104

ليس عندي مانع الا انك لا بدا ان نعمل معا على SGBD كله كما قلنا سابقا فالمشاريع اتية .

#105

نجحت B)

الخطا كان من EasyPhp

لقد اعدت تثبيت appache و MySql

نجح الامر

إعجاب الإنسان بنفسه دليل على صغر عقله

-----------------------------------------------------------------

رأس الحكمة مخافة الله

#106

جيد جدا :thumb_up:

hanitaieb وانت اخي اكريم هل كل شيء تمام .

#107

اخى زكيرى نجح معى الكود لكن بهذا التعديل ... . لا ادرى ان كنت فى الطريق الصحيح ام لا .

sanstitrefk2.jpg

اخى زكرى اتمنا ان تذكر كل كبيرة و صغيرة متعلقة بالخطوات مهما كانت بساطتها ... لكى لا نتوه . :blink:

sanstitre2yy3.jpg

اتمنا ان يتوفر لى الوقت لاستطيع المتابعة معكم .

شكرا زكيرى .

#108

vQueryListC.Close;

#109

من يستطيع ان يشرح لنا ماذا فعلنا في هذه الخطوة الاولي

من كود الدلفي الي الاشتمال

#110
اقتباس
من يستطيع ان يشرح لنا ماذا فعلنا في هذه الخطوة الاولي

من كود الدلفي الي الاشتمال

عملنا في هذه الخطوه Injection Html Code من الدلفي الي الاشتمال

إعجاب الإنسان بنفسه دليل على صغر عقله

-----------------------------------------------------------------

رأس الحكمة مخافة الله

#111

فقط :S كل هذا واين ماي اسكل :cry: هناك مبتدئبن معنا عليك التوضيح اكثر :rose: .

لكن انا فرح بمشاركتكه في المشروع.شكرا :pwease:

#112
اقتباس
فقط كل هذا واين ماي اسكل هناك مبتدئبن معنا عليك التوضيح اكثر .

:wub: :wub:

لدينا الدالة Get_ListC():

تقوم برد قائمة الحسابات الموجودة في قاعدة بيانات MYSQL مثل

Get_ListC = <TR><td>1</td><td>EDF / GDF</td> </TR><TR><td>2</td><td>MATMUTE</td> </TR><TR><td>3</td><td>ESSO</td> </TR>

لدينا في صفحة الاشتمال

<html>
<head>
<title>Liste des Comptes</title>
<head>
<body>
<table>
<#LISTECOMPTE>
</table> 
</body>
</html>

بعد ان نقوم بعمل INJECTION عن طريق

اقتباس
IF UpperCase(TagString) = 'LISTECOMPTE' THEN

BEGIN

ReplaceText:= Get_ListC();

END;

اي تغيير 'LISTECOMPTE' بالقيمة المردودة في Get_ListC

يصبح كود الاشتمال من الشكل

<html>
<head>
<title>Liste des Comptes</title>
<head>
<body>
<table>
<TR><td>1</td><td>EDF / GDF</td> </TR><TR><td>2</td><td>MATMUTE</td> </TR><TR><td>3</td><td>ESSO</td> </TR>
</table> 
</body>
</html>

ارجو ان يكون مفهوم لدي الجميع

اقتباس
لكن انا فرح بمشاركتكه في المشروع.شكرا

لا شكر علي واجب , كل الشكر يعود اليك اخي لانك قمت بعمل رائع من خلال فتحك لهدا المشروع .ان شاء الله اشارك في المشاريع القادمة ان شاء الله

إعجاب الإنسان بنفسه دليل على صغر عقله

-----------------------------------------------------------------

رأس الحكمة مخافة الله

#113

شكرا على الشرح كما اتمني مشاركة الاعضاء و اخ بالذكر اخي طلال الذي انتضر مشاركته و الاخ محمد الذي قال انه لم يسبق له باستعمال ISAPI

ولكنه لم يشارك معنا .

#114

تابع

الان سنقوم بانشاء صفحة CSS لتضهر النتيجة في شكل جيد

gestc.css

نضع هذا الملفي في مجلد جديد اسمه css في المسار

C:\allsource\html\css\gestc.css

نظيف في اعلى الملف html

 [color= #339933;]<title[color= #339933;]>ex4[color= #339933;]</title[color= #339933;]>

[color= #339933;]<link REL[color= #339933;]=[color= #0000ff;]"stylesheet" TYPE[color= #339933;]=[color= #0000ff;]"text/css" HREF[color= #339933;]=[color= #0000ff;]"<#CSS>"[color= #339933;]>

حيث نحدد مسار او وجهة ملف الانماط برمجيا بالدلفي

table.blue {
    background-color: #DAE6FC;    
    border: 1px;
    border-collapse: collapse;
    width:99%;
}

.row1 {
    background: #F0F8FF;
    color : Black;        
}

.row2 {
    background: White;
    color : Black;        
}

-------------------------

المطلوب

كتابة الكود في الدلفي كي يعرض الجدول الازرق و الاسطر

ازرق تارة و ابيض تارة اخرا زهنا انتم بحاجة الى MOD

2 = 0 ;

-------------------------

كي تسهل الامور في الوهلة الاولي ضع الملف Css في HTML

ملاحضة--------------------------------

يمكنك سرقت احد اعضاء مبرمجين الواب لمساعدتك في هذه المرحة هم اصحاب الخبرة ولان خبرتي محدودة في الانماط

post-1034-1234220288_thumb.jpg

تم تعديل هذه المشاركة بواسطة زكيري عبد العالي في 10 فبراير 2009 في 01:58

#115

اتممت :wink:

  1. unit UwebmGestC;
  2. {------------------------------------------------------------------------------}
  3. interface
  4. {------------------------------------------------------------------------------}
  5. uses
  6. SysUtils, Classes, HTTPApp, DBXpress, DB, SqlExpr, HTTPProd, ADODB,DBAccess, MyAccess;
  7. {------------------------------------------------------------------------------}
  8. type
  9. TWebM = class(TWebModule)
  10. PgpLogin : TPageProducer;
  11. ConGestCompt: TMyConnection;
  12. Pgplistc : TPageProducer;
  13. Pgplistop : TPageProducer;
  14. Pgpaddupop : TPageProducer;
  15. Pgpaddupc : TPageProducer;
  16. {------------------------------------------------------------------------------}
  17. {################### ALL TAG #################################################
  18. {------------------------------------------------------------------------------}
  19. procedure PgplistcHTMLTag(Sender: TObject; Tag: TTag;const TagString: String; TagParams: TS
  20. trings;var ReplaceText: String);
  21. {------------------------------------------------------------------------------}
  22. {################### ALL ACTION ################################################
  23. {------------------------------------------------------------------------------}
  24. procedure WebMAdmin_CAction(Sender: TObject; Request: TWebRequest;Response: TWebResponse; v
  25. ar Handled: Boolean);
  26. {------------------------------------------------------------------------------}
  27. PRIVATE { Private declarations }
  28. FUNCTION Get_ListC():string;
  29. {------------------------------------------------------------------------------}
  30. PUBLIC { Public declarations }
  31. {------------------------------------------------------------------------------}
  32. {------------------------------------------------------------------------------}
  33. VAR
  34. WebM: TWebM;
  35. {------------------------------------------------------------------------------}
  36. IMPLEMENTATION {$R *.dfm}
  37. {------------------------------------------------------------------------------}
  38. {################### ALL FUNCTION ##############################################
  39. {------------------------------------------------------------------------------}
  40. FUNCTION TWebM.Get_ListC():string;
  41. VAR
  42. vQueryListC : TMyQuery;
  43. str , vrow: String;
  44.  
  45. BEGIN
  46.  
  47. str:= '<TR class="blue" > <td> Code </td><td> LIB </td></TR>';
  48.  
  49. vQueryListC:=TMyQuery.Create(nil);
  50. TRY
  51. WITH vQueryListC DO
  52. BEGIN
  53. Connection:=ConGestCompt;
  54. SQL.Text:='SELECT ID_C,LIB_C FROM compte ORDER BY LIB_C';
  55. TRY
  56. Open;
  57. WHILE NOT (Eof) DO
  58. BEGIN
  59. if (RecNo mod 2 = 0) then
  60. vrow:= 'Row2'
  61. Else
  62. vrow:= 'Row1';
  63. str:= str +
  64. '<TR class="'+css +'"> ' +
  65. '<td> ' + FieldByName('ID_C').AsString + '</td>' +
  66. '<td> ' + FieldByName('LIB_C').AsString + '</td>' +
  67. '</TR>'
  68. ;
  69. EXCEPT ON E:exception DO //LOG(''+E.Message);
  70. Result:=E.Message;
  71. FINALLY
  72. vQueryListC.Close;
  73. vQueryListC.Free;
  74. Result:=str;
  75. {------------------------------------------------------------------------------}
  76. {################### ALL TAG #################################################
  77. {------------------------------------------------------------------------------}
  78. PROCEDURE TWebM.PgplistcHTMLTag(Sender: TObject; Tag: TTag;const TagString: String; TagParams:
  79. TStrings; var ReplaceText: String);
  80.  
  81. CONST C_CssPath='/css/gestc.css';
  82.  
  83. BEGIN
  84. IF UpperCase(TagString) = 'CSS' THEN
  85. BEGIN
  86. ReplaceText:= C_CssPath;
  87. END;
  88. IF UpperCase(TagString) = 'LISTECOMPTE' THEN
  89. BEGIN
  90. ReplaceText:= Get_ListC();
  91. {------------------------------------------------------------------------------}
  92. {################### ALL ACTION ################################################
  93. {------------------------------------------------------------------------------}
  94. PROCEDURE TWebM.WebMAdmin_CAction(Sender: TObject; Request: TWebRequest;Response: TWebResponse;
  95. var Handled: Boolean);
  96. BEGIN
  97. Response.Content:= Pgplistc.Content;
  98.  
  99.  
  100.  

<html>
<head>
<link REL="stylesheet" TYPE="text/css" HREF="<#CSS>">
<title>Liste des Comptes</title>
<head>
<body>

<table class="blue">
<#LISTECOMPTE>
</table> 

</body>
</html>

تم تعديل هذه المشاركة بواسطة maosalah في 10 فبراير 2009 في 02:22

إعجاب الإنسان بنفسه دليل على صغر عقله

-----------------------------------------------------------------

رأس الحكمة مخافة الله

#116
اقتباس
RecNo

لاداعي لاضافة متغيرة جديدة لكن امن على حق ايضا.

 [color= #b1b100;]if RecNo mod [color= #cc66cc;]2 [color= #339933;]= [color= #cc66cc;]0 then vrow[color= #339933;]:=[color= #0000ff;]'row1' [color= #b1b100;]ELSE vrow[color= #339933;]:=[color= #0000ff;]'row2'[color= #339933;];

جيد معا سنصل الى النهاية.

عمل جيد لم يبقى الى ارفاق كل المشروع بعد التاكد من النتيجة الاجماليه كما في الصورة .

'C:\allsource\gestc.css';

حطأ في المسار لاني لنا غيرته منذو فترة قليلة

ويجب وضع ثابه تذكر ان لا يجب وضع سلسة مسار معين على الاقل في CONST او ملف

INI ...

CONST

   C_CssPath[color= #339933;]=[color= #0000ff;]'/css/gestc.css'[color= #339933;];

تم تعديل هذه المشاركة بواسطة زكيري عبد العالي في 10 فبراير 2009 في 02:07

#117

يا اخوانى درجة درجة انا لا افقه شىء فى Css ...

محاولتى كانت على هذا الشكل :

  1.  
  2. Open;
  3. WHILE NOT (Eof) DO
  4. BEGIN
  5. Case (I mod 2 ) oF
  6. 0:C:= '#DAE6FC' ;
  7. 1:C:= '#F0F8FF';
  8. end;
  9. str:= str +
  10. '<TR> ' +
  11. '<td bgcolor="'+c+'">'+ FieldByName('ID_C').AsString + '</td>' +
  12. '<td bgcolor="'+c+'">'+ FieldByName('LIB_C').AsString + '</td>' +
  13. '</TR>';
  14. Next; Inc(i)
  15. END;
  16.  
  17.  

sanstitrevf7.jpg

لم استعمل تماما Css .

هل يفى بالمطلوب .

#118

اخي عبد العالي

عندما

CONST   C_CssPath='/css/gestc.css';

يحدث خطا حيث لا يمكن الوصول الي ملف CSS

CONST   C_CssPath='C:\allsource\html\css\gestc.css';

يعمل بدون اي مشكل :huh:

إعجاب الإنسان بنفسه دليل على صغر عقله

-----------------------------------------------------------------

رأس الحكمة مخافة الله

#119

تم ارفاق المشروع

allsource.rar

إعجاب الإنسان بنفسه دليل على صغر عقله

-----------------------------------------------------------------

رأس الحكمة مخافة الله

#120

ماهي :hmm: الخطوة القادمة اخي زكيري عبد العالي :evil:

:rose:

إعجاب الإنسان بنفسه دليل على صغر عقله

-----------------------------------------------------------------

رأس الحكمة مخافة الله

#121

في الحين .

لقد وجدت الحل لتنفيذ css بالشكل

'/css/gestc.css

يجب اضافة اسم اختصار في ملف الاعدادات لapach اعرف ان هناك ما احسن من هذا لكن لا اعلمها .

 AliasMatch ^/ex1/htmlpages(.*) "C:/allsource/html$1"
<Directory "C:/allsource/html">
    Options None
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
AliasMatch ^/ex1/css(.*) "C:/allsource/html/css$1"
<Directory "C:/allsource/html/css">
    Options None
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
AliasMatch ^/bin(.*) "C:/allsource/bin$1"
<Directory "C:/allsource/bin">
Options Indexes MultiViews ExecCGI
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAliasMatch ^/ex1/(.*) "C:/allsource/bin/app.dll/$1"
#Ajouter par Naïm
AddHandler isapi-isa dll

تم تعديل هذه المشاركة بواسطة زكيري عبد العالي في 11 فبراير 2009 في 23:00

#122

المطلوب الان هو

1- اضافة سكرول بار ل DIV

2-عرض شريط التحديد عند التقل بين التسجيلات

مثل dbgrid

3- وضع رابطة في هذا الشريط عند النضر عليها تفتح صفحة جديدة للتغيرر المعلومات

./AddUpdateC?idc=X

x:=1

x:=2

x:=3.....ex

تم تعديل هذه المشاركة بواسطة زكيري عبد العالي في 11 فبراير 2009 في 01:24

#123

بســم الله الـرحمــن الرحيــم

table.blue {
    background-color: #DAE6FC;    
    border: 1px;
    border-collapse: collapse;
    width:99%;
}

div.scrol{
    margin-left   : 10px;
    margin-bottom : 5px;
    overflow: scroll;
    width:30%; 
    height:60%;"
}

tr.select,tr.row1 {
    background: #F0F8FF;
    color : Black;        
}

tr.select,tr.row2 {
    background: White;
    color : Black;        
}
tr.select, tr.select:active {
    background:#eee;   
}
tr.select:hover {
    background:#BCCCD2;
}

نجحت في وضع وضع السكرول لكن لم انجح في عرض شريط التحديد مع بقاء رسم الاسطر اي ازرق و ابيض

post-1034-1234384300_thumb.jpg

تم تعديل هذه المشاركة بواسطة زكيري عبد العالي في 11 فبراير 2009 في 23:31

#124

اين اضع الكود اخي عبد العالي :cry:

اللهم علمنا ما ينفعنا وانفعنا بما علمتنا وانفع الناس بنا واغفر لنا وارحمنا

#125

السلام عليكم جميعا

اعتذر عن التاخير بسبب عطل في الكمبيوتر والذي كان فيروس في الهارد

السلام عليكم جميعا

اعتذر عن التاخير بسبب عطل في الكمبيوتر والذي كان فيروس في الهارد

مواضيع مشابهة