Flutter Dev نشر 17 يونيو 2022 أرسل تقرير نشر 17 يونيو 2022 أحاول استعمال if الشرطية في ملفات PHP قبل الاتصال بقاعدة البيانات ولدي الكود التالي: <?php require_once 'connt.php'; $id=$_GET['id']; $IDCat=$_GET['IDCat']; if($_GET['IDCat']== '310') { $sql="SELECT * FROM ....... }else if($_GET['IDCat']=='315') { $sql="SELECT * FROM ....... } $stmt = $con->prepare($sql); $stmt->bind_param("s",$id); $stmt->execute(); $result = $stmt->get_result(); $array = array(); while ($row = mysqli_fetch_assoc($result)) { $array[] = $row; } echo ($result) ? json_encode(array("code" => 1, "result"=>$array)) : json_encode(array("code" => 0, "message"=>"Data not found !")); ?> هل طريقة كتابة الكود بشكل هذا صحيحة ؟وامانه ؟ موقع الشرط وكتابته : if($_GET['IDCat']== '310') بشكل هذا هل هو صحيح ؟ ام توجد طريقة مختلفة افضل لفعل ذلك؟ حقيقه هذا اول مره استعمل الشرط في ملفات PHP ياليت أصحاب الخبرة يفيدونا الهدف الشرط هنا انني ارغب لو قمت بأرسال الرقم الفلاني ان تتفعل الاستعلام الذي في ذاك الشرط بمعنى يعتمد على الرقم الذي سوف يحصل عليه 2 اقتباس
1 Hassan Hedr نشر 17 يونيو 2022 أرسل تقرير نشر 17 يونيو 2022 لا مشكلة في كتابة الشيفرة كذلك، التحقق من وجود قيمة ضمن الطلب والتصرف على أساسها لتعيين الاستعلام الحاصل والاستفادة من العبارة الشرطية if طريقة سليمة، لكن بما أنك استخرجت القيمة سابقًا ووضعتها ضمن متغير يمكنك التحقق من ذلك المتغير، قد تضيف لاحقًا معالجة لتلك القيمة خلال استخراجها فتضيفه في الأعلى فقط ولا تغير الشرط كالتالي: $IDCat = $_GET['IDCat']; if($IDCat == '310') { // معالجة وجود القيمة ... } يمكنك الاطلاع أكثر على الجمل الشرطية في PHP وطرق استخدامها من المقال التالي: 1 اقتباس
1 Wael Aljamal نشر 17 يونيو 2022 أرسل تقرير نشر 17 يونيو 2022 من الأفضل التحقق من أن الحقول التي أرسلها التطبيق أو HTML FORM تحوي بيانات وغير فارغة، نستعمل الدالة isset للتحقق من وجود بيانات ضمن الحقل., وأن القيمة نفسها غير فارغة نعمل trim لحذف الفراغات التي من الممكن أن يرسلها المستخدم أو تمر عن طريق الخطأ <?php $id = $_GET['id']; $IDCat = $_GET['IDCat']; if ( isset($id) && trim($id)!= "" && isset($IDCat) && trim($IDCat)!= "" ) { // code } else { // error بيانات ناقصة } ملاحظة: يمكن استعمال الدالة empty ولكنها تعتبر 0 مثلاً قيمة فارغة و أحيانا نريد تمرير 0 أو False لذلك نتوخى الحذر و نتأكد لكل قيمة حسب نوعها أيضاً empty, تعتبر كل شيء من التالي فارغ empty: "" (an empty string) 0 (0 as an integer) 0.0 (0 as a float) "0" (0 as a string) NULL FALSE array() (an empty array) var $var; (a variable declared, but without a value in a class) في حال عدم تمريرك لأي من القيم السابقة يمكن عمل التالي: <?php $id = $_GET['id']; $IDCat = $_GET['IDCat']; if ( !empty($id) && !empty($IDCat) ) { // code } else { // error بيانات ناقصة } مع العلم استخدام IF في مثالك يتحقق من قيمة واحدة وهو كاف 1 اقتباس
السؤال
Flutter Dev
أحاول استعمال if الشرطية في ملفات PHP قبل الاتصال بقاعدة البيانات ولدي الكود التالي:
هل طريقة كتابة الكود بشكل هذا صحيحة ؟وامانه ؟
موقع الشرط وكتابته :
if($_GET['IDCat']== '310')
بشكل هذا هل هو صحيح ؟
ام توجد طريقة مختلفة افضل لفعل ذلك؟
حقيقه هذا اول مره استعمل الشرط في ملفات PHP ياليت أصحاب الخبرة يفيدونا
الهدف الشرط هنا انني ارغب لو قمت بأرسال الرقم الفلاني ان تتفعل الاستعلام الذي في ذاك الشرط بمعنى يعتمد على الرقم الذي سوف يحصل عليه
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.