ডেটটাইম ফর্ম্যাট মাইএসকিউএলে বর্তমান তারিখ .োকান


100

আমার ডাটাবেসে সঠিকভাবে তারিখটি প্রবেশ করতে আমার সমস্যা হচ্ছে।

$date = date('m/d/Y h:i:s', time());

আমি এই ফর্ম্যাটটি ব্যবহার করি এবং এটি সঠিকভাবে প্রতিধ্বনিত হয়, যাইহোক, কখন আমি সন্নিবেশ করি

mysql_query("INSERT INTO table 
(dateposted) 
VALUES ('$date')");

এটি সফলভাবে কাজ করে না বলে মনে হচ্ছে এবং সময়টি রয়ে গেছে 00:00:00 আপনি যদি সমাধানটি সন্ধান করতে পারেন তবে দুর্দান্ত হয়, ধন্যবাদ thanks


4
ডেটপোস্টেড হ'ল ডেটটাইম ফর্ম্যাট।
সিসেটস

উত্তর:


223

আপনি যদি বর্তমান সময়ের সঞ্চয় করতে চান তবে কেবল এমওয়াইএসকিউএল এর ফাংশন ব্যবহার করুন।

mysql_query("INSERT INTO `table` (`dateposted`) VALUES (now())");

এটি করার জন্য যদি আপনার পিএইচপি দরকার হয় তবে ফর্ম্যাটটি এটি ব্যবহার Y-m-d H:i:sকরে দেখুন

$date = date('Y-m-d H:i:s');
mysql_query("INSERT INTO `table` (`dateposted`) VALUES ('$date')");

21
তবে এটি মাইএসকিউএল সার্ভার লোকেল / টাইমজোন ব্যবহার করবে। ইউ এর যদি বিভিন্ন সার্ভারে অ্যাপাচি / পিএইচপি এবং মাইএসকিউএল থাকে এবং সেগুলির মধ্যে একটিতে টাইমজোনটি ভুল সেট থাকে তবে আপনার আলাদা মান হবে।
জেফ_এলিফসন

4
@ জেফ_আলিফসন ঠিক আছে। ব্যবহার UTC_TIMESTAMP()( dev.mysql.com/doc/refman/5.5/en/... ) পরিবর্তে পছন্দ করা হয়NOW()
এজাজ

আমি একই চেষ্টা করেছি তবে আমি 0000-00-00 00:00:00 পাচ্ছি এবং আমার ডেটাটাইপ তারিখের সময়। এই কোন সাহায্য?
ব্যবহারকারী 9437856

Mysql_query () এর পরিবর্তে PDO ব্যবহার করা দুর্দান্ত হবে, তাই না?
দাও



6

NOW()মাইএসকিউএল সারণীতে বর্তমান তারিখ এবং সময় সন্নিবেশ করানোর জন্য ব্যবহৃত হয়। ডেটাটাইপ সহ সমস্ত ক্ষেত্রDATETIME, DATE, TIME & TIMESTAMP এই ফাংশনটির সাথে ভাল কাজ করে।

YYYY-MM-DD HH: মিমি: এসএস

প্রদর্শন:

নিম্নলিখিত কোড ব্যবহার দেখায় NOW()

INSERT INTO auto_ins
(MySQL_Function, DateTime, Date, Time, Year, TimeStamp)
VALUES
(“NOW()”, NOW(), NOW(), NOW(), NOW(), NOW());

5

হিসাবে চিহ্নিত typeকলামটি সেট করুন এবং নিম্নলিখিত কোয়েরিটি চালান:datepostedDATETIME

INSERT INTO table (`dateposted`) VALUES (CURRENT_TIMESTAMP)

2

" ডেটটাইম " প্রত্যাশিত তারিখটি এভাবে তৈরি হবে: ওয়াইওয়াই-এমএম-ডিডি এইচএইচএম: এমএম: এসএস

আপনি dateোকানোর সময় আপনার তারিখটির মতো ফর্ম্যাট করুন।


সুতরাং আমি তারিখটি করব ("ওয়াইওয়াইওয়াই / এমএম / ডিডি এইচএইচ: এমএম: এসএস", সময় ()) ??
সিসেটস

4
না? স্ল্যাশ (/) না করে ড্যাশ ব্যবহার করুন (-)।
জান হানিয়ে

1
     <?php $date= date("Y-m-d");
$time=date("H:m");
$datetime=$date."T".$time;
mysql_query(INSERT INTO table (`dateposted`) VALUES ($datetime));
?>

<form action="form.php" method="get">
<input type="datetime-local" name="date" value="<?php echo $datetime; ?>">
<input type="submit" name="submit" value="submit">


4
স্ট্যাক ওভারফ্লোতে স্বাগতম! ভাল উত্তরগুলি কোড সরবরাহ করার পাশাপাশি ব্যাখ্যা করে । এই কোডটি কীভাবে কাজ করে এবং কেন এটি সর্বোত্তম বিকল্প তা সম্পর্কে একটি ব্যাখ্যা অন্তর্ভুক্ত করতে আপনার উত্তর আপডেট করার বিষয়ে বিবেচনা করুন।
আজান

1

আপনি যদি পিএইচপি থেকে তারিখটি পাস করেন তবে আপনি STR_TO_DATE()মাইএসকিএল ফাংশন ব্যবহার করে যে কোনও বিন্যাস ব্যবহার করতে পারেন । কনডেন্সারকে আপনি এইচটিএমএল ফর্মের মাধ্যমে তারিখটি সন্নিবেশ করিয়ে দিন

$Tdate = "'".$_POST["Tdate"]."'" ;    //   10/04/2016
$Tdate = "STR_TO_DATE(".$Tdate.", '%d/%m/%Y')"  ;  
mysql_query("INSERT INTO `table` (`dateposted`) VALUES ('$Tdate')");

datepostedমাইএসকিউএল হওয়া উচিত dateপ্রকার। বা মাইএসকিএল 00:00:00 যোগ করবে কোনও
ক্ষেত্রে আপনি আরও ভালভাবে তারিখ এবং সময় ডিবিতে সন্নিবেশ করান যাতে আপনি ঘন্টা এবং সেকেন্ডের সাথে গণনা করতে পারেন। ()।

$Tdate=date('Y/m/d H:i:s') ; // this to get current date as text .
$Tdate = "STR_TO_DATE(".$Tdate.", '%d/%m/%Y %H:%i:%s')"  ;  

1

এটিকে সহজ ও দক্ষ করার সর্বোত্তম উপায় হ'ল:

CREATE TABLE table_name (
field1,
..
..
time_updated timestamp default current_timestamp
)

এখন, আপনি যখন টেবিলের মধ্যে একটি সারি প্রবেশ করান, আপনি এই ক্ষেত্রটি ( time_updated) এড়িয়ে যেতে পারেন কারণ এটি ডিফল্ট মান হিসাবে বর্তমান সময়ের সাথে পূরণ করবে


0

আপনার সময় অঞ্চল দিয়ে কেবল ব্যবহার করুন:

date_default_timezone_set('Asia/Kolkata');      
$date=date("Y/m/d h:i:sa");

0

$ তারিখ = তারিখ ('ইয়ামডি এইচ: আই: এস'); টাইপ সহ: 'ডেটটাইম' আমার পক্ষে খুব ভাল কাজ করেছিল কারণ আমি পুরো তারিখ এবং টাইমস্ট্যাম্প মুদ্রণ করতে চেয়েছিলাম ..

$ তারিখ = তারিখ ('ইয়ামডি এইচ: আই: এস'); $ stmtc-> বাইন্ডপ্রাম (2, $ তারিখ);


0

এটি আপনার ডিবি টেবিলের জন্য আপনি কী ডেটাটাইপ সেট করেছেন তার উপর নির্ভর করে।

তারিখ সময় (ডেটাটাইপ)

MYSQL
INSERT INTO t1 (dateposted) VALUES ( NOW() )
// This will insert date and time into the col. Do not use quote around the val
পিএইচপি
$dt = date('Y-m-d h:i:s');
INSERT INTO t1 (dateposted) VALUES ( '$dt' )
// This will insert date into the col using php var. Wrap with quote.

তারিখ (ডেটাটাইপ)

MYSQL
INSERT INTO t1 (dateposted) VALUES ( NOW() )
// Yes, you use the same NOW() without the quotes.
// Because your datatype is set to DATE it will insert only the date
পিএইচপি
$dt = date('Y-m-d');
INSERT INTO t1 (dateposted) VALUES ( '$dt' )
// This will insert date into the col using php var.

সময় (ডেটাটাইপ)

MYSQL
INSERT INTO t1 (dateposted) VALUES ( NOW() )
// Yes, you use the same NOW() as well. 
// Because your datatype is set to TIME it will insert only the time
পিএইচপি
$dt = date('h:i:s');
INSERT INTO t1 (dateposted) VALUES ( '$dt' )
// This will insert time.

-1

আমি বিশ্বাস করি, আপনার ডাটাবেস ফাইল করা টাইপের পাশাপাশি আপনার কোডটি সামান্য কিছুটা পরিবর্তন করা দরকার।

mysql_query("INSERT INTO table (`dateposted`) VALUES ($datetime)");

আশা করি, নিখুঁতভাবে কাজ করবে।


-3

এটা ব্যবহার কর

$date = date('m/d/Y h:i:s', time());

এবং তারপরে MYSQL এ করুন

type=varchar

তারপরে তারিখ এবং সময় সফলভাবে .োকানো হবে


আপনার প্রথম কাজটি প্রশ্নটিতে ব্যবহৃত একই same এবং এই উত্তরটির বাকি 5 বছরের পুরানো প্রশ্ন পুনরায় খোলার ওয়ারেন্ট দেয় না। 5 বছর আগে পোস্ট হওয়া পোস্টগুলির চেয়ে আপনার সমাধান কেন ভাল বলে মনে করেন দয়া করে তা ব্যাখ্যা করুন।
ম্যাথু সিরামিতরো

কারণ পুরানো প্রশ্নে ডেটা টাইপ সম্পর্কে ব্যাখ্যা করা হয়নি
উইকস পান্ডে

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.