ช่วยด้วยครับ จนปัญญาจริงๆๆ

สำหรับผู้ที่ เริ่มต้น Programming - PHP มีอะไร แนะนำ หรือข้อสงสัยต้องบอร์ด นี้ คนที่มีความรู้ แบ่งปันคนอื่นบ้างนะ ปัญหาการเขียนโปรแกรม แบบ OOP Session Cookies php network

Moderator: mindphp, ผู้ดูแลกระดาน

ภาพประจำตัวสมาชิก
suree
PHP Newbie
PHP Newbie
โพสต์: 5
ลงทะเบียนเมื่อ: 01/01/1970 7:00 am

ช่วยด้วยครับ จนปัญญาจริงๆๆ

โพสต์ที่ยังไม่ได้อ่าน โดย suree »

ผมเขียนโค้ดนำข้อมูลจาก msaccess มาแสดงผล ปรากฏว่า ตรง วดป มันแสดง เป็นปี ค.ศ. แล้วแสดงเวลาด้วย พอให้ออก วดป มันกลับไม่แสดงผล ผมเขียนโค้ดอย่างนี้ครับ
echo "<td align=center>","เลขที่","</td>";
echo "<td align=center>","คำนำหน้า","</td>";
echo "<td align=center>","ชื่อ","</td>";
echo "<td align=center>","นามสกุล","</td>";
echo "<td align=center>","วันเดือนปีเกิด","</td>";
do {
echo "</tr>";
for($I=1;$I<=$nf;$I++){
if ($I == 5) {
$a = (odbc_result($rn,$I));
// $a = date('Y',$a);
// $a = $a+543 ;
// print date("d.m.Y",$mk1);
echo "<td>",$a,"</td>";
// $a = $b;
}
else {
echo "<td>",odbc_result($rn,$I),"</td>";
}
}
echo "</tr>";
}
while(odbc_fetch_Row($rn));
echo "</table>";
?>

ใครรู้วิธีแก้ ช่วยทีครับ
อีกเรื่องนะครับ อยากให้มันแสดง เป็น วดป เป็น ปี พศ ด้วย ครับ ช่วยที
ทำมาเป็น พันๆๆรอบแล้ว จนปัญญาจริงๆๆ
ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41251
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

$nf มาจากไหนครับ แล้ว ข้อมูล เก็บ ไว้ ยังไง
while(odbc_fetch_Row($rn)); ใช้เพื่ออะไร
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ภาพประจำตัวสมาชิก
suree
PHP Newbie
PHP Newbie
โพสต์: 5
ลงทะเบียนเมื่อ: 01/01/1970 7:00 am

ใช้เรียก ตาราง ใน msaccess มาใช้งานครับ

โพสต์ที่ยังไม่ได้อ่าน โดย suree »

ใช้เรียกตาราง ที่เราต้องการ มาแสดงผลครับ โค้ดทั้งหมดเป็นแบบนี้ครับ เมื่อกี้ไฟดับ เลยโพสใหม่ ตอบกระทู้ อาจซ้ำกันนะครับ
<?php
$dsn = "phptbhdb";
$uid ="";
$pwd = "";
$fn = odbc_connect($dsn,$uid,$pwd);
$sql= "select id_card ,prename,fname,lname,birthdate from person";
//$sql= "select * from person";
$rn = odbc_exec($fn,$sql);
$nf = odbc_num_fields($rn);
$nr = odbc_num_rows($rn);
echo "<table border = 1><tr>";
//for($I = 1;$I <=$nf;$I++){
//echo "<td>",$I,".",odbc_field_name($rn,$I),"</td>";
//}
echo "<td align=center>","เลขที่","</td>";
echo "<td align=center>","คำนำหน้า","</td>";
echo "<td align=center>","ชื่อ","</td>";
echo "<td align=center>","นามสกุล","</td>";
echo "<td align=center>","วันเดือนปีเกิด","</td>";
do {
echo "</tr>";
for($I=1;$I<=$nf;$I++){
if ($I == 5) {
$a = (odbc_result($rn,$I));
// $a = date('Y',$a);
// $a = $a+543 ;
// print date("d.m.Y",$mk1);
echo "<td>",$a,"</td>";
// $a = $b;
}
else {
echo "<td>",odbc_result($rn,$I),"</td>";
}
}
echo "</tr>";
}
while(odbc_fetch_Row($rn));
echo "</table>";
?>
ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41251
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

mixed odbc_result ( resource result_id, mixed field )
Returns the string contents of the field, FALSE on error, NULL for NULL data, or TRUE for binary data.

odbc_fetch_row() fetches a row of the data that was returned by odbc_do() / odbc_exec(). After odbc_fetch_row() is called, the fields of that row can be accessed with odbc_result().

ข้อมูล field birthdate เก็บ ไว้ อย่างไร
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ภาพประจำตัวสมาชิก
suree
PHP Newbie
PHP Newbie
โพสต์: 5
ลงทะเบียนเมื่อ: 01/01/1970 7:00 am

โพสต์ที่ยังไม่ได้อ่าน โดย suree »

mindphp เขียน:mixed odbc_result ( resource result_id, mixed field )
Returns the string contents of the field, FALSE on error, NULL for NULL data, or TRUE for binary data.

odbc_fetch_row() fetches a row of the data that was returned by odbc_do() / odbc_exec(). After odbc_fetch_row() is called, the fields of that row can be accessed with odbc_result().

ข้อมูล field birthdate เก็บ ไว้ อย่างไร


เก็บเป็น date ครับ แต่เป็น ปี คศ
ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41251
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

ดึง ข้อมูล จาก field มาได้ หรือยังครับ
ข้อมูลออกมาเป็น อะไร
แล้ว
เก็บเป็น date ครับ แต่เป็น ปี คศ.หมาย ความ ว่าไง ครับ
รูปแบบ ของ ข้อมูล เป็น อย่าง ไร
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ภาพประจำตัวสมาชิก
suree
PHP Newbie
PHP Newbie
โพสต์: 5
ลงทะเบียนเมื่อ: 01/01/1970 7:00 am

โพสต์ที่ยังไม่ได้อ่าน โดย suree »

เก็บเป็น date ครับ แต่เป็น ปี คศ.หมาย ความ ว่าไง ครับ
รูปแบบ ของ ข้อมูล เป็น อย่าง ไร[/quote]

คืองี้ครับ ในแอค เซส รูปแบบฟิลนี้ เป็น DATE/time ซึ่งเป็นแบบ long date เวลาเราเข้าไปดูข้อมูลจะเห็น เช่น 1/7/1993 (ว ด ป) ถ้าผมรับมาแบบที่ผมเขียนโค้ดใหดู้ เอามาโชว์เลย PHP จะ โชว แบบนี้ ครับ 1993-07-01 00:00:00 แต่พอผมใช้คำสั่งแบบที่ผม remark ไว้ มันกลับแสดงผลไม่ได้ครับ
ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41251
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

ถ้าดึง ข้อมูลออกจาก db ได้แล้ว
ก็ ใช้ วิธี แยก string ออก นะครับ
เช่น ถ้า ข้อมูล เป็น
1993-07-01 00:00:00
จะเห็น ว่า มันมี ช่องว่าง อยู่ระหว่าง
1993-07-01 กับ 00:00:00
เราก็ ใช้ ช่องว่า เป็น ตัวแยก ออก
จะได้
1993-07-01
เราก็ แยก 1993-07-01 ออก เป็น ชุดๆ ด้วย "-" อีกที ก็ จะได้ วัน แยกจาก เดือน แยกจากปี
แล้ว เอา ปี มาบวก 543 นะครับ

function ที่ใช้คือ
https://www.mindphp.com/modules.php?name ... nt&tid=342
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ภาพประจำตัวสมาชิก
suree
PHP Newbie
PHP Newbie
โพสต์: 5
ลงทะเบียนเมื่อ: 01/01/1970 7:00 am

โพสต์ที่ยังไม่ได้อ่าน โดย suree »

[quote="mindphp"]ถ้าดึง ข้อมูลออกจาก db ได้แล้ว
ก็ ใช้ วิธี แยก string ออก นะครับ
เช่น ถ้า ข้อมูล เป็น
1993-07-01 00:00:00
จะเห็น ว่า มันมี ช่องว่าง อยู่ระหว่าง
1993-07-01 กับ 00:00:00
เราก็ ใช้ ช่องว่า เป็น ตัวแยก ออก
จะได้


ขอบคุณครับที่ช่วยแนะนำ แต่ปัญหาที่ผมปวดหัวคือว่า ตามที่เขียนโค้ดนะครับ
ถ้าให้โชว์ ว ด ป โดยไม่แปลง อะไรเลย มันโชว์ข้อมูลได้ถูกต้องครับ
พอเอา ว ด ป มาแปลงด้วย แบบวิธีดังกล่าว มันโชว์วันที่ผิดหมดเลยครับ
ช่วยอีกทีนะครับ คือมันโชว์ วดป ของ เรคคอดแรก แล้วมันก็เอาของ เรคคอดแรกไปใส่ให้ เรคคอดอื่นหมดเลย
ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41251
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

ลอง แบบนี้ ครับ
while($row = odbc_fetch_Row($rn)) {
print_r($row); // หรือ echo $row[0] ,$row[1],...
}
เป็น การ fetch ค่าจาก result ใส่ตัวแปล array ในที่นี้ชื่อ $row
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ตอบกลับโพส

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 126