انجمن سایت کلیدستان


رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
ویرایش یک اسکریپت php و mysql

ویرایش یک اسکریپت php و mysql

#5
بنده توضیحاتی را در ادامه می نویسم که یک راهنمای کلی برای اینگونه موارد باشد. اگر همه جزئیات را شرح می دهم برای این است که برای سایر دوستان نیز مفید باشد.
برای آشنایی با ساختار فرم ها (Forms)، دو دسته کلید (دسته بندی) زیر را ببینید :

دسته کلید شماره 146

دسته کلید شماره 227

و به خصوص کلید زیر :

کلید شماره 399

حالا فرض کنیم که بنده یک سری فایل دارم و مطابق آنچه شما گفتید، قصد دارم که یکی از فرم ها و پردازش آن را تغییر بدهم.
ابتدا به سراغ فایل html (یا php) ای می روم که در آن، فرم نمایش داده می شود. با یافتن کدهای فرم (تگ form)، مشخصه action آن را نگاه می کنم :

کد پی‌اچ‌پی:
<form method="post" action="show_text.php"

چون در مشخصه action ، آدرس صفحه ای که پردازش فرم را انجام می دهد، ذکر شده است. به صفحه مورد نظر می روم. معمولا در زبان PHP ، با تابع isset (کلید شماره 429) چک می کنند که اطلاعات فرم به صفحه ارسال شده یا نه. یعنی مثلا یک فیلد (field) از فرم را بررسی می کنند که آیا به صفحه ارسال شده یا نه، اگر ارسال شده باشد، آنگاه کدهای پردازش فرم اجرا می شود.
در این مرحله باید کدهای پردازشی را بررسی کنیم تا ببینیم به چه شکل اطلاعات ذخیره می شوند.

اگر کدها خیلی زیاد باشند، شما می توانید بر اساس کلمات کلیدی که در query های sql به کار می روند، خط های مربوط به قرار دادن اطلاعات در جدول پایگاه داده را بیابید. یعنی چون کلمه INSERT برای قرار دادن یک ردیف جدید در جدول است، کافی است این کلمه را جستجو کرده و ببینید که در چه قسمت هایی از کد به کار رفته است.
برای به روزرسانی ردیفی از جدول هم کلمه UPDATE در query به کار می رود.

اما در مورد حذف تعدادی از فایلدهای فرم، اگر تسلط کامل به کدهای فرم و بخش پردازش آنها پیدا کردید، می توانید آن فیلدهای فرم را کامل حذف کنید و در query های sql هم بخش مربوط به آنها را حذف نمایید، اما اگر به کدها تسلطی نداشتید و با حذف فیلدها، مشکلاتی به وجود می آمد، یک راه حل دیگر این است که آنها را به صورت hidden در بیاورید و یک مقدار دلخواه (تهی) را هم برای آنها تعیین کنید تا صفحه پردازش خطا نگیرد که این فیلدها برای پردازش ارسال نشده اند. برای تبدیل فیلدها به حالت hidden ، کلید زیر را بخوانید :

کلید شماره 457

در مورد فایل هایی با پسوند sql که مثلا فایل install.sql را نام بردید، باید دقت داشته باشید که این فایل ها حاوی query های sql برای اجرا شدن هستند و به شکل کدهای داینامیک php نیستند. منظورم این است که یک سری query های آماده و از قبل تعیین شده هستند و در حین اجرای صفحات، تنها از فایل با پسوند sql فراخوانی شده و دستورات موجود در آنها اجرا می شود (حداقل بنده ندیده ام که به شکل دیگری استفاده شوند، حالا ممکن است مثلا در یک برنامه خاص، دستورات فراخوانی شده و قبل از اجرا، تغییرات و جایگزینی هایی در آنها اعمال شد، ولی در کل، فایل sql برای فراخوانی و اجرا شدن query های از پیش نوشته شده می باشد، اگر دقت کرده باشید، فایل های back up از پایگاه داده با پسوند sql هم دقیقا به همین صورت هستند و اگر یکی از آنها را بررسی کنید، تنها query هایی برای اجرا شدن می باشند). 
از نام فایل که install.sql هم می توان تشخیص داد که در ابتدای نصب اجرا می شود (احتمالا query هایی برای ساخت پایگاه داده و جدل های آن می باشد). بنابراین اگر به دنبال بخش قرار دادن اطلاعات جدید در جدول ها هستید، ابتدا صفحات php را بررسی نمایید. اگر خواستید که ساختار اولیه جدول ها (هنگام ساخت) را تغییر بدهید، انگاه به سراغ فایل های sql بروید و query ها را ویرایش کنید.

Flower
bookbook 
لطفا برای درج کد، از دکمه مخصوص درج کد در ادیتور انجمن استفاده کنید.
در مورد برنامه نویسی، مدیران تنها راهنمایی می کنند و نوشتن برنامه نهایی، به عهده کاربران می باشد (اینجا محلی برای یادگیری است، نه سفارش کدنویسی).
کاربران باید ابتدا خود به خطایابی برنامه بپردازند، نه اینکه به محض دیدن خطا، کدها را در انجمن، copy و paste کرده و از مدیران انتظار بررسی داشته باشند.
پاسخ
 سپاس شده توسط arsalan132


پیام‌های این موضوع
ویرایش یک اسکریپت php و mysql - توسط arsalan132 - ۱۳۹۴/۰۹/۱۰, ۰۲:۵۰ ق.ظ
RE: ویرایش یک اسکریپت php و mysql - توسط admin - ۱۳۹۴/۰۹/۱۰, ۰۸:۲۲ ب.ظ
RE: ویرایش یک اسکریپت php و mysql - توسط arsalan132 - ۱۳۹۴/۰۹/۱۱, ۰۲:۱۰ ب.ظ
RE: ویرایش یک اسکریپت php و mysql - توسط arsalan132 - ۱۳۹۴/۰۹/۱۲, ۰۲:۱۷ ق.ظ
RE: ویرایش یک اسکریپت php و mysql - توسط admin - ۱۳۹۴/۰۹/۱۲, ۰۳:۳۱ ب.ظ
RE: ویرایش یک اسکریپت php و mysql - توسط arsalan132 - ۱۳۹۴/۰۹/۱۲, ۰۶:۴۱ ب.ظ

پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان