ساخت یک فرم با کدنویسی PHP برای دریافت و ذخیره اطلاعات در یک جدول (table) مربوط به یک پایگاه داده
قبلا نحوه ذخیره اطلاعات در جدول مربوط به یک پایگاه داده را شرح دادیم، اما شاید نیاز باشد که این کار را با یک فرم انجام دهیم تا اطلاعاتی که کاربران وارد می کنند (یا حتی خود ما)، درون جدول پایگاه داده ذخیره شود.
فرض کنید یک پایگاه داده با نام kelidestan ساخته ایم که دارای یک جدول با نام students است که دارای دو ستون می باشد. ستون اول، با نام name و از نوع VARCHAR با طول 20 می باشد و ستون دوم با نام mark و از نوع FLOAT می باشد. این اطلاعات را می توانید در شکل زیر که از برنامه phpMyAdmin می باشد نیز مشاهده کنید :
این جدول برای ذخیره نام دانش آموزان و نمره آنها می باشد و حالا ما قصد داریم که نام تعدادی دانش آموز و همچنین نمره آنها را در جدول students ذخیره کنیم. اما می خواهیم برای این منظور، یک فرم طراحی کنیم تا توسط آن فرم، اطلاعات را دریافت کرده و سپس اطلاعات در جدول students از پایگاه داده، ذخیره شود.
ابتدا یک فایل html با نام form.html می سازیم که کدهای فرم درون آن باید نوشته شود. کدهای این فایل را به صورت زیر می نویسیم :
همان طور که مشاهده می کنید، مشخصه action برای تگ form ، برابر با database.php قرار داده شده است و مشخصه method نیز به صورت post انتخاب گردیده است. معنی این دو انتخاب این است که اطلاعات وارد شده توسط کاربر، با روش post برای فایل database.php ارسال خواهد شد تا این فایل PHP ، پردازش های لازم را بر روی اطلاعات وارد شده، انجام دهد. دقت کنید که چون قبل از نام فایل database.php ، هیچ مسیری مشخص نشده است، بنابراین باید هر دو فایل form.html و database.php ، درون یک فولدر قرار داشته باشند.
شکل فرم به صورت زیر است :
که باید در قسمت name ، نام دانش آموز و در قسمت mark ، نمره دانش آموز را بنویسیم و سپس بر روی گزینه submit کلیک کنیم (البته نه فعلا، بلکه زمانی که فایل PHP لازم برای پردازش اطاعات دریافتی را نوشته باشیم).
کدهای فایل database.php را به صورت زیر می نویسیم (این فایل اطلاعات ورودی فرم را دریافت کرده و در جدول student از پایگاه داده kelidestan ذخیره خواهد کرد) :
اکنون می خواهیم اطلاعات یک دانش آموز را در جدول پایگاه داده، ذخیره کنیم. نام hamid soleimani و نمره 18 را در فرم وارد کرده و سپس بر روی گزینه Submit کلیک می کنیم.
اکنون باید ببینیم که آیا اطلاعات وارد شده، در پایگاه داده ذخیره شده است یا خیر. در برنامه phpMyAdmin ، اطلاعات جدول student را بررسی می کنیم :
مشاهده می کنید که اطلاعات وارد شده، به جدول student افزوده شده است.
چنانچه بخواهیم همین کار را با mysqli انجام بدهیم (به جای mysql)، باید کدهای زیر را بنویسیم :
با سلام...
من همه ی کارهاربو انجام دادم فقط به جای mark از age استفاده کردم...وقتی به صفحه ی databese وارد میشه این پیغامو میده
Access denied for user 'root'@'localhost' (using password: YES)
مشکل چیه؟
لطفا ایمیل کنید
سلام.
باید مشخصات کاربر دارای مجوز دسترسی به پایگاه داده را تغییر بدهید (در کدها، آنها را به صورت نمادین نوشته ایم و شما باید نام کاربری و رمز عبور مربوط به خود را در کدها بنویسید).
یعنی در خط زیر از کدها :
یا اگر از mysqli استفاده کرده اید، باید خط زیر از کدها را تغییر بدهید :
سلام
رمز و نام کاربری دیتابیس رو از کجا باید ببینیم
سلام در بین سایت هایی که دیدم بهترین و کامل ترین سایت را دارید خیلی ممنون.
اطلاعاتتون خیلی به دردم خورد
سپاس از سایت مفید شما
استفاده کردم
موفق باشید
سلام من تمام اون کارای که شما گفته بودین رو انجام دادم و ی چندتا فیلد خودم اضافه کردم ولی این ارور رو میده
لطفا راهنماییم کنید
سلام.
مطمئن شوید که ساختار کدهای PHP را به درستی نوشته اید، چون به نظر می آید که خود کد PHP به عنوان یک متن ساده در خروجی صفحه نمایش داده شده، که این مورد معمولا زمانی اتفاق می افتد که ساختار کدهای PHP به درستی نوشته نشده باشد، مثلا عبارت ابتدایی کدهای PHP حذف شده باشد، یعنی عبارت زیر :
بنابراین ابتدا یک کد PHP ساده را در صفحه مورد نظر اجرا کنید و بعد که از اجرای صحیح آن مطمئن شدید، به سراغ کدهای مورد نظر رفته و ببینید که چه بخشی از ساختار اصلی کدهای PHP ، به درستی نوشته نشده.
سلام ممنون از سایت خوبتون
لطفا ساخت جدول با توجه به نوع داده فایل اکسل هم قرار بدین!
یعنی نوع داده هرستون تشخیص بده و بعد جدول با توجه به نوع داده های فایل بسازه
اگه امکانش هست قرار بدین یا راهنمایی بکنید
خیلی ممنون
با سلام من همه کارهایی که هایی که گفته بودید را انجام دادم ولی name و mark ذخیره نشده است name وmark را که پر میکنم و رو submit query میزنم یه پنحره ای باز میشه که دکمه open و cansel داره open رو که میزنم میگه که میخای رو چه برنامه ای باز کنی
هرکاری میکنم تو جدول students سیو باید چیکار کنم ممنون.
وای خدا، مرسی واقعا، تنها سایتی یک آموزش کامل و سالم گذاشته بود شما بودید توی آخرین لحظه به دادم رسیدید. امیدوارم هرچه بیشتر پیشرفت کنید.
سلام.
اگه بخواهیم یه فرم دیگه هم مثل همین فرم داشته باشیم و وقتی اسم حمید سلیمانی را میزنیم بلافاصله نمره 18 را نشان بدهد باید چیکار کنیم
اگه میشه بگین پروژه نوبت دوم مدرسه خیلی ممنون میشم اگه بگین
سلام از کد زیر استفاده کن طوری نوشتم که زیاد گیج کننده نباشه..
سلام وقت بخیر من تمام این کد ها رو نوشتم ولی برام در پاگاه داده ذخیره نمی کنه اگه امکانش هست راهنمایی کنید
سلام ببینید اگه برای دیتابیس خود پسوردی ندارید در قست پسورد 1234567 رو پاک کنید و خالی بزارید اسم دیتابیستونم بررسی کنید
سلام خسته نباشید من همه این کارها رو انجام دادم در آخر وقتی روی دکمه میزنم این خطا رو می ده
Error: Call to undefined function mysql_connect() in C:\wamp64\www\s\database.php on line 2
سلام محترم من یک مشکل دارم
یک پروژه ویب کار میکنم یک مشکل دارم گفتم اگر میشه کمی رهنمایی هم کنید .
در php ما چگونه از سه تا چهار تیبل را در یک فورم دیتا دریافت کنیم؟
سلام خسته نباشید من تمام مراحل رل مو به مو رفتم
ولی در خروجی کد php را نشان میده
سلام.
ابتدا در یک فایل php دیگر (فایلی که دارای پسوند php باشد)، یک کد ساده PHP را نوشته و بررسی کنید که به درستی اجرا می شود یا خیر، تا مطمئن شوید که اجرای کلی کدهای PHP با مشکلی روبرو نیست.
دقت کنید که حتما بر اساس آموزش های اولیه PHP ، نکات محتلف رعایت شده باشد. مثلا فایل php را اگر توسط شبیه ساز سرور (مثل نرم افزار WampServer) در کامپیوتر خود اجرا می کنید، حتما در پوشه مشخص شده توسط آن شبیه ساز قرار گرفته باشد، نه در محل های دیگر از کامپیوتر که در آنها شبیه ساز عمل نمی کند.
چک کنید که حتما پسوند فایل های دارای کد PHP برابر php باشد، مثلا index.php یک فایل با پسوند php است.
همچنین دقت کنید که حتما در ویندوز کامپیوتر شما تعیین شده باشد که پسوند فایل ها نمایش داده شوند، چون ممکن است شما نام فایل را به index.php تغییر دهید، اما چون ویندوز، پسوند فایل ها را نمایش نمی دهد (اگر در تنظیمات ویندوز تعیین شده باشد)، ممکن است نام کامل فایل برابر index.php.html یا مثلا index.php.txt باشد که باعث می شود اجرای کدهای PHP صورت نگیرد.
علاوه بر این دقت کنید که علامت های ابتدا و انتهای کدهای PHP که شروع و پایان کدهای PHP را تعیین می کنند، به درستی نوشته شده باشند، زیرا تغییر حتی یکی از کاراکترهای آنها می تواند باعث شود که کدهای PHP اجرا نشوند و صرفا در خروجی نمایش داده شوند.
سلام عالی بود فقط یک مشکل وقتی اطلاعات وارد می کنم و روی ارسال میزنم خطای زیر نمایش میده
No database selected
چطوری باید دیتابیس انتخاب کنم؟
من یک سوال دارم می خواهم در صورت امکان راهنماییم کنید لطفا" من یک برنامه کد نویسی (فرم سازی در اکسل یا ورد ) درست می کنم ولی نمی دانم چگونه وکجا باید ذخیره کنم وچگونه وقتی می خواهم اجرا کنم تا مثلا" اطلاعات را داخلش ثبت کنم لطفا راهنماییم بفرمایید متشکر از شما