تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] مشكلة البيانات بالاحرف العربية Mysql B4A
#11
بعد رفع الملفين على الاستضافة
وليكن الرابط

http://www.*****.com/MyApp/All.php

في b4a
قم باستيراد مكتبة OkHttpUtils2
قم بتعريف المكتبة

PHP كود :
Dim Job1 As HttpJob 

ستكون التجربة على عملية الاستعراص وبقية العمليات على نفس النمط
PHP كود :
Sub asd
ProgressDialogShow2
("جاري تحميل البيانات ",False)
    
Job1.Initialize("Job1",Me)
    
Job1.PostString("http://www.*****.com/MyApp/All.php"_
     
"SELECT * FROM T1 where Name like'" Name _
    
"' And NumPhone like'" NumPhone "'")
End Sub 

هذا الحدث ضعه تحت زر الامر بالاستعراض او اي مكان تريد
ووضيفته
انه يستورد البيانات من السيرفر بناءا على المعطيات الموجودة في ملف php.All

الان قمنا باستيراد البيانات بقي لخر خطوة وهو حدث النجاح لمكتبة HttpJob
وطبعا اسمه ثابت لايتغير

PHP كود :
Sub JobDone(Job As HttpJob)
    If Job.Success Then
        Dim res 
As String
        res 
Job.GetString
    Log
("Response from server: " res)
        Dim parser As JSONParser
        parser
.Initialize(res)
        
        If Job
.JobName="Job1" Then      // اسم المتغير الذي  بين التنصيص في امر Job1.Initialize
            Dim COUNTRIES As List
            COUNTRIES parser.NextArray    //'returns a list with maps
            If COUNTRIES.Size 0 Then
                
//  هنا نضع الطلوب اذا نجح الاستعلام 
            Else
// في حالة عدم وجود البيانات
                ToastMessageShow("لم تقم بتسجيل حسابك بعد",True)
            End If
        End If
    Else
//  في حالة عدم الاتصال بالنت
        ToastMessageShow("لم تتم العملية تأكد من اتصالك بالانترنت",True
    End If
    ProgressDialogHide
End Sub 
الرد }}}
تم الشكر بواسطة: محمد كريّم , محمد كريّم , asemshahen5
#12
(25-02-20, 06:09 PM)d3vc0d كتب :
(25-02-20, 05:17 PM)alfaiz678 كتب : الطرق كثيرة
وساعطيك الاسهل وهناك ماهو افضل منها عن طريق get , post

انشئ ملف php وارفعه على الاستضافه وليكن باسم con.php


محتواه تجد فيه ارسال التشفير الذي يخلصك من المشكلة

PHP كود :
<?php
$servername 
"";
$username "";
$password "";
$dbnamee "";

 
   $con = new mysqli($servername$username$password$dbnamee);

mysqli_set_charset($con,"utf8");

?>

ثم اضف ملف php اخر وارفع الاثنين على استضافتك وليكن اسمه All.php

PHP كود :
<?php

include ("con.php");

//mysqli_set_charset ($con , "utf8");
$query file_get_contents("php://input");
$sth mysqli_query($con$query);

if (
mysqli_errno($con)) {
 
  header("HTTP/1.1 500 Internal Server Error");
 
  echo $query.'\n';
 
  echo mysqli_error($con);
}
else
{
 
  $rows = array();
 
  while($r mysqli_fetch_assoc($sth)) {
 
    $rows[] = $r;
 
  }
 
  $res json_encode($rows);
 
   echo $res;
 
   mysqli_free_result($sth);
}
mysqli_close($con);
?>

انتهينا من جانب الاستضافة الان ناتي الى جانب b4a
نعم تم انشاء الملفان       all.php  , و con.php

و مذا  عن عمليات الاظافة التعديل الحدف  ..... الخ  كيف و اين تكتب الاوامر
الرد }}}
تم الشكر بواسطة: asemshahen5
#13
PHP كود :
//ListView   هذا مثال لاستعراض الاسماء ووضعها في 
كود :
Sub JobDone(Job As HttpJob)
   If Job.Success Then
       Dim res As String
       res = Job.GetString
   Log("Response from server: " & res)
       Dim parser As JSONParser
       parser.Initialize(res)
       
       If Job.JobName="Job1" Then      // اسم المتغير الذي  بين التنصيص في امر Job1.Initialize
           Dim COUNTRIES As List
           COUNTRIES = parser.NextArray    //'returns a list with maps
           If COUNTRIES.Size > 0 Then
               
//  هنا نضع الطلوب اذا نجح الاستعلام
                                           For i = 0 To COUNTRIES.Size - 1
                                Dim m As Map
                m = COUNTRIES.Get(i)
                ListView.AddTextItem(m.Get("name") ,id)
            Next
           Else
// في حالة عدم وجود البيانات
               ToastMessageShow("لم تقم بتسجيل حسابك بعد",True)
           End If
       End If
   Else
//  في حالة عدم الاتصال بالنت
       ToastMessageShow("لم تتم العملية تأكد من اتصالك بالانترنت",True)
   End If
   ProgressDialogHide
End Sub

راجع الردود من البداية لاني قمت ببعض التغييرات فيها
الرد }}}
تم الشكر بواسطة: asemshahen5 , sendbad100
#14
(25-02-20, 07:16 PM)alfaiz678 كتب :
PHP كود :
//ListView   هذا مثال لاستعراض الاسماء ووضعها في 
كود :
Sub JobDone(Job As HttpJob)
   If Job.Success Then
       Dim res As String
       res = Job.GetString
   Log("Response from server: " & res)
       Dim parser As JSONParser
       parser.Initialize(res)
       
       If Job.JobName="Job1" Then      // اسم المتغير الذي  بين التنصيص في امر Job1.Initialize
           Dim COUNTRIES As List
           COUNTRIES = parser.NextArray    //'returns a list with maps
           If COUNTRIES.Size > 0 Then
               
//  هنا نضع الطلوب اذا نجح الاستعلام
                                           For i = 0 To COUNTRIES.Size - 1
                                Dim m As Map
                m = COUNTRIES.Get(i)
                ListView.AddTextItem(m.Get("name") ,id)
            Next
           Else
// في حالة عدم وجود البيانات
               ToastMessageShow("لم تقم بتسجيل حسابك بعد",True)
           End If
       End If
   Else
//  في حالة عدم الاتصال بالنت
       ToastMessageShow("لم تتم العملية تأكد من اتصالك بالانترنت",True)
   End If
   ProgressDialogHide
End Sub

راجع الردود من البداية لاني قمت ببعض التغييرات فيها

لم اتمكن من الاتصال بقاعدة البيانات   ثم اريد عرض المعلومات في  labels
الرد }}}
تم الشكر بواسطة: asemshahen5
#15
العرض في ليبل سهل فيما بعد
ولكن
اولا تاكد من الاتصال
الصق الرابط الذي يخصك في المتصفح واضغط انتر

http://www.*****.com/MyApp/All.php
الرد }}}
تم الشكر بواسطة: asemshahen5 , sendbad100
#16
(25-02-20, 09:13 PM)alfaiz678 كتب : العرض في ليبل سهل فيما بعد
ولكن
اولا تاكد من الاتصال
الصق الرابط الذي يخصك في المتصفح واضغط انتر

http://www.*****.com/MyApp/All.php

بعد لصق الرابط

النتيجة 

[][]

اضن انه لا مشكلة 
الرد }}}
تم الشكر بواسطة:
#17
نعم هذا يعني ان الاتصال تم

اضهار الاسم من الجدول في لابل

PHP كود :
Sub JobDone(Job As HttpJob)
 
  If Job.Success Then
       Dim res 
As String
       res 
Job.GetString
   Log
("Response from server: " res)
 
      Dim parser As JSONParser
       parser
.Initialize(res)
 
      
       
If Job.JobName="Job1" Then      // اسم المتغير الذي  بين التنصيص في امر Job1.Initialize
 
          Dim COUNTRIES As List
 
          COUNTRIES parser.NextArray    //'returns a list with maps
 
          If COUNTRIES.Size 0 Then
               
//  هنا نضع الطلوب اذا نجح الاستعلام
 
          Dim m As Map
           m 
COUNTRIES.Get(0)
 
         label1.Textm.Get("Name")
 
                            
           
Else
// في حالة عدم وجود البيانات
 
              ToastMessageShow("لم تقم بتسجيل حسابك بعد",True)
 
          End If
 
      End If
 
  Else
//  في حالة عدم الاتصال بالنت
 
      ToastMessageShow("لم تتم العملية تأكد من اتصالك بالانترنت",True)
 
  End If
 
  ProgressDialogHide
End Sub 
الرد }}}
تم الشكر بواسطة: asemshahen5 , sendbad100
#18
(25-02-20, 08:54 PM)d3vc0d كتب :
(25-02-20, 07:16 PM)alfaiz678 كتب :
PHP كود :
//ListView   هذا مثال لاستعراض الاسماء ووضعها في 
كود :
Sub JobDone(Job As HttpJob)
   If Job.Success Then
       Dim res As String
       res = Job.GetString
   Log("Response from server: " & res)
       Dim parser As JSONParser
       parser.Initialize(res)
       
       If Job.JobName="Job1" Then      // اسم المتغير الذي  بين التنصيص في امر Job1.Initialize
           Dim COUNTRIES As List
           COUNTRIES = parser.NextArray    //'returns a list with maps
           If COUNTRIES.Size > 0 Then
               
//  هنا نضع الطلوب اذا نجح الاستعلام
                                           For i = 0 To COUNTRIES.Size - 1
                                Dim m As Map
                m = COUNTRIES.Get(i)
                ListView.AddTextItem(m.Get("name") ,id)
            Next
           Else
// في حالة عدم وجود البيانات
               ToastMessageShow("لم تقم بتسجيل حسابك بعد",True)
           End If
       End If
   Else
//  في حالة عدم الاتصال بالنت
       ToastMessageShow("لم تتم العملية تأكد من اتصالك بالانترنت",True)
   End If
   ProgressDialogHide
End Sub

راجع الردود من البداية لاني قمت ببعض التغييرات فيها

لم اتمكن من الاتصال بقاعدة البيانات   ثم اريد عرض المعلومات في  labels

اذا كنت تستخدم السيرفر المحلي فلا تكتب localhost او 127.0.0.1
ولكن ضع عنوان الجهاز في الراوتر والذي عادة يبدا ب 192.168xxxxx
كود :
192.168.x.x

http://localhost/MyApp/All.php
http://127.0.0.1/MyApp/All.php
كود :
http://192.168.1.7/MyApp/All.php

لمعرفة رقم IP من الرواتر
افتح Command Prompt واكتب ipconfig
ستجد الرقم في IPv4 Address
الرد }}}
تم الشكر بواسطة: d3vc0d , d3vc0d , asemshahen5 , sendbad100
#19
Thumbs Up 
(25-02-20, 10:24 PM)alsalamoni كتب :
(25-02-20, 08:54 PM)d3vc0d كتب :
(25-02-20, 07:16 PM)alfaiz678 كتب :
PHP كود :
//ListView   هذا مثال لاستعراض الاسماء ووضعها في 
كود :
Sub JobDone(Job As HttpJob)
   If Job.Success Then
       Dim res As String
       res = Job.GetString
   Log("Response from server: " & res)
       Dim parser As JSONParser
       parser.Initialize(res)
       
       If Job.JobName="Job1" Then      // اسم المتغير الذي  بين التنصيص في امر Job1.Initialize
           Dim COUNTRIES As List
           COUNTRIES = parser.NextArray    //'returns a list with maps
           If COUNTRIES.Size > 0 Then
               
//  هنا نضع الطلوب اذا نجح الاستعلام
                                           For i = 0 To COUNTRIES.Size - 1
                                Dim m As Map
                m = COUNTRIES.Get(i)
                ListView.AddTextItem(m.Get("name") ,id)
            Next
           Else
// في حالة عدم وجود البيانات
               ToastMessageShow("لم تقم بتسجيل حسابك بعد",True)
           End If
       End If
   Else
//  في حالة عدم الاتصال بالنت
       ToastMessageShow("لم تتم العملية تأكد من اتصالك بالانترنت",True)
   End If
   ProgressDialogHide
End Sub

راجع الردود من البداية لاني قمت ببعض التغييرات فيها

لم اتمكن من الاتصال بقاعدة البيانات   ثم اريد عرض المعلومات في  labels

اذا كنت تستخدم السيرفر المحلي فلا تكتب localhost او 127.0.0.1
ولكن ضع عنوان الجهاز في الراوتر والذي عادة يبدا ب 192.168xxxxx
كود :
192.168.x.x

http://localhost/MyApp/All.php
http://127.0.0.1/MyApp/All.php
كود :
http://192.168.1.7/MyApp/All.php

لمعرفة رقم IP من الرواتر
افتح Command Prompt واكتب ipconfig
ستجد الرقم في IPv4 Address

شكر على المساعدة و الدعم  , الاكواد تعمل بامتياز  
الرد }}}
تم الشكر بواسطة: محمد كريّم , محمد كريّم , asemshahen5



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم