آموزش ذخیره اطلاعات در فایل متنی با کدهای PHP

مسیح دیندار
مدیریت
عضو شده: 2021-04-12 14:23:35
2021-05-17 10:42:49

ذخیره اطلاعات توی سایت های کاربرمحور از حیاتی ترین نیازهای یک سایت می تونه باشه! به غیر از سایت هایی که با قالب HTML ساخته شدن، مابقی سایت ها معمولا به دیتابیس نیاز دارند تا اطلاعاتی مثل نام کاربر، اطلاعات وارد شده توسط کاربر و یا بخش های متغیر سایت رو بتونیم داخلش ذخیره کنیم.

ولی بعضی از سایت ها هستند که نیازی به دیتابیس ندارند و یا اطلاعات دم دستی رو میخوان خارج از دیتابیس و در یک فایل متنی داخل فایل منیجر ذخیره کنند. در توابع PHP یک تابع به نام fopen وجود داره که می تونه همین کارو برامون انجام بده! یعنی می تونیم یه سری اطلاعات رو بهش معرفی کنیم و این تابع می تونه داخل یک فایل متنی با فرمت .txt ذخیره کنه و توسط کدهای دیگه ای می تونیم این اطلاعات رو در جای مخصوصی از سایت نمایش بدیم.

برای اینکار ما یک کد HTML فرم نیاز داریم که اطلاعات رو دریافت کنه و توسط متد GET بتونه اطلاعات رو به تابع fopen ما معرفی کنه تا این تابع بتونه کارشو انجام بده.

برای این کار شما باید یک فایل با فرمت php ایجاد کنید و این کد رو داخلش قرار بدید:

<!DOCTYPE html>
<html>
<head>
  <title>ذخیره اطلاعات در فایل متنی</title>
</head>
<body>
  <form method="post">
    اطلاعات را وارد کنید:<br>
    <input type="text" name="textdata"><br>
    <input type="submit" name="submit">
    
  </form>
</body>
</html>
<?php
    if(isset($_POST['textdata']))
    {
    $data=$_POST['textdata'];
    $fp = fopen('data.txt', 'a');
    fwrite($fp, $data);
    fclose($fp);
    }
?>

کد بالا دارای دو قسمت هست. بخش اول کدهای HTML سایت هست که کاربر قراره ببینه و اطلاعاتش رو داخلش وارد کنه. یک فرم ساده با یک فیلد و یک کلید تعریف کردم بالا. فیلد اصلی ما textdata هست و یک کلید که وقتی روش کلیک بشه، تابع fopen اجرا بشه.

بخش بعدی کد قسمت PHP هست که همون تابع اصلی fopen ماست. بر اساس این کد، شما باید در کنار فایلی که برای این صفحه در نظر گرفتید، یک فایل به نام data.txt ایجاد کنید تا این فایل بتونه اطلاعات رو داخلش ذخیره کنه. و در این قسمت بجای textdata باید آی دی فیلدهای داخل فرم رو بهش معرفی کنید. می تونید هرتعداد فیلدکه دارید بهش معرفی کنید.