بسم الله الرحمن الرحیم
وارد کردن متن در وسط فایل با پی اچ پی-php
فهرست علوم
علوم کامپیوتر
نکات پی اچ پی-php
در فایلهای فدکیة که بیش از ده هزار فایل فعلا هست، در انتهای هر فایل، یک فرم است برای وارد کردن پیشنهادات و مطالب و کمک و ویرایش و... ، که اگر هر کس با نام خودش مطلبی وارد کند، توسط یک فایل php در دو جا ذخیره میشود، یکی در یک فایل html که در هر فایلی از این هزارها فایل، مطلبی اضافه شود، با ذکر خصوصیات و به ترتیب، همگی یک جا در آن فایل ذخیره میشود تا بتوان به راحتی فهمید که چند مطلب اضافه شده، و دیگری در خود فایلی که مورد مطالعه بوده، و در فرم آن مطلبی اضافه شده، بلادرنگ آن متن، در انتهای همان فایل، ظاهر میشود، تا بعدا ویرایش شده و ملحق به متون گردد، و فعلا باقی بماند برای گام بعدی که امکان ویراستاری کردن کدهای html توسط همه است، إن شاء الله تعالی
حال سؤال این است که میخواهیم وقتی مطلبی به انتهای این فایل اضافه میشود، بالای این فرم بیاید، نه زیر آن، یعنی کدی از php میخواهیم که متن را مثلا در ۵ سطر قبل از پایان فایل وارد کند، آیا چنین کدی میشناسید؟
******************************************
حسینی
Friday - 3/4/2020 - 18:52
بررسی
عبدالمجید وافی
Friday - 3/4/2020 - 20:55
سلام علیکم
شاید بشود اینطور هم کد نویسی کرد که همیشه فرم در پایان مطالب باشد در نتیجه هر نظری هم که اضافه شود محل قرار گرفتن فرم در انتهای صفحه باشد.
حسینی
Saturday - 4/4/2020 - 5:30
کد php که دیدم به این شکل است که با دستور file_put_contents نام و متن این باکسها به انتهای فایل اضافه میکند که بنظر روش مناسبی نیست. چون متن جدید رو در انتهای فایل html میگذارد و بعد از </html>
راهی که بنظرم میرسد اینکه اول کل محتویات فایل html با دستور file_get_contents متغییری در پی اچ پی بریزیم
سپس با دستور ریپلیس متن جدید را با <body> به اول فایل اضافه کنیم مثلا این طوری :
echo str_replace("<body>","<body>","<body>
$name
$mydate[weekday] - $mydate[mday]/$mydate[mon]/$mydate[year] - $mydate[hours]:$mydate[minutes]
$url
<pre>$textarea</pre>");
در اتنها متغییر بصورت کامل در فایل html بصورت کامل overwrite شود
حسین سوزنچی
Saturday - 4/4/2020 - 7:12
سلام علیکم
در قسمت ادمین سایت وردپرس یک قسمت گفتگو هست شبیه همین که شما برای هر فایلی گذاشتید
در قسمت گفتگو تنظیماتی دارد که یکی از آنها این است که ترتیب نظرات را از اول نشان دهد یا از آخرین نظری که وارد شده و اینکه تودرتو نشان دهد یا مستقل و ...
شاید با چک کردن کارهای آنجا و مقایسه کدهایی که برای این کارها میگذارد پاسخ سوالتان را بیابید
حسین
Saturday - 4/4/2020 - 11:41
فرمودید: ((در انتها متغیر در فایل html بصورت کامل overwrite شود))
این بصورت کامل overwrite شدن چند مشکل دارد:
۱- همه صفحات کد دقیقا اینطور نیست: <body> بلکه گاهی توضیحات دارد مثل: <body dir="rtl">
۲- بسیاری از صفحات با بسم الله و آیات و فهرستها، شروع میشود و خوب نیست متن الحاقی قبل از آن بیاید
۳- مقصود ما این است که بتوانیم در شماره خاصی از خط ها، متن الحاقی را اضافه کنیم، مثل دستور sed در شل اسکریپت، البته در php هم دستور exec sed داریم ولی هنوز امتحان نکردم.
حسین
Saturday - 4/4/2020 - 12:3
در ارسال مطلب در فرم، اگر بخواهید سر سطر بروید این کد <br> را اضافه کنید سر سطر میرود، و اگر بخواهید تگ و خود کد مشتمل بر دو علامت کوچکتر و بزرگتر را وارد کنید از اینتیتی استفاده کنید که فهرست آن در اینجا آمده:
http://amafhhjm.ir/wp/almobin/Amafhhjm/q-tfs-017-012-it/q-tfs-017-012-it-html-00001.html
حسین
Saturday - 4/4/2020 - 12:10
فرمودید: ((در قسمت ادمین سایت وردپرس یک قسمت گفتگو هست))
ظاهرا وردپرس این کار را با دیتابیس انجام میدهد، نه صرفا با کد php ، و میتوانیم از امکانات دیتابیس استفاده کنیم و میکنیم ان شاء الله اما هدف اصلی، محور قرار دادن بانک نیست.
حسین
Saturday - 4/4/2020 - 14:25
اگر به آدرسی که وردپرس میدهد نگاه کنید هرگاه پس از نام سایت و ریشه، یک علامت ? بگذارد معلوم میشود که از دیتابیس استفاده میکند:
http://amafhhjm.ir/wp/?p=1#comment-4
حسین
Monday - 6/4/2020 - 6:28
((حسینی -- Saturday - 4/4/2020 - 5:30 -- راهی که بنظرم میرسد اینکه اول کل محتویات فایل html با دستور file_get_contents متغییری در پی اچ پی بریزیم سپس با دستور ریپلیس متن جدید را ... به اول فایل اضافه کنیم))
الحمد لله تعالی با راهنمایی شما ، اضافه شدن متن ارسالی، قبل از فرم دریافت، هم اکنون انجام میشود.