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

[ تنبيه ] عندي مشكله في كود PHP and HTML

بدأه del piero في 18 يونيو 2011 · 8 رد · 456 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

انا عندي كود PHP فيه مشكلتين

الاولى :

طريقة عمل الكود عندي جدولين في الداتا بيس يقرى من الجدول الاول ازا كان Dr_status = 1 . يروح لي التيبل التاني ياخد ال location حق ال Dr في الوقت الحالي (مو شغال يطلعلي Error )

الثانيه : كيف ارسل ال location لي كود ال HTML

الجدولين

table 1 name = Dr

Dr_ID | Dr_status

table 2 name = course

course_name | section_ID | Dr_ID | time_start | time_end | location

اما بلنسبه لي كود ال HTML مافيه شي لاني مني غارف كيف اسوي MAP بال HTML

و هذا كود PHP حقي الي مو شغال و شكرا




$dbhost='localhost';
$dbusername='root';
$dbpassword='';
$dbname='Dr';

$dbcnx = mysql_connect ($dbhost, $dbusername, $dbpassword);
if (!$dbcnx) {
die('Can\'t Connect To DB Server') ;
}
mysql_select_db("Dr") or die("Can't select database");
//this could be dynamic , let's say that we get it from a $_GET Form , but let's assume that we have a static ID
$dr_Id = 1 ;
$query = 'SELECT Dr_status FROM dr WHERE Dr_ID ='.intval($dr_Id);
$result = mysql_query($query);
$data = mysql_fetch_assoc($result);
if ($data['Dr_status'] == 1) {
$query2="SELECT location FROM sections where Time_start <= ".time()." < Time_end";
$result = mysql_query($query2);
$data = mysql_fetch_assoc($result);
if (isset($data['location']) && !empty($data['location']) ) {
echo 'barrrraaam , the location of Dr is : '.$data['location'] ;
}
} else {
echo 'Damn !! i can\'t predicate the Dr. Status !! , we should hire new one :P'
}

mysql_close($dbcnx);
?>
<?php

#2
del piero كتب:

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

table 2 name = course

course_name | section_ID | Dr_ID | time_start | time_end | location

اما بلنسبه لي كود ال HTML مافيه شي لاني مني غارف كيف اسوي MAP بال HTML

و هذا كود PHP حقي الي مو شغال و شكرا


$query2="SELECT location FROM sections where Time_start <= ".time()." < Time_end";

لديك اسم جدول مختلف في الاستعلام الثاني ..

أمر آخر أفضل أن لا تعمل على هذا الشرط :

Time_start <=  ".time()."  <  Time_end

لأن النتيجة التي يعيدها هذا الشرط ليست هي النتيجة التي أعتقد أنك تبحث عنها والله أعلم

عليك تقسيم الشرط إلى شرطين :

Time_start <= ".time()." and Time_end > ".time()."

بالنسبة للمشكلة الثانية فهي غير واضحة ولكن بحسب فهمي لسؤالك

يمكنك إما أن تضع كود الـ HTML و كود PHP في ذات الملف و بالتالي تقوم بطباعة :

$data['location']

ضمن كود HTML بشكل طبيعي

أو يمكنك عمل include للملف الذي يحوي كود PHP في بداية ملف الـ HTML (على أن يكون نوع هذا الملف PHP) و طباعة ذات المتحول السابق ضمن الـ HTML

<?php
include("test.php");
?>

ملاحظة :

يفضل تسمية المتغير الذي يحوي نتيجة الاستعلام الثاني (data1 مثلاً) باسم مغاير للمتغير الذي يحوي نتيجة الإستعلام الأول (data)

طبعاً أن يكون لهم ذات الاسم ليس خطأ ولكن للاختفاظ بقيمة المتغير الأول كما هي فقد تحتاجها في مكان آخر من الكود

بتوفيق الله...

تم تعديل هذه المشاركة بواسطة MoHaMMaD Pro في 18 يونيو 2011 في 06:31

1

Everything will be fine when we TALK LESS, DO MORE


#3

مشكور اخي على المجهود وجاري العمل على التعديل وان شاء الله يشتغل و ان اشتغل سوف ابلغك ان شاء الله

اما بلنسبة لي اسم الجدول انا عدلتو بس لما كتبته هنا نسيت اني عدلته

اما بلنسبة لي الملف هو (PHP. بس فيه ال HTML) بس المشكله مني عارف ابني خريطة في ال HTML هذي المشكله الثانيه ( مثلا سويت مربع في ال HTML اريد ان ارسل نفس ال location الى نفس المربع لكي يصبح المربع لون ثاني )

انا تعلمت كيف اطبع PHP في HTML لكن لم اجد شي يعلمني كيف ارسل شي مثل طريقت المثال حق المربع

و في الختام الف شكر وما تقصر يا اخ MoHaMMaD Pro على تعبك معانا و شكرا

#4

هناك ملاحظة أخرى حول الاستعلام الثاني:

أنت لم تضع الـ id للـ Dr المراد الحصول على بياناته من الجدول الثاني أي يجب أن يكون الاستعلام كالتالي:

$query2="SELECT location FROM sections where Dr_ID = $dr_Id AND time_start <= ".time()." and time_end > ".time();

أما عن الـ HTML فيرجى التوضيح بمثال عما تريد فعله بالضبط إن امكن

بتوفيق الله..

Everything will be fine when we TALK LESS, DO MORE


#5

مشكور على الرد السريع و التوضيح

بس انا عملت dr_Id = 1$ عشان ابا اجرب بس عشان اشوف ازا كان شغال ولا لا بس انا حا اضيف في المستقبل اكثر من Dr فا ابيه يشيك الي ال Dr_status =1 يخذ ال dr_ID ويسوي الباقي حق ال Location

و بعد التعديل الاول اشتغل بس عملت echo لي ال $result عشان اتكد انه اخد القيمه من الجدول الي هيه 1 بس طلعلي #5 resource ما ادري ايش يعني

يعني باقي الكود صح :) ؟

المثال حق HTML شغال عليه لما اخلص منو حا اضيفه هنا عشان توضحلك الفكره

انا عارف اني مشاكلي كثيره بس انا مبتدء في ال PHP ودخلت مواقع كثيره و اتعلمت اشياء كثيره و كتبت ال كودا بس حولت اعدل فيه بس ما كان شغال بس ان شاء الله بعد التعديلات دي يشتغل

و الله يعطيك الف عافيه على مجهودك و مرره شكرااا

#6

مشكور اخي على التعديلات بس والله مو راضي من وقت طويل وانا بحاول فيه :wacko:

ال $data['location'] ما تطلع في الصفحه يمكن طريقت ال IF الي فيها ال echo مهي صحيحه

و الشي الثاني انا عدلت على الكود بحيث انه انا ما اعطيه ال Dr_ID يسير هوه يحث عن ال Dr_ID الي Dr_status = 1 وياخذه و يجيب ال location حق section الي فيه ال Dr_ID الي اخذناه

بس هل تعديلي صح ولا اجلس على القديم

و مررره مشكووورررر

<?php

echo date("d/m/y  H:i:s") . "<br />";

$dbhost='localhost';
	$dbusername='root';
	$dbpassword='';
	$dbname='Dr';

	$dbcnx = mysql_connect ($dbhost, $dbusername, $dbpassword);
	if (!$dbcnx) {
		die('Can\'t Connect To DB Server') ;
	}
 	mysql_select_db("Dr") or die("Can't select database");
    $dr_status = 1 ;
   	$query = 'SELECT Dr_ID FROM dr WHERE Dr_status ='.intval($dr_status);
 	$result = mysql_query($query);
	$data  = mysql_fetch_assoc($result);

		$query2="SELECT location FROM course where Dr_ID = $data AND Time_start <=  ".time()." and Time_end > ".time()."";
		$result2 = mysql_query($query2);
		$data1  = mysql_fetch_assoc($result);
        echo "location= '.$data1" ;
		if (isset($data1['location']) && !empty($data1['location']) ) {
			echo 'barrrraaam , the location of Dr is : '.$data1['location'] ;
		}


	mysql_close($dbcnx);
?>
#7

انا حليت المشاكل كلها بس بقيات ال Time() و هيه المشكله الي بقيات و يريت احد يساعدني فيها

اعتقيد انه نوع الداتا الي في الداتابيس هوه المشكله او انه النوع ما يشتغل مع Time() لانه انا عملت echo لي Time() وكان الناتج ارقام غير مرتبه بهذا الشكل (1308588476) ؟؟!!!!

وهذه الداتا و شكل الداتا الي بداخل الجداول فا اعتقد ال query ما تنفع مع الداتا,,, فا اغير نوع الداتا الي في الجدول او اغير ال query و ان شاء الله تسعدوني

انا نشاءة الداتا بيس عن طريق PHPMyadmin

table = course

course_name | section_ID | Dr_ID | time_start | time_end | location

..............| 10:20:00 | 10:00:00

type = Time ................................ | time_start | time_end

و هذه ال query القديمه

  $query2="SELECT location FROM sections where Dr_ID = $dr_Id AND time_start <= ".time()." and time_end > ".time();

المشكله في ".time()." ! :(

تم تعديل هذه المشاركة بواسطة del piero في 21 يونيو 2011 في 02:24

#8

*- يحظر استخدام اللهجة العامية

*- أو كتابة الأسئلة باللغة الإنجليزية

*- أو كتابة الكلمات الإنجليزية بالعربية

====

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#9

الحمد لله لقد تم حل المشكله و اشتغل البرنامج و شكرا لي الاخ MoHaMMaD Pro و شكرا لي المنتدى الرائع و الى الامام

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