رفتن به مطلب

راهنمایی در پی اچ پی


mehrabmmp

ارسال‌های توصیه شده

سلام من یه تیبل تو هاست دارم که دو تا فیلد داره اولی date که توش تاریخ مثل 1395/07/04 قرار میگیره و یه فیلد به اسم بولین که توش true یا false قرار میگیره

من یه فایل پی اچ پی میخوام که بیاد تاریخ رو بگیره و اگه تاریخ با این تاریخ فیلد date برابر بود بیاد فیلد بولین رو true بکنه اگه نبود بیاد false کنه

یه جوری تو مایه های مثلا اگه ساعت 7 بود بیا اینکارو بکن ولی این سمت پی اچ پی هستش و تاریخ رو باید از دیتابیس بگیره

ممنون میشم دوستان پی اچ پی کار کمک کنن :give_heart:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 12 ساعت قبل، seven7up گفته است :

سلام

 

کد هاتون رو قرار بدید

سلام 

ممنون که پاسخ دادید

من بلد نبودم چجوری بنویسمش اگه شما یه نمونه بنویسین ممنون میشم

لینک ارسال
به اشتراک گذاری در سایت های دیگر

ببین محراب جان

تا جایی که من مدیونم ، شما باید فایل php رو اجرا کنی تا اجرا بشه و مثه سرویس توی اندروید نیست که با اجرای اولیه ، ران بمونه(ممکنه روشی باشه اما من بلد نیستم)

یه ساعت فعلی رو بهش پست کن

<?php
$con = mysqli_connect('localhost','user','pass','dbname');
$myDate = $_POST["date"];
$result = $con->query("SELECT * FROM tbl WHERE date = '$myDate'");
if($result->num_rows == 1){
$row = $result->fetch_assoc();
if($con->query("UPDATE tbl SET myvalue = 'true' where id = ''.$row["id"].")===true){
echo "is true";
}
}
?>

این کد میاد

اگر فقط و فقط یه دونه زمان با زمانت برابر بود ، میگیره و true میکنه

اگر شکله دیگه ای خواستی ، بگو که اوکی کنیم با هم

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 11 ساعت قبل، shahab.es گفته است :

ببین محراب جان

تا جایی که من مدیونم ، شما باید فایل php رو اجرا کنی تا اجرا بشه و مثه سرویس توی اندروید نیست که با اجرای اولیه ، ران بمونه(ممکنه روشی باشه اما من بلد نیستم)

یه ساعت فعلی رو بهش پست کن


<?php
$con = mysqli_connect('localhost','user','pass','dbname');
$myDate = $_POST["date"];
$result = $con->query("SELECT * FROM tbl WHERE date = '$myDate'");
if($result->num_rows == 1){
$row = $result->fetch_assoc();
if($con->query("UPDATE tbl SET myvalue = 'true' where id = ''.$row["id"].")===true){
echo "is true";
}
}
?>

این کد میاد

اگر فقط و فقط یه دونه زمان با زمانت برابر بود ، میگیره و true میکنه

اگر شکله دیگه ای خواستی ، بگو که اوکی کنیم با هم

 

سلام شهاب جان

ممنون که پاسخ دادی

اما شهاب من از بیسیک هیچی پست نمیکنم

ببین این فایل پی اچ پی باید جوری باشه که وقتی مثلا تو فیلد ما تاریخ فردا رو داریم این پی اچ پی باید بیاد فردا اون فیلد رو ترو کنه که ربطی به بیسیک نداشته باشه

لینک ارسال
به اشتراک گذاری در سایت های دیگر

اینو باید از متخصصای دیتابیس بپرسی

در کل ، یه بار باید اون صفحه ی php باز بشه

میشه تایم اون موقع رو گرفت و چک کرد

اما حتما باید اون فایل رو اجرا کنی

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در در 1395/07/05, 09:22:56، shahab.es گفته است :

اینو باید از متخصصای دیتابیس بپرسی

در کل ، یه بار باید اون صفحه ی php باز بشه

میشه تایم اون موقع رو گرفت و چک کرد

اما حتما باید اون فایل رو اجرا کنی

 

یعنی اگه یه بار اجرا شه درست کار میکنه ؟

اگه اونجوری باشه میشه دستی یه بار اجراش کرد

لینک ارسال
به اشتراک گذاری در سایت های دیگر

ببین محراب جان

یه بار اجرا ، فقط یه بار اون فایل رو اجرا میکنه

مثلا اگه امروز ساعت 10 صبح اجراش کنم ، اون میره و تایم 10 صبح رو چک میکنه

دیگه اگه 10 صبح اجرا شه ، تمام تایمای بعدی رو چک نمیکنه ، یعنی با یه بار اجرا ، تا اخر در حالت اجرا نمیمونه

هر بار اجرا کنی ، میره با تایم همون موقع چک میکنه

امیدوارم متوجه شده باشی

:)

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام

 

امید وارم خوب  باشید

 

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

date("Y-m-d H:i:s");  // معمولا   تاریخ رو یا تایم استمپ یا به این صورت توی دیتا بیس ذخیره میکنند

// برگشتی   تابع فوق به صورت زیر هستش
// 2016-09-27 16:56:09

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

 

یکی از بهترین گزینه ها برای کاربا  تابع true و false توی دیتا بیس استفاده از فیلد با نوع bit  هستش بیت فقط 0 و 1  رو میگیره  و اگر true باشه 1 و flase رو 0  قرار میده

 

من  یک کدی براتون  نوشتم  ساده تر هستش به نظرم میای و کانت میکنی و اگر  مقدار بیشتر از 0  بود میاد بروزرسانی میکنه.

 

<?php


$new = new Mysqli('localhost','user','password','Database') or die('Error Connection');

$current_time = date("Y-m-d H:i:s");
$mktime =  mktime(date("H"), date("i")+20, date("s"), date("m")  , date("d"), date("Y")); // 20 دقیقه بعد رو به صورت تایم استمپ میگیره
$minite_20 = date('Y-m-d H:i:s',$mktime);// 20 دقیقه بعد رو به صورت تاریخ صحیح بر میگردونه

$sql = "SELECT COUNT(time) FROM mytblName where time BETWEEN  '".$current_time."' and '".$minite_20."'"; // میاد و بر اساسشرط کانت میکنه و اگر  شرط برقرار بود عدد 1 رو بر میگردونه  

$Updatesql = "UPDATE mytblName set bit=1 where time BETWEEN  '".$current_time."' and '".$minite_20."'"; // میاد و  بروز رسانی میکنه
if($new->query($sql) > 0)
	$new->query($Updatesql)
	

من این جا اومدم از BETWEEN  توی شرطم استفاده کردم  دلیلش این هستش که  شما میخواید مثلا ساعت 7:30 دقیقه  اجرا کنی به هر مشکلی فایلت  7:35 دقیقه  اجرا میشه خوب اگر از شرط برابری یا همون تکی استفاده میکردی اصلاکدت عمل نمیکنه و  حتی اگر زمانی باشه که باید true بشه  نمیشه دیگه پس با BETWEEN میایم و میگیم زمان  بین 30 تا 50 رو بگیر 20 دقیقه  زدم میتونی 20 رو به هر عددی که در بالا هستش تغییر بدی اگر شرطط بر قرار بود میاد و فیلدت رو به 1 تغییر میده

 

من این جوری متوجه شدم پس اگر بدمتوجه شدم  عذر خواهی میکنم

 

موفق باشید

 

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 13 ساعت قبل، seven7up گفته است :

سلام

 

امید وارم خوب  باشید

 

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


date("Y-m-d H:i:s");  // معمولا   تاریخ رو یا تایم استمپ یا به این صورت توی دیتا بیس ذخیره میکنند

// برگشتی   تابع فوق به صورت زیر هستش
// 2016-09-27 16:56:09

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

 

یکی از بهترین گزینه ها برای کاربا  تابع true و false توی دیتا بیس استفاده از فیلد با نوع bit  هستش بیت فقط 0 و 1  رو میگیره  و اگر true باشه 1 و flase رو 0  قرار میده

 

من  یک کدی براتون  نوشتم  ساده تر هستش به نظرم میای و کانت میکنی و اگر  مقدار بیشتر از 0  بود میاد بروزرسانی میکنه.

 


<?php


$new = new Mysqli('localhost','user','password','Database') or die('Error Connection');

$current_time = date("Y-m-d H:i:s");
$mktime =  mktime(date("H"), date("i")+20, date("s"), date("m")  , date("d"), date("Y")); // 20 دقیقه بعد رو به صورت تایم استمپ میگیره
$minite_20 = date('Y-m-d H:i:s',$mktime);// 20 دقیقه بعد رو به صورت تاریخ صحیح بر میگردونه

$sql = "SELECT COUNT(time) FROM mytblName where time BETWEEN  '".$current_time."' and '".$minite_20."'"; // میاد و بر اساسشرط کانت میکنه و اگر  شرط برقرار بود عدد 1 رو بر میگردونه  

$Updatesql = "UPDATE mytblName set bit=1 where time BETWEEN  '".$current_time."' and '".$minite_20."'"; // میاد و  بروز رسانی میکنه
if($new->query($sql) > 0)
	$new->query($Updatesql)
	

من این جا اومدم از BETWEEN  توی شرطم استفاده کردم  دلیلش این هستش که  شما میخواید مثلا ساعت 7:30 دقیقه  اجرا کنی به هر مشکلی فایلت  7:35 دقیقه  اجرا میشه خوب اگر از شرط برابری یا همون تکی استفاده میکردی اصلاکدت عمل نمیکنه و  حتی اگر زمانی باشه که باید true بشه  نمیشه دیگه پس با BETWEEN میایم و میگیم زمان  بین 30 تا 50 رو بگیر 20 دقیقه  زدم میتونی 20 رو به هر عددی که در بالا هستش تغییر بدی اگر شرطط بر قرار بود میاد و فیلدت رو به 1 تغییر میده

 

من این جوری متوجه شدم پس اگر بدمتوجه شدم  عذر خواهی میکنم

 

موفق باشید

 

 

سلام اقای زبیدی زاده

ممنون که وقت گذاشتین و کمکم کردین

ببینین من فرض کنین تو برنامه یه باتن دارم و این باتن غیر فعال هستش و در تاریخ خودش باید فعال شه

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

اگه دوستان یه راه ساده تر میدونن که چطوری سر وقتش این باتن فعال شه ممنون میشم راهنمایی کنن

لینک ارسال
به اشتراک گذاری در سایت های دیگر

توضیحات اقای زبیدی که عالی بود

ببین ، به نظر من ، با اون اموزش اپدیت دیتابیس افلاین از دیتابیس انلاین

بیا و بگیر هر بار اطلاعات جدیدت رو

یه سرویس هم بذار ران باشه ، هر دیقه بیا همین کار رو با دیتابیس افلاینت بکن

نتتم کم مصرف میشه

چک کردن یه مقدار هم اونقدر زمان بر نیست که برنامه کند شه

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 11 ساعت قبل، shahab.es گفته است :

توضیحات اقای زبیدی که عالی بود

ببین ، به نظر من ، با اون اموزش اپدیت دیتابیس افلاین از دیتابیس انلاین

بیا و بگیر هر بار اطلاعات جدیدت رو

یه سرویس هم بذار ران باشه ، هر دیقه بیا همین کار رو با دیتابیس افلاینت بکن

نتتم کم مصرف میشه

چک کردن یه مقدار هم اونقدر زمان بر نیست که برنامه کند شه

اخه شهاب اونوقت اینترنت کاربر باید روشن باشه و اگه تو اون روز روشن نباشه ممکنه که فعال نشه

پس باید از روش اقای زبیدی زاده استفاده کنم

لینک ارسال
به اشتراک گذاری در سایت های دیگر

از روش اقای زبیدی هم استفاده کنی ، اینترنت روشن نباشه ، از کجا میفهمی که باید اون دکمه رو فعال کنی؟

:fekr::fekr: 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 13 ساعت قبل، seven7up گفته است :

سلام

 

امید وارم خوب  باشید

 

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


date("Y-m-d H:i:s");  // معمولا   تاریخ رو یا تایم استمپ یا به این صورت توی دیتا بیس ذخیره میکنند

// برگشتی   تابع فوق به صورت زیر هستش
// 2016-09-27 16:56:09

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

 

یکی از بهترین گزینه ها برای کاربا  تابع true و false توی دیتا بیس استفاده از فیلد با نوع bit  هستش بیت فقط 0 و 1  رو میگیره  و اگر true باشه 1 و flase رو 0  قرار میده

 

من  یک کدی براتون  نوشتم  ساده تر هستش به نظرم میای و کانت میکنی و اگر  مقدار بیشتر از 0  بود میاد بروزرسانی میکنه.

 


<?php


$new = new Mysqli('localhost','user','password','Database') or die('Error Connection');

$current_time = date("Y-m-d H:i:s");
$mktime =  mktime(date("H"), date("i")+20, date("s"), date("m")  , date("d"), date("Y")); // 20 دقیقه بعد رو به صورت تایم استمپ میگیره
$minite_20 = date('Y-m-d H:i:s',$mktime);// 20 دقیقه بعد رو به صورت تاریخ صحیح بر میگردونه

$sql = "SELECT COUNT(time) FROM mytblName where time BETWEEN  '".$current_time."' and '".$minite_20."'"; // میاد و بر اساسشرط کانت میکنه و اگر  شرط برقرار بود عدد 1 رو بر میگردونه  

$Updatesql = "UPDATE mytblName set bit=1 where time BETWEEN  '".$current_time."' and '".$minite_20."'"; // میاد و  بروز رسانی میکنه
if($new->query($sql) > 0)
	$new->query($Updatesql)
	

من این جا اومدم از BETWEEN  توی شرطم استفاده کردم  دلیلش این هستش که  شما میخواید مثلا ساعت 7:30 دقیقه  اجرا کنی به هر مشکلی فایلت  7:35 دقیقه  اجرا میشه خوب اگر از شرط برابری یا همون تکی استفاده میکردی اصلاکدت عمل نمیکنه و  حتی اگر زمانی باشه که باید true بشه  نمیشه دیگه پس با BETWEEN میایم و میگیم زمان  بین 30 تا 50 رو بگیر 20 دقیقه  زدم میتونی 20 رو به هر عددی که در بالا هستش تغییر بدی اگر شرطط بر قرار بود میاد و فیلدت رو به 1 تغییر میده

 

من این جوری متوجه شدم پس اگر بدمتوجه شدم  عذر خواهی میکنم

 

موفق باشید

 

 

اقای زبیدی زاده چطوری میتونم کرون رو تو هاست فعال کنم

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام

به هاستتون برید  یک بخشی نوشته کرون جاب اون جا فعال کنید توی نت بگردید آموزش زیاد هستش اگر کرون جاب روی هاست شما فعال نیست میونید از سایت های ارئه خدمات کرون استفاده کنید

شما اگر بخواید مثلا قسمتی از  اپ رو باری کاربر فعال کنید باید به این صورت عمل کنید.

این روش بدرد زمانی میخوره که کاربر اینترنتش رو خاموش کرده :

برای هر کاربری به صورت rand یک ایدی تعریف کنید و هر ایدی مختص اون کاربر باشه  میتونید از سریال گوشی کاربر برای این کار استفاده کنید که یونیک هستش خوب حالا شما ایدی رو گرفتید کار بعدی این هستش با آنلاین شدن کاربر میتونید بیاید و یک ریک.ئست به هاستتون بفرستید  خوب اینجا  باید یک جدولی داشته باشید و بیاید بگید که اگر ایدی یا سریال کاربر در دیتا بیس شما ثبت شده بود و این تاریخ بود هم تاریخ و هم سریال یا ایدی رو باید ثبت کنید خوب اگر این ایدی و تاریخ وجود داشت  هیچ کاری نکنه  مثلا تاریخ 17:50 1395/07/07 و سریال 123456789  در دیتا بیس وجود داشت یعنی این که کاربر در این تاریخ  و ساعت این امکان رو فعال کرده حالا اگر وجود نداشت برید قسمت دوم شرط و بگید که  اگر تاریخ  بزرگتر یا مساوی از تاریخ فعلی هستش و امکان باید فعال بشه  اون درخواست رو برای کاربر بفرستید و در دیتا بیس ذخیره کنید.

 

معمولا این کار به وسیله php  کمی سخت هستش چون real-time نیست ولی با نود و آنگولار میشه  چیز حرفه ای نوشت

 

به هر حال امید وارم کمک کنه این  توضیح

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 12 ساعت قبل، shahab.es گفته است :

از روش اقای زبیدی هم استفاده کنی ، اینترنت روشن نباشه ، از کجا میفهمی که باید اون دکمه رو فعال کنی؟

:fekr::fekr: 

ببین شهاب جان

برنامه انلاین هستش و کاربر واسه استفاده کردنش باید اینترنتش رو تو برنامه روشن کنه و اونوقت من میام چک میکنم اگه مقدار 1 بود دکمه رو فعال کنه

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 12 ساعت قبل، seven7up گفته است :

سلام

به هاستتون برید  یک بخشی نوشته کرون جاب اون جا فعال کنید توی نت بگردید آموزش زیاد هستش اگر کرون جاب روی هاست شما فعال نیست میونید از سایت های ارئه خدمات کرون استفاده کنید

شما اگر بخواید مثلا قسمتی از  اپ رو باری کاربر فعال کنید باید به این صورت عمل کنید.

این روش بدرد زمانی میخوره که کاربر اینترنتش رو خاموش کرده :

برای هر کاربری به صورت rand یک ایدی تعریف کنید و هر ایدی مختص اون کاربر باشه  میتونید از سریال گوشی کاربر برای این کار استفاده کنید که یونیک هستش خوب حالا شما ایدی رو گرفتید کار بعدی این هستش با آنلاین شدن کاربر میتونید بیاید و یک ریک.ئست به هاستتون بفرستید  خوب اینجا  باید یک جدولی داشته باشید و بیاید بگید که اگر ایدی یا سریال کاربر در دیتا بیس شما ثبت شده بود و این تاریخ بود هم تاریخ و هم سریال یا ایدی رو باید ثبت کنید خوب اگر این ایدی و تاریخ وجود داشت  هیچ کاری نکنه  مثلا تاریخ 17:50 1395/07/07 و سریال 123456789  در دیتا بیس وجود داشت یعنی این که کاربر در این تاریخ  و ساعت این امکان رو فعال کرده حالا اگر وجود نداشت برید قسمت دوم شرط و بگید که  اگر تاریخ  بزرگتر یا مساوی از تاریخ فعلی هستش و امکان باید فعال بشه  اون درخواست رو برای کاربر بفرستید و در دیتا بیس ذخیره کنید.

 

معمولا این کار به وسیله php  کمی سخت هستش چون real-time نیست ولی با نود و آنگولار میشه  چیز حرفه ای نوشت

 

به هر حال امید وارم کمک کنه این  توضیح

 

سلام

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

لینک ارسال
به اشتراک گذاری در سایت های دیگر

با استفاده از کلاس jdate  سرچ کنید کلاسش پیدا میکنید کلاسش رو توی فایلتون  فراخوانی کنید و به date یک حرف j  اضافه کنید به این صورت jdate  خودش شمسی میکنه

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...