PDA

View Full Version : مبتدی: ارسال متغیر از فایل PHP به HTML



hmd333
دوشنبه 02 دی 1398, 17:21 عصر
سلام و خسته نباشید.
من مشغول طراحی یک سایت هستم و به یه مشکل برخوردم. سایت دارای سه صفحه هستش. به این شکل که یک مقدار از کاربر گرفته میشه و به فایل PHP ارسال میشه.(تا اینجا مشکلی نیست:لبخندساده:). اونجا صحت مقدار ورودی کاربر با دیتابیس (MYSQL) چک میشه و اگر درست باشه کاربر به یک صفحه HTML جدید هدایت میشه(این هم انجام شده:لبخندساده:). حالا مشکلی که دارم اینه که زمانی که کاربر مقدار صحیح رو وارد کرده باشه، یک ویدیو باید در صفحه جدید نمایش داده بشه، ویدیویی که لینکش از همون دیتا بانک بدست اومده. به این شکل که من توی صفحه HTML جدید که کاربر بعد جواب درست بهش منتقل میشه از iframe استفاده کردم که کاربر بتونه ویدیو رو توی همون صفحه ببینه. مشکل اینجاست که من نمیدونم چطور باید اون مقدار خونده شده از MYSQL یا درواقع همون لینک ویدیو از فایل PHP رو در قسمت src تگ iframe وارد کنم. چون فایل PHP و صفحه HTML دو فایل جدا از هم هستند و میخوام که به یه شکلی این مقدار متغیر از فایل PHP به HTML منتقل بشه.
ممنون میشم که منو راهنمایی کنید.

the king
دوشنبه 02 دی 1398, 18:06 عصر
سلام و خسته نباشید.
من مشغول طراحی یک سایت هستم و به یه مشکل برخوردم. سایت دارای سه صفحه هستش. به این شکل که یک مقدار از کاربر گرفته میشه و به فایل PHP ارسال میشه.(تا اینجا مشکلی نیست:لبخندساده:). اونجا صحت مقدار ورودی کاربر با دیتابیس (MYSQL) چک میشه و اگر درست باشه کاربر به یک صفحه HTML جدید هدایت میشه(این هم انجام شده:لبخندساده:). حالا مشکلی که دارم اینه که زمانی که کاربر مقدار صحیح رو وارد کرده باشه، یک ویدیو باید در صفحه جدید نمایش داده بشه، ویدیویی که لینکش از همون دیتا بانک بدست اومده. به این شکل که من توی صفحه HTML جدید که کاربر بعد جواب درست بهش منتقل میشه از iframe استفاده کردم که کاربر بتونه ویدیو رو توی همون صفحه ببینه. مشکل اینجاست که من نمیدونم چطور باید اون مقدار خونده شده از MYSQL یا درواقع همون لینک ویدیو از فایل PHP رو در قسمت src تگ iframe وارد کنم. چون فایل PHP و صفحه HTML دو فایل جدا از هم هستند و میخوام که به یه شکلی این مقدار متغیر از فایل PHP به HTML منتقل بشه.
ممنون میشم که منو راهنمایی کنید.

من php بلد نیستم اما شما می توانید در هر صفحه HTML ای از تگ های <? php?> استفاده کنید، لذا شاید لزومی نداشته باشه که لینک ای منتقل بشه اما در هر صورت اگه لازمه لینک به صفحه دیگری فرستاده بشه استفاده از ارسال های GET و POST و متغیر Session و Cookie در دسترس شما است. و میشه گفت از بین این سه گزینه Session انتخاب بهتری است. در ابتدای هر صفحه ای که قراره در Session مقداری بنویسید یا مقداری ازش بخونید با یک سطر کد php که اضافه خواهید کرد ()session_start رو اجرا می کنید تا دسترسی به Session ها فعال باشه.


<?php session_start(); ?>

بعد لینک ویدئو رو قبل از ارجاع به اون صفحه HTML داخل متغیری مثل SESSION["video"]_$ ثبت می کنید :


<?php
$_SESSION["video"] = yourlink;
?>

و در ابتدای اون فایل HTML باز مجددا در یک سطر کد php فراخوانی ()session_start رو انجام می دهید و بعد در اونجایی از کد HTML که تگ iframe هست با کدی شبیه به این اون مقدار رو در src درج می کنید :


<iframe src="<?php echo $_SESSION['video'] ?>"></iframe>

c0mmander
سه شنبه 03 دی 1398, 09:08 صبح
سلام و خسته نباشید.
من مشغول طراحی یک سایت هستم و به یه مشکل برخوردم. سایت دارای سه صفحه هستش. به این شکل که یک مقدار از کاربر گرفته میشه و به فایل PHP ارسال میشه.(تا اینجا مشکلی نیست:لبخندساده:). اونجا صحت مقدار ورودی کاربر با دیتابیس (MYSQL) چک میشه و اگر درست باشه کاربر به یک صفحه HTML جدید هدایت میشه(این هم انجام شده:لبخندساده:). حالا مشکلی که دارم اینه که زمانی که کاربر مقدار صحیح رو وارد کرده باشه، یک ویدیو باید در صفحه جدید نمایش داده بشه، ویدیویی که لینکش از همون دیتا بانک بدست اومده. به این شکل که من توی صفحه HTML جدید که کاربر بعد جواب درست بهش منتقل میشه از iframe استفاده کردم که کاربر بتونه ویدیو رو توی همون صفحه ببینه. مشکل اینجاست که من نمیدونم چطور باید اون مقدار خونده شده از MYSQL یا درواقع همون لینک ویدیو از فایل PHP رو در قسمت src تگ iframe وارد کنم. چون فایل PHP و صفحه HTML دو فایل جدا از هم هستند و میخوام که به یه شکلی این مقدار متغیر از فایل PHP به HTML منتقل بشه.
ممنون میشم که منو راهنمایی کنید.

اگه اطلاعاتت رو با ajax دریافت میکنی با استفاده از جاوا اسکریپت میتونی این کار رو انجام بدی.

نمونه با jquery:


var url = 'https://google.com'
$('#YOURiframeID').attr('src',url);

ASHKANLAEI
سه شنبه 03 دی 1398, 17:16 عصر
دوست عزیز شما زمانی که داری به صفحۀ html هدایت میشی باید یه آدرس داشته باشی مثل این: file.html
خب شما این رو تغییر بده به file.html?link=hello.mp4
حالا میتونی با رشته ای که در جاوااسکریپت با location.search به دست میاد، به iframe سورس بدی.
دقت کن در این آدرس، location.search بهت میده: "link=hello.mp4?".
شما باید اون رشته رو با ویرایش، به hello.mp4 تبدیل کنی. حالا این کار میتونه با regex یا هر چیز دیگری باشه.
در هر صورت باید یا از php یا js استفاده کنی. اما چون php نیاز به کار های بیشتری داره، بهتره از این راهی که گفتم استفاده کنی.
نمونۀ فایل html:

<iframe id="theFrame"></iframe>
<script>
document.getElementById("theFrame").src = (/\?link\=(.*?)(\&|$)/.exec(location.href))[1];
</script>

sardarn
سه شنبه 03 دی 1398, 23:57 عصر
سلام

یه روش استفاده از دستور include هست. مثلا میتونی داخل فایل index.php پردازش انجام بدی حالا میخاد کد های html از یه صفحه دیگه لود بشه میزنی


include('view-Video.html');

ASHKANLAEI
چهارشنبه 04 دی 1398, 08:15 صبح
سلام

یه روش استفاده از دستور include هست. مثلا میتونی داخل فایل index.php پردازش انجام بدی حالا میخاد کد های html از یه صفحه دیگه لود بشه میزنی


include('view-Video.html');
دوست عزیز اون طور که من متوجه شدم ایشون نمیخوان از کد ها و فایل های php استفاده کنن و درخواستشون در رابطه با html هست:


کاربر به یک صفحه HTML جدید هدایت میشه(این هم انجام شده:لبخندساده:
). حالا مشکلی که دارم اینه که زمانی که کاربر مقدار صحیح رو وارد کرده باشه، یک ویدیو باید در صفحه جدید نمایش داده بشه، ویدیویی که لینکش از همون دیتا بانک بدست اومده. به این شکل که من توی صفحه HTML جدید که کاربر بعد جواب درست بهش منتقل میشه از iframe استفاده کردم که کاربر بتونه ویدیو رو توی همون صفحه ببینه.