Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > ช่วยดูโค๊ดนี้ให้หน่อยครับผมต้องการให้แสดงว่า New เมื่อมีการตั้งกระทู้ใหม่



 

ช่วยดูโค๊ดนี้ให้หน่อยครับผมต้องการให้แสดงว่า New เมื่อมีการตั้งกระทู้ใหม่

 



Topic : 091313



โพสกระทู้ ( 30 )
บทความ ( 0 )



สถานะออฟไลน์




ช่วยดูโค๊ดนี้ให้หน่อยครับผมต้องการให้แสดงข้อความว่า New เมื่อมีการตั้งกระทู้ใหม่และแสดงแค่1วันแล้วข้อความหายไปครับ

#ฟังก์ชันแสดงวันเวลา

Code (PHP)
function ThaiDatesale($InputDate)
{
global $ThaiMonth;
$day=substr($InputDate,8,2);
$month=substr($InputDate,5,2);
$month=(int)$month -1;
$year=substr($InputDate,0,4);
$year=$year+543;
$month=$ThaiMonth[$month];
$thaidatenew=
$thaidatenew= (int)$day." ".$month." ".$year;
return $thaidatenew;
}


............................................................................................................
#ส่วนเว็บบอร์ดที่แสดงวันที่่

<?=ThaiDatesale($data2[q_date]);?> //แสดงวันที่เมื่อตั้งกระทู้



Tag : PHP







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2013-02-22 21:46:07 By : youfishing View : 903 Reply : 10
 

 

No. 1



โพสกระทู้ ( 4,169 )
บทความ ( 7 )

Hall of Fame 2012

สถานะออฟไลน์


$InputDate มีค่าในลักษณะใดครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-22 21:52:26 By : Ex-[S]i[L]e[N]t
 


 

No. 2



โพสกระทู้ ( 30 )
บทความ ( 0 )



สถานะออฟไลน์


#ฟังก์ชันแสดงวันเวลา

Code (PHP)
$ThaiMonth=array("มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม");
function ThaiDate($InputDate)
{
global $ThaiMonth;
$day=substr($InputDate,6,2);
$month=substr($InputDate,4,2);
$month=(int)$month -1;
$year=substr($InputDate,0,4);
$year=$year+543;
$month=$ThaiMonth[$month];
echo (int)$day." ".$month." ".$year;
}


function ThaiDatesale($InputDate)
{
global $ThaiMonth;
$day=substr($InputDate,8,2);
$month=substr($InputDate,5,2);
$month=(int)$month -1;
$year=substr($InputDate,0,4);
$year=$year+543;
$month=$ThaiMonth[$month];
$thaidatenew=
$thaidatenew= (int)$day." ".$month." ".$year;
return $thaidatenew;
}

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-22 22:02:15 By : youfishing
 

 

No. 3



โพสกระทู้ ( 4,169 )
บทความ ( 7 )

Hall of Fame 2012

สถานะออฟไลน์


Code (PHP)
function ThaiDatesale($InputDate)
{
global $ThaiMonth;
$day=substr($InputDate,8,2);
$month=substr($InputDate,5,2);
$standmonth=$month;
$month=(int)$month -1;
$year=substr($InputDate,0,4);
$year=$year+543;
$month=$ThaiMonth[$month];
$Ymd=date("Y-m-d");
$thaidatenew= (int)$day." ".$month." ".$year;

$DateDiff=DateDiff($year."-".$standmonth."-".$day;
$now=date("y-m-d");
$DiffNow=DateDiff($now);
if($DateDiff==$DiffNow){
   echo $Status="New";
}else{
  echo $Status="";
}
return $thaidatenew.$Status;
}


ลองดูครับ


ประวัติการแก้ไข
2013-02-22 22:20:26
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-22 22:19:37 By : Ex-[S]i[L]e[N]t
 


 

No. 4



โพสกระทู้ ( 30 )
บทความ ( 0 )



สถานะออฟไลน์


ขอบคุณครับเดี๋ยวลองดูครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-22 22:23:10 By : youfishing
 


 

No. 5



โพสกระทู้ ( 30 )
บทความ ( 0 )



สถานะออฟไลน์


ไม่ได้ครับ
function ThaiDatesale($InputDate)
{
global $ThaiMonth;
$day=substr($InputDate,8,2);
$month=substr($InputDate,5,2);
$standmonth=$month;
$month=(int)$month -1;
$year=substr($InputDate,0,4);
$year=$year+543;
$month=$ThaiMonth[$month];
$Ymd=date("Y-m-d");
$thaidatenew= (int)$day." ".$month." ".$year;

$DateDiff=DateDiff($year."-".$standmonth."-".$day; // eror บรรทัดนี้ครับ
$now=date("y-m-d");
$DiffNow=DateDiff($now);
if($DateDiff==$DiffNow){
   echo $Status="New";
}else{
  echo $Status="";
}
return $thaidatenew.$Status;
}

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-22 23:16:20 By : youfishing
 


 

No. 6



โพสกระทู้ ( 1,819 )
บทความ ( 20 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Facebook

ที่ error เพราะ DateDiff() ไม่ใช่ฟังก์ชั่นของ PHP
แต่เป็นฟังก์ชั่นที่เป็นบทความหนึ่งของ thaicreate
จึงไม่มีฟังก์ชั่นนี้อยู่โดยธรรมชาติครับ




$InputDate เป็น ชนิด DATE หรือ DATETIME ที่อ่านมาจาก MySQL ใช่ไหมครับ

แนะนำให้ใช้ DATEDIFF() ของ MySQL เลยครับ
ฟังก์ชั่นนี้ให้ค่าคืนกลับมาเป็นจำนวนวันที่ต่างกัน
SELECT ออกมาโดยเทียบกับ NOW()
แล้วทำให้เป็น boolean โดยเปรียบเที่ยบว่าค่าที่คืนกลับมามากกว่า 1 หรือเปล่า
และกำหนดให้เป็นอีกคอลัมน์นึง (ในที่นี้คือ is_new)

เช่น

ตัวอย่าง
SELECT (DATEDIFF(NOW(), `your_date_column`) > 1) AS `is_new`  FROM `your_table`


แล้วตรวจจากคอลัมน์ดังกล่าวเอาครับ ว่าเป็นจริงหรือเท็จ ถ้าจริง ก็แสดงคำว่า New
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-23 04:59:11 By : cookiephp
 


 

No. 7



โพสกระทู้ ( 30 )
บทความ ( 0 )



สถานะออฟไลน์


ได้แล้วครับ ผมใช้คำสั่ง แบบนี้ครับ
<? $current_server_time = date("Y")."-".date("m")."-".date("d")?>
<?
$date0=($data2[q_date]);
     
     //echo ( strtotime($current_server_time) - strtotime($date0) ) / ( 60 * 60 * 24 ); // 7
   $diff = ( strtotime($current_server_time) - strtotime($date0) ) / ( 60 * 60 * 24 );  
//โชว์ new
if($diff > 0){
   //echo "";
}else{
  
echo" <img src=img/new-icon.gif>";
}

?>



ขอบคุณมากครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-23 15:44:37 By : youfishing
 


 

No. 8



โพสกระทู้ ( 1,819 )
บทความ ( 20 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Facebook

โค้ดซ้ำซ้อนมากครับ ไม่แนะนำเลย

<?
// ตรงนี้
$current_server_time = date("Y")."-".date("m")."-".date("d")
// ใช้แค่ $current_server_time = date("Y-m-d") ก็ได้
// แต่จริงๆ ไม่ต้องทำแบบนั้นเพราะถัดจากนี้คุณก็เอามันมาแปลงกลับเป็น time อยู่ดี
?>
<?
$date0=($data2[q_date]);
     
     //echo ( strtotime($current_server_time) - strtotime($date0) ) / ( 60 * 60 * 24 ); // 7
   $diff = ( strtotime($current_server_time) - strtotime($date0) ) / ( 60 * 60 * 24 );  
//โชว์ new
if($diff > 0){
   //echo "";
}else{
  
echo" <img src=img/new-icon.gif>";
}

?>



เราทำได้ง่ายๆ สั้นๆ เลยครับ
<?php
// time() ให้เวลาปัจจุบันกลับมาเป็นวินาที
// strtotime() แปลงเวลาในรูปแบบสตริงให้เป็นวินาที
// ดังนั้นเราแค่เอาสองค่านี้มาลบกัน แล้วตรวจว่าช่วงห่างอยู่ใน 86400 วินาทีหรือไม่
// เพราะใน 1 วันมี 86400 วินาที
if (time() - strtotime($data2['q_date']) < 86400) {
    echo '<img src="img/new-icon.gif" />';
}
?>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-24 18:53:42 By : cookiephp
 


 

No. 9



โพสกระทู้ ( 30 )
บทความ ( 0 )



สถานะออฟไลน์


ขอบคุณครับสำหรับคำแนะนำ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-24 20:04:01 By : youfishing
 


 

No. 10



โพสกระทู้ ( 30 )
บทความ ( 0 )



สถานะออฟไลน์


[head][/head]
<?php
// time() ให้เวลาปัจจุบันกลับมาเป็นวินาที
// strtotime() แปลงเวลาในรูปแบบสตริงให้เป็นวินาที
// ดังนั้นเราแค่เอาสองค่านี้มาลบกัน แล้วตรวจว่าช่วงห่างอยู่ใน 86400 วินาทีหรือไม่
// เพราะใน 1 วันมี 86400 วินาที
if (time() - strtotime($data2['q_date']) < 86400) { 
    echo '<img src="img/new-icon.gif" />';
}
?>


ถ้าเรากำหนดให้ (time() - strtotime($data2['q_date']) ให้น้อยกว่า 1 วัน หรือ 86400 ทำได้ไหมครับ

ลองใส่ (time() - strtotime($data2['q_date']) < 43200) เวลาตั้งกระทู้ใหม่จะไม่แสดง New
ต้องใช้หลักการอะไรครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-25 07:07:07 By : youfishing
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ช่วยดูโค๊ดนี้ให้หน่อยครับผมต้องการให้แสดงว่า New เมื่อมีการตั้งกระทู้ใหม่
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 05
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่