النتائج 1 إلى 9 من 9

الموضوع: مشكلة php5

  1. #1
    عضو نشيط
    تاريخ التسجيل
    Apr 2008
    المشاركات
    39

    مشكلة php5



    ياشباب انا سويت برنامج بالنسخة php4 وبعدين نقلته على الاصدار الجديد php5 بس تمرير المتحولات فيها مشكلة
    يعني انا مثلا عندي ملف اسمه app.php فيه هاد السطر

    echo "<span class='style4'>Appointments on ".$tdate." For Dr.".$tdoc."
    <a href='app_print.php?a=$tdate&b=$cdoc&c=$tdoc'>Print </a></span>";

    ومتل مو شايفين في 3 متحولات رايحة عالصفحة app_print اللي هي كالتالي بس هالمتحولات ماوصلو لهالصفحة:

    <?php
    $aa=$_POST['a'];
    $bb=$_POST['b'];
    $cc=$_POST['c'];
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1256" />
    <title>Hetou Clinc</title>
    </head>

    <body onLoad="do_print()">
    <form>
    <?php
    echo"<span class='style4'>Appointments on $aa For Dr $bb </span>";
    echo"<br>";
    echo"<TABLE BORDER=5 bordercolor=BFBCAC CELLPADDING=2 CELLSPACING=2 align=center>";
    echo"<tr><td height=3 colspan=5 bgcolor=BFBCAC></td></tr>";
    echo"<td width=150 bordercolor=BFBCAC bgcolor=$color1><b><center>Time</center></td>" ;
    echo"<td width=150 bordercolor=BFBCAC bgcolor=$color1><b><center>Patient</center></td>";
    echo"<td width=150 bordercolor=BFBCAC bgcolor=$color1><b><center>Note</center></td>";

    $time=mktime(9,0,0);
    $counter=$time;
    // $tdoc=$_POST[opt_doc];
    while ($counter < $time+47000)
    {
    $result=mysql_query("select * from app where a_date=$aa and a_time='.date('G:i',$counter).' and a_d_code=$bb order by a_time");
    $row = mysql_fetch_array($result);
    $nummber=mysql_num_rows($result);
    if ($nummber==0)
    {
    echo "<tr><td bordercolor=#BFBCAC><b><font color='green'><center>".date("G:i",$counter)."</center></font></td>";
    echo "<td bordercolor=#BFBCAC>-</td>";
    echo "<td bordercolor=#BFBCAC>-</td>";
    }
    else
    {
    $code = $row["a_code"];
    $d_code= $row["a_d_code"];
    $result2=mysql_query("select d_name from doc where d_code='" . $d_code . "'");
    $row2 = mysql_fetch_array($result2);
    $doctor=$row2["d_name"];
    $p_code= $row["a_p_code"];
    $result3=mysql_query("select p_name from patients where p_code='" . $p_code . "'");
    $row3 = mysql_fetch_array($result3);
    $patient="( ".$p_code." ) ".$row3["p_name"];
    $a_date = $row["a_date"];
    $a_time = $row["a_time"];
    if ($row["a_note"]=="")
    {
    $note = "-";
    }
    else
    {
    $note = $row["a_note"];
    }
    echo "<tr><td bordercolor=#BFBCAC><b><font color='red'><center>$a_time</center></font></td>";
    echo "<td bordercolor=#BFBCAC align='left'>$patient</td>";
    echo "<td bordercolor=#BFBCAC>$note</td>";
    }
    $counter=$counter+900;
    }
    $day='';
    echo "</table>";
    ?>
    </form>
    </body>
    </html>

    الحل يانشاما.....







  2. #2
    عضو سوبر نشيط
    تاريخ التسجيل
    May 2007
    المشاركات
    947


    على السريع وجدت خطا في الكود
    حيث ان طريقة ارسال المتغيرات get وليست post

    فقم بتغيير الاسطر التالية:


    كود PHP:
    $aa=$_POST['a'];
    $bb=$_POST['b'];
    $cc=$_POST['c']; 
    الى


    كود PHP:
    $aa=$_GET['a'];
    $bb=$_GET['b'];
    $cc=$_GET['c']; 
    ولا تنسى ان الاصدار الخامس تكون خاصية ال register_globals غير مفعلة به كوضع افتراضي غير php4

    لكن يمكن ايضا التغلب عليها بوضع كود في ال htaccess :
    كود PHP:
    php_flag register_globals on 
    وبعدها يمكن ان تستغنى عن المصفوفة pst و المصفوفة get





    __________________
    قل اللهم مالك المُلك تؤتي الملك من تشاء وتنزع الملك ممن تشاء وتعز من تشاء وتذل من تشاء بيدك الخير انك على كل شىء قدير

  3. #3
    عضو نشيط
    تاريخ التسجيل
    Apr 2008
    المشاركات
    39


    على السريع وجدت خطا في الكود
    حيث ان طريقة ارسال المتغيرات get وليست post

    فقم بتغيير الاسطر التالية:


    كود PHP:
    $aa=$_POST['a'];
    $bb=$_POST['b'];
    $cc=$_POST['c']; 
    الى


    كود PHP:
    $aa=$_GET['a'];
    $bb=$_GET['b'];
    $cc=$_GET['c']; 
    ولا تنسى ان الاصدار الخامس تكون خاصية ال register_globals غير مفعلة به كوضع افتراضي غير php4

    لكن يمكن ايضا التغلب عليها بوضع كود في ال htaccess :
    كود PHP:
    php_flag register_globals on 
    وبعدها يمكن ان تستغنى عن المصفوفة pst و المصفوفة get
    متشكرين يا أجدع مهندس مصري






  4. #4
    عضو نشيط
    تاريخ التسجيل
    Apr 2008
    المشاركات
    39


    ياباش مهندس في مشكلة تانية في الاسطر التالية

    $result=mysql_query("select * from app where a_date='" . $aa . "' and a_time='". date("G:i",$counter). "' and a_d_code='" .$bb. "' order by a_time");
    $row = mysql_fetch_array($result);
    $nummber=mysql_num_rows($result);

    بيعطيني رسالة خطأ

    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\medical\app_print.php on line 29

    مع انه نفس الكود كان شغال مسبقا






  5. #5
    عضو نشيط
    تاريخ التسجيل
    May 2008
    المشاركات
    151


    الخطأ موب شرط من السطر نفسه، اقرا نص الخطأ بيقولك ان mysql_fetch_array() القيمة المرسلة إليها غير صحيحة
    الخطأ في السطر اللي فوقه بالظبط، حيث ان ال mysql_query ما أرجعت أي سطر من قاعدة البيانات، (الأسباب المحتملة: 1- خطأ في الاستعلام، 2- عدد النتائج يساوي صفر)

    استعمل mysql_num_rows إذا كانت القيمة اكبر من صفر يعمل ال mysql_fetch_array





    __________________
    Google
    Firefox

  6. #6
    عضو سوبر نشيط
    تاريخ التسجيل
    May 2007
    المشاركات
    947


    استبدل الكود التالي:

    كود PHP:
    $result=mysql_query("select * from app where a_date='" $aa "' and a_time='"date("G:i",$counter). "' and a_d_code='" .$bb"' order by a_time");
    $row mysql_fetch_array($result);
    $nummber=mysql_num_rows($result); 
    بهذا الكود ..

    كود PHP:
    $date =date("G:i",$counter);
    $result=mysql_query("select * from app where a_date= '$aa' and a_time= '$date' and a_d_code= '$bb' order by a_time");
    $row mysql_fetch_array($result);
    $nummber=mysql_num_rows($result); 

    وإذا أردت عملها بطريقتك فعليك كتابة هذا السطر كالتالي:

    كود PHP:
    $result=mysql_query("select * from app where a_date= ".$aa." and a_time=".$date." and a_d_code=".$bb." order by a_time"); 
    والكود الذي كتبته صحيح لكن الافضل ان تفصل دالة date في متغير خاص بها حتى لا يحدث خطا ما
    وانتظر النتيجة





    التعديل الأخير تم بواسطة مهندس مصرى ; 05-08-2008 الساعة 03:07 AM
    __________________
    قل اللهم مالك المُلك تؤتي الملك من تشاء وتنزع الملك ممن تشاء وتعز من تشاء وتذل من تشاء بيدك الخير انك على كل شىء قدير

  7. #7
    عضو شرف
    تاريخ التسجيل
    May 2007
    المشاركات
    1,647


    عزيزي استبدل :
    كود PHP:
    $result=mysql_query("select * from app where a_date='" $aa "' and a_time='"date("G:i",$counter). "' and a_d_code='" .$bb"' order by a_time"); 
    بهذا:
    كود PHP:
    $result=mysql_query("select * from `app` where `a_date` = '" $aa "' and `a_time` = "date("G:i",$counter). " and `a_d_code` = '"$bb ."' order by `a_time` asc"); 
    هذا إن كان نوع الحقل a_time هو integer في قاعدة البيانات ..

    إذا استمرت المشكلة تأكد من أن أسماء الحقول جميعها موجودة واسم الجدول صحيح ، وإن كانت صحيحة كلها ، قم بطباعة الاستعلام بواسطة تركيب echo في الصفحة، ربما ستلاحظ المشكلة فوراً، وإن لم تظهر لك أية مشكلة، خذ الاستعلام إلى phpMyAdmin وقم بتنفيذه هناك ، إذا ظهرت المشكلة هناك .. فالمشكلة قطعاً في نفس الاستعلام، اطبعه لنا هنا، وضع لنا تركيبة جدولك ..

    تحياتي، أشرف السمهوري





    __________________
    # اتبعني على Twitter
    # عِرفان ساهم ببناء المحتوى العربي العلمي على الإنترنت!

  8. #8
    عضو نشيط
    تاريخ التسجيل
    Apr 2008
    المشاركات
    39


    مشكورين ياشباب والله يعطيكم العافية...
    بس للعلم انه طلعت المشكلة بقاعدة البيانات في احد الحقول متغير نوع الداتا عملته double واشتغل الحمدلله....






  9. #9
    عضو نشيط
    تاريخ التسجيل
    Sep 2006
    المشاركات
    93


    مشكورين ياشباب كان عندي مشكلة قريبه من الموضوع .










ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

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