سلام،
من PHP کارم و جاوا اسکریپت صفرم،
میخوام یک کد بنویسم که بیاد و هر پنج ثانیه مقادیر یک تگ پاراگراف رو آپدیت کنه
مثلا :
مصرف پردازنده سرور شما : 40 درصد
این 40 درصد هر ثایه تغییر میکنه برای همین تو سرور یک کد PHP نوشتم که با هربار ریکوئست دادن به اون فایل میاد و مصرف پردازنده رو به صورت جیسون میده به من.
یعنی میخوام که اون 40 درصد هر 5 ثانیه آپدیت شه و مقدار جدیدو با ریکوئست به سرورم بگیره به صورت جیسون بگیره.
با کمک دوستانم تونستم کد زیر رو بنویسم اما کار نکرد :
<script src="js/axios.js"></script>
<script type="text/javascript" >
setInterval(function(){
axios.get('https://web.site/index.php').then((respones) => {
document.getElementById("p1").innerHTML = respones.body.s;
});
}, 5000);
</script>
آیدی p1 روی تگ پاراگرافم تو html تنظیم شده.
این کد کار نمیکنه و خطای زیر رو تو قسمت کنسول میده :
Access to XMLHttpRequest at 'https://web.site/index.php' from origin 'http://localhost' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
axios.js:327 GET https://web.site/index.php net::ERRFAILED 200
dispatchXhrRequest @ axios.js:327
xhrAdapter @ axios.js:132
dispatchRequest @ axios.js:935
request @ axios.js:697
Axios.<computed> @ axios.js:718
wrap @ axios.js:1381
(anonymous) @ (index):522
axios.js:863 Uncaught (in promise) Error: Network Error
at createError (axios.js:863)
at XMLHttpRequest.handleError (axios.js:234)
setInterval(() => {
var request = new XMLHttpRequest()
request.open('GET', 'https://web.site/index.php')
request.send()
request.onload = () => {
var pTag = document.getElementById("p1")
var jsonResponse = JSON.parse(request.responseText)
pTag.innerHTML = jsonResponse.s
}
}, 5000);
ببینید این کار میکنه؟
تستش نکردم. اگه اروری داد بگین
setInterval(() => {
var request = new XMLHttpRequest()
request.open('GET', 'https://web.site/index.php')
request.send()
request.onload = () => {
var pTag = document.getElementById("p1")
var jsonResponse = JSON.parse(request.responseText)
pTag.innerHTML = jsonResponse.s
}
}, 5000);
ببینید این کار میکنه؟
تستش نکردم. اگه اروری داد بگین
😅
اون مال وقتی بود که میخواستم فرانت اندو شروع کنم بعد که وسطاش بودم دیدم چقدر سخته و سلیقه میخواد منم سلیقه نداشتم بیخیالش شدم الانم پشیمونم /:
درخت حاضر فقط html خالی بلدم با یکم css
و php پایتون کامل
@abdolrahman آره
Access to XMLHttpRequest at 'https://web.site/index.php' from origin 'http://localhost' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
(index):524 GET https://web.site/index.php net::ERRFAILED 200
@hooman
کاری با موضوع سوال ندارم . ولی اگه میخواید واقعا طراح سایت و برنامه نویسی یک سایت باشید باید در حوزه html , css , js مسلط باشید . اگر الان به مشکل نخورید بعدا به مشکل خواهید خورد
موافقم تا الان دو نفری طراحی سایت میکردیم من php و پایتون و دوستمم فرانت اند css و js و html
الان که اون رفته خیلی سخت میگذره بهم باید هرچه زودتر یاد بگیرم 😅😂
Access to XMLHttpRequest at 'http://1.1.1.1/index.php' from origin 'http://localhost' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
(index):524 GET http://1.1.1.1/index.php net::ERR_FAILED 200
به url سایتی که بهش ریکوئست می فرستی دقت کن که مشکلی نباشه
چون CROS policy مربوط همچین چیزاییه
و اگه نمیخوای کسی ادرس سایتت رو بدونه
https://roocket.ir/discuss/19065#subject-68285
اینو ادیت کن چون توش معلوم😅
اوکی شد ممنون، کد شما درسته و اینکه ارور cros از فایل php مقصد بود براش هدر ثبت نشده بود که با اضافه کردن این کد ها به اول کدای php فایل مقصدم اوکی شد :
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Headers: *");
حالا از کجا فهمیدم مشکلش این بود ؟
اول رفتم یک فایل php ساختم کنار فایل html که توش کد شمارو قرار داده بودم بعد بهش اینطوری به فایلم که داخل سرور بود ریکوئست دادم :
$a = file_get_contents('https://web.site/index.php');
echo($a);
بعد رفتم و داخل کد شما این فایل php که کنار فایل html ایجاد کرده بودم ریکوئست رو دادم و دیدم کار میکنه
و پس از تحقیق داخل گوگل فهمیدم برای فایل مقصد هدر تنظیم نشده که اوکیش کردم
ممنون 🙏
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟