PDA

View Full Version : سوال: کمک در مورد فرم ویرایش فایل



bcloob
سه شنبه 21 خرداد 1392, 14:48 عصر
با سلام
در رابطه با ایجاد یک فرم برای ویرایش یک فایل php راهنمایی می خواستم.
من یک فایل با نام article.php دارم که یک متن داخلش نوشته شده.
یک فرم هم آماده کردم برای ویرایش متن داخل این فایل
کدنویسی این فرم باید به چه صورتی باشه که وقتی وارد صفحه ویرایش میشم متن فعلی داخل textarea نمایش داده بشه و بعد از اینکه ویرایشش کردم و گزینه ویرایش متن رو زدم اون متن ویرایش بشه
از اساتید محترم خواهش می کنم من رو راهنمایی کنند خیلی خیلی ممنون میشم...
2 تا عکسم از اون چیزی که می خوام گذاشتم...
تشکر و سپاس

mostafa272
سه شنبه 21 خرداد 1392, 15:26 عصر
خیلی ساده می تونی از توابع file_get_contents و file_put_contents استفاده کنی. برای یادگیری کار با این توابع لینک های زیر رو ببین. مثالهای خوبی داره:

http://www.php.net/manual/en/function.file-put-contents.php

http://php.net/manual/en/function.file-get-contents.php

همین طور هم می تونی از توابع قدیمی fileو fopen و...خلاصه سایر توابع کار با فایل استفاده کنی که تو همین سایت مرجع php راجع بشون توضیح داده.

bcloob
چهارشنبه 22 خرداد 1392, 12:17 عصر
با تشکر از راهنمایی شما من تونستم با fopen این کار رو انجام بدم فقط چنتا سوال دارم...

من این کد رو استفاده کردم که وقتی اجرا میشه فایل منو باز می کنه و کلمه سلام رو بجای محتوای فعلی جایگزین می کنه.

$fb = fopen("article.txt","w+") or die("Error: Can't open the file.");
fwrite($fb,"سلام");

من توی فرمم قسمت textarea به این صورت فایل رو فراخوانی کردم. که توی فرم محتوای فایل رو به کاربر نشون بده.

<textarea cols="62"><?php include("article.txt"); ?></textarea>

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

mostafa272
چهارشنبه 22 خرداد 1392, 14:45 عصر
شما محتوای فایل رو می ریزی تو یه متغیر مثلا output بعد اون رو با دستور echo نمایش میدی (به جای include در کد بالا). حالا هر وقت کاربر دکمه ویرایش رو زد محتوای textarea رو با get یا post دریافت می کنی. مثلا اسم textarea رو گذاشتی content :


if(isset($_POST['content']) and trim($_POST['content'])!="")
{
$output=$_POST['content'];
$fb = fopen("article.txt","w+") or die("Error: Can't open the file.");
fwrite($fb,$output);

}