PDA

View Full Version : مشکل در کد نوشتن برای DROP DOWN LIST



sepidehhhhhhh
جمعه 03 مهر 1394, 14:21 عصر
با سلام
من توی بانک اطلاعاتی ام ک با WAMP ایجاد کردم یه جدول دارم ک توش اطلاعات هست می خوام اطلاعات یکی از فیلدها رو توی یه صفحهی دیگه توی یه DROP DOWN LIST نمایش بده(با فرض اینکه تعداد رکورد ها رو نمی دونیم) و بعد از انتخاب کردن یکی از گزینه های این دراپ دان لیست اونو توی یه جدول دیگه ذخیره کنه نمی دونم چطوری باید براش کد بنویسم؟یه سوال دیگه اگه ب جای دراپ دان لیست یه RADIO BUTTON داشتم اونوقت چطور باید کد میزدم؟ممنون میشم راهنماییم کنید.من توی PHPمبتدی ام.
با تشکر فراوان

hamedarian2009
جمعه 03 مهر 1394, 17:54 عصر
یک کوئری به دیتابیس بزنید و اطلاعات رو از جدول مورد نظر بخونید به طور مثال توی تگ select همچین کدی باید بنویسید:


<select>
<?php
$conn = new mysqli('localhost', 'root', '', 'db_name');
$sql = "SELECT `field_name` FROM `tbl_name` ORDER BY `field_name` ASC;";
$result= $conn->query($sql);
if ($result->num_rows >0) {
while ($row = $result->fetch_assoc()) {
echo '<option value="'. $row['field_name'] .'">'. $row['field_name'] .'</option>';
}
}
$conn->close();
?>
</select>


برای درج هم وقتی فرم سابمیت بشه می تونید اطلاعات رو دریافت و اینسرت کنید. پیشنهاد میکنم اینجارو مطالعه کنید
http://beyamooz.com/php/97-database/116-%D8%AF%D8%B1%D8%AC-%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA-%D8%AF%D8%B1-php

sepidehhhhhhh
شنبه 04 مهر 1394, 15:51 عصر
با سلام
خیلی ممنون آقای آریان لطف کردید اما کدی ک استاد ما بهمون میگه یه کمی فرق داره و میشه بگیداین علامت یعنی چی؟(<-) و همین طور تابع num-rows و تابع fetch-assoc چیکار می کنن؟
و یه سوال دیگه ای هم از حضورتون داشتم اینه چطور توی php کد برای join جدول ها بزنیم؟
با تشکر

hamedarian2009
شنبه 04 مهر 1394, 16:50 عصر
احتمالا استاد شما به روش قدیمی با توابع _mysql اینکارو می کنه چون این دستورات تو PHP نسخه های جدید منسوخ شده نباید استفاده کنید اما اگر اروری بهتون نمیده می تونید به روش ایشون استفاده کنید تو همون لینکی که بهتون 3 روش رو مثال زده میتونید از روش MySQLi Procedural استفاده کنید.
این علامت <- تو شی گرایی استفاده میشه وقتی یک آبجکت از کلاسی میسازید می تونید با این علامت به متدها و پراپرتی های Public اون کلاس دسترسی داشته باشید که اگه شی گرایی کار نکردین بهتره همون روش بالا رو استفاده کنید

وقتی کوئری که تو متغیر sql$ نوشتیم رو با تابع query اجرا کردیم با استفاده از تابع num-rows ابتدا بررسی می کنیم آیا توی اون جدول رکوردی وجود دارد و اگه رکورد بیشتر از صفر یعنی یکی یا بیشتر بود و بعد میایم توی حلقه نتایج رو با تابع fetch-assoc به صورت یک آرایه انجمنی ($row['field_name']) واکشی می کنیم یعنی با هربار اجرای حلقه یک رکورد رو برمی داره و شما اونو نمایش میدین تا وقتی که دیگه رکوردی وجود نداشته باشه از حلقه خارج میشه .
اگه همون لینک رو مباحث پایگاه داده رو مطالعه کنید همه چی رو متوجه میشید فارسی هم هست فکرنکنم سخت باشه
واسه select کردن داده ها تو PHP به همون روشی که در بالا گفتم کار می کنید فقط ممکنه کوئریتون هربار متفاوت باشه مثلا اگه join بخواد بزنید باتوجه به نوع پیوندی که نیاز دارین کافیه مثل لینک زیر کوئری بنویسید:
http://beyamooz.com/sql/101-advanced/265-%D8%B9%D8%A8%D8%A7%D8%B1%D8%AA-inner-join-%D8%AF%D8%B1-sql

sepidehhhhhhh
یک شنبه 05 مهر 1394, 10:58 صبح
وای یعنی استادمون داره روش قدیمی رو بهمون میگه ؟یعنی این روش دیگه منسوخ شده؟ خوب شد ک بهم گفتید.دستتون درد نکنه مثال بالا رو با توضیحات خوبتون یاد گرفتم .اما درباره JOIN کردن در PHP ، باید بگم من دارم یه سایت برای قسمت انتخاب واحد سیستم دانشگاه طراحی می کنم و الان هم می خوام قسمتی رو که کارشناس داره درس ها رو برای انتخاب واحد میزنه تو سایت رو طراحی می کنم ، البته باید بگم که من چند تا جدول مثل جدول استاد، دانشجو ، درس، ارائه و رشته و انتخاب واحد و شهریه دارم حالا می خوام کارمند مشخصاتی مثل کد ارائه، کد درس ، کد استاد ، کد رشته، زمان برگزاری کلاس در هفته، تاریخ امتحان و شهریه درس رو هر کدام از یک جدول مربوطه از طریق دراپ دان لیست انتخاب کنم و همه این اطلاعات رو در جدول ارائه ذخیره کنم آیا این کاری ک من می خوام انجام بدم درسته؟و بعد تا دانشجو بتونه از جدول ارائه عمل انتخاب واحد رو انجام بده و انتخاب واحدش به جدول انتخاب واحد ذخیره بشهآیا اینکارم درسته؟
حالا نمی دونم چطور باید شرط رو روی دراپ دان ها اعمال کنم مثلا برای یک رشته خاص فقط چند استاد خاص باید انتخاب بشن؟
آیا منطق کارم تا اینجا درست؟
ممنون میشم اگه کمکم کنید؟
با تشکر فراوان

sepidehhhhhhh
یک شنبه 05 مهر 1394, 11:25 صبح
ببخشید من چند تا سوال دیگه هم داشتم ، من از یه قالب سایتی خوشم اومده می تونم( یعنی مجازم) هدر و فوتر و رنگ زمینه و کلا همه چیزش رو برای خودم کپی کنم بدون اینکه این قالب رو بخرم؟ و برای سایتم هاست و دامین بخرم( یعنی توی اینترنت آپلودش کنم)
من هر سایتی که می رم نمی تونم کدهاشو ببینم فقط CSS اون رو می بینم نه کدهای PHP، مثلا توی سایت دیجیکالا چطوری می تونم کد های محبوب ترین کالا رو ببینم؟
کد هایی مثل کد عضویت در خبرنامه و کد پخش کننده موسیقی و کد آمار بازدید از سایت و... رو از کجا باید بگیرم؟ باید خودم بنویسمش یا اینکه بخرمش؟بعضی سایتا اینا رو دارن ، رایگان هم می دن ولی توی کدهاشون فقط اسم سایت خودشون هست در حقیقت لینکی هست به سایت خودشون ، برای اونا چه منفعتی داره ک این کارو می کنن؟
با تشکر فراوان از شما

sepidehhhhhhh
دوشنبه 06 مهر 1394, 10:14 صبح
خواهشششش می کنم یکی جوابمو بده ، من توی این رشته مبتدی ام

hamedarian2009
دوشنبه 06 مهر 1394, 16:28 عصر
وای یعنی استادمون داره روش قدیمی رو بهمون میگه ؟یعنی این روش دیگه منسوخ شده؟ خوب شد ک بهم گفتید.دستتون درد نکنه مثال بالا رو با توضیحات خوبتون یاد گرفتم .اما درباره JOIN کردن در PHP ، باید بگم من دارم یه سایت برای قسمت انتخاب واحد سیستم دانشگاه طراحی می کنم و الان هم می خوام قسمتی رو که کارشناس داره درس ها رو برای انتخاب واحد میزنه تو سایت رو طراحی می کنم ، البته باید بگم که من چند تا جدول مثل جدول استاد، دانشجو ، درس، ارائه و رشته و انتخاب واحد و شهریه دارم حالا می خوام کارمند مشخصاتی مثل کد ارائه، کد درس ، کد استاد ، کد رشته، زمان برگزاری کلاس در هفته، تاریخ امتحان و شهریه درس رو هر کدام از یک جدول مربوطه از طریق دراپ دان لیست انتخاب کنم و همه این اطلاعات رو در جدول ارائه ذخیره کنم آیا این کاری ک من می خوام انجام بدم درسته؟و بعد تا دانشجو بتونه از جدول ارائه عمل انتخاب واحد رو انجام بده و انتخاب واحدش به جدول انتخاب واحد ذخیره بشهآیا اینکارم درسته؟
حالا نمی دونم چطور باید شرط رو روی دراپ دان ها اعمال کنم مثلا برای یک رشته خاص فقط چند استاد خاص باید انتخاب بشن؟
آیا منطق کارم تا اینجا درست؟
ممنون میشم اگه کمکم کنید؟
با تشکر فراوان
سوالتون کلی هست و سیستم به این بزرگی رو نمیشه اینجا توضیح داد فقط این راهنمایی رو میکنم با استفاده از Entity Relationship باید ابتدا روی کاغذ جداولتون رو طراحی کنید و ارتباطات بین اونهارو مشخص کنید و در نهایت پایگاه داده تون رو ایجاد کنید برنامه نویسی اون کار ساده ای هست. حالا اگه این مرحله رو به درستی انجام ندادین می تونید تو بخش پایگاه داده کمک بگیرید

hamedarian2009
دوشنبه 06 مهر 1394, 16:41 عصر
ببخشید من چند تا سوال دیگه هم داشتم ، من از یه قالب سایتی خوشم اومده می تونم( یعنی مجازم) هدر و فوتر و رنگ زمینه و کلا همه چیزش رو برای خودم کپی کنم بدون اینکه این قالب رو بخرم؟ و برای سایتم هاست و دامین بخرم( یعنی توی اینترنت آپلودش کنم)
من هر سایتی که می رم نمی تونم کدهاشو ببینم فقط CSS اون رو می بینم نه کدهای PHP، مثلا توی سایت دیجیکالا چطوری می تونم کد های محبوب ترین کالا رو ببینم؟
کد هایی مثل کد عضویت در خبرنامه و کد پخش کننده موسیقی و کد آمار بازدید از سایت و... رو از کجا باید بگیرم؟ باید خودم بنویسمش یا اینکه بخرمش؟بعضی سایتا اینا رو دارن ، رایگان هم می دن ولی توی کدهاشون فقط اسم سایت خودشون هست در حقیقت لینکی هست به سایت خودشون ، برای اونا چه منفعتی داره ک این کارو می کنن؟
با تشکر فراوان از شما
چه مشکلی میخاد داشته باشه کپی کنید خیلی چیزها حتی تو دنیای واقعی کپی هستن
قرار نیست شما کدهای سمت سرور رو ببینید فقط کدهای سمت کلاینت مثل Html , css, js رو میتونید ببینید . برای محبوبترین کالا باید یک فیلد توجدول محصولات قرار بدین که تعداد بازدیدهارو توش ذخیره کنه اونوقت موقع سلکت زدن کافیه اونهایی که بیشترین بازدید رو داشتن مثلا 10 تاشون رو انتخاب کنید و نمایش بدین

کدهای آمار و ... رو هم خودتون می تونید بنویسید و هم کدهای همون سایتها استفاده کنید که پیشنهاد هم همینه از همون کدهای آماده استفاده کنید. منفعتش رو باید از خودشون بپرسید حتما یه سودی از فروش اطلاعاتی که جمع می کنند می برند