หัวข้อ: ถามปัญหา PHP หน่อยคับ เกี่ยวกับ array เริ่มหัวข้อโดย: giffary ที่ 14 ธันวาคม 2009, 21:53:33 คือผมต้องการเก็บข้อมูลบุคคลลงใน array คับ
โดยข้อมูลที่ต้องการเก็บมีลักษณะแบบนี้ 1. ประกอบด้วยข้อมูล 3 อย่าง คือ humanId HumanName HumanPoint 2. สามารถมี human ได้หลายคนครับ แต่ละคนที่ Id name point ที่ต่างกัน เช่น
3. ผมสามารถอัพเดทข้อมูลของแต่ละคนได้คับ เช่นอยากให้ point ของ Tom เป็น 5 ไรอย่างนี้คับ 4. ข้อมูลผมนำมาใส่ผมจะดึงออกมาจาก Database ก่อนนะคับ 5. ขอตัวอย่าง code ที่จะช่วยให้ผม sort ข้อมูลของผมเรียงจาก point มากไปน้อยด้วยนะคับ ขอความช่วยเหลือด้วยคับ ขอบคุณมากครับ ปล.ข้อ 3 ผมขอตัวอย่าง code ด้วยจักขอบคุณอย่างยิ่งคับ หัวข้อ: Re: ถามปัญหา PHP หน่อยคับ เกี่ยวกับ array เริ่มหัวข้อโดย: pomchai ที่ 15 ธันวาคม 2009, 08:11:46 มากางมุ้ง รอ
หัวข้อ: Re: ถามปัญหา PHP หน่อยคับ เกี่ยวกับ array เริ่มหัวข้อโดย: ttong ที่ 15 ธันวาคม 2009, 08:45:58 ผมก็ได้แค่เบื้องต้นนะครับ เป็นผมจะเก็บเป็น
โค๊ด: $arr_human_id=array("1001","1002","1003"); ข้อ 3 จะแก้ point ของ Tom ก็ให้หาตำแหน่งของ Tom โดยใช้คำสั่ง โค๊ด: $index=array_search("tom",$arr_human_name); ข้อ 5 จะเรียงลำดับจากมากไปน้อย น่าจะใช้คำสั่ง โค๊ด: rsort($arr_human_point); หัวข้อ: Re: ถามปัญหา PHP หน่อยคับ เกี่ยวกับ array เริ่มหัวข้อโดย: genetic ที่ 15 ธันวาคม 2009, 09:11:37 ข้อ 1, 2
$human[0] = array("humanId" => 1001, "HumanName" => "John", "HumanPoint" => 1); $human[1] = array("humanId" => 1002, "HumanName" => "Tom", "HumanPoint" => 3); $human[2] = array("humanId" => 1003, "HumanName" => "Alex", "HumanPoint" => 2); หรือ ถ้าคิดว่า humanId เป็น key ที่จะเป็นตัวบ่งบอกว่าจะแก้ข้อมูลให้ใคร ก็ใช้ humanId เป็น index แทน $human[1001] = array("HumanName" => "John", "HumanPoint" => 1); $human[1002] = array("HumanName" => "Tom", "HumanPoint" => 3); $human[1003] = array("HumanName" => "Alex", "HumanPoint" => 2); ข้อ 3 ในกรณีที่ต้องอัพเดทคะแนนคนที่มีรหัส humanId เป็น 1001 ก็เป็น $human[1001]["HumanPoint"] = 10; ข้อ 4 ก็วนลูปเก็บในอะเรย์แบบข้อหนึ่งครับ เช่น while($row = mysql_fetch_array($rs)) { $human[$row['humanId']] = array ("HumanName" => $row['HumanName'], "HumanPoint" => $row['HumanPoint']); } ก็จะได้แบบข้อ 1 แล้วครับ หัวข้อ: Re: ถามปัญหา PHP หน่อยคับ เกี่ยวกับ array เริ่มหัวข้อโดย: pugkung ที่ 15 ธันวาคม 2009, 10:15:51 อ้างถึง $human[1001] = array("HumanName" => "John", "HumanPoint" => 1); $human[1002] = array("HumanName" => "Tom", "HumanPoint" => 3); $human[1003] = array("HumanName" => "Alex", "HumanPoint" => 2); ข้อ 3 ในกรณีที่ต้องอัพเดทคะแนนคนที่มีรหัส humanId เป็น 1001 ก็เป็น $human[1001]["HumanPoint"] = 10; สนับสนุนวิธีนี้ครับ :wanwan017: หัวข้อ: Re: ถามปัญหา PHP หน่อยคับ เกี่ยวกับ array เริ่มหัวข้อโดย: ball6847 ที่ 15 ธันวาคม 2009, 10:26:11 ข้อ 5
โค๊ด: <?php หัวข้อ: Re: ถามปัญหา PHP หน่อยคับ เกี่ยวกับ array เริ่มหัวข้อโดย: @@@ ที่ 15 ธันวาคม 2009, 11:22:21 ข้อ 1, 2 $human[0] = array("humanId" => 1001, "HumanName" => "John", "HumanPoint" => 1); $human[1] = array("humanId" => 1002, "HumanName" => "Tom", "HumanPoint" => 3); $human[2] = array("humanId" => 1003, "HumanName" => "Alex", "HumanPoint" => 2); หรือ ถ้าคิดว่า humanId เป็น key ที่จะเป็นตัวบ่งบอกว่าจะแก้ข้อมูลให้ใคร ก็ใช้ humanId เป็น index แทน $human[1001] = array("HumanName" => "John", "HumanPoint" => 1); $human[1002] = array("HumanName" => "Tom", "HumanPoint" => 3); $human[1003] = array("HumanName" => "Alex", "HumanPoint" => 2); ข้อ 3 ในกรณีที่ต้องอัพเดทคะแนนคนที่มีรหัส humanId เป็น 1001 ก็เป็น $human[1001]["HumanPoint"] = 10; ข้อ 4 ก็วนลูปเก็บในอะเรย์แบบข้อหนึ่งครับ เช่น while($row = mysql_fetch_array($rs)) { $human[$row['humanId']] = array ("HumanName" => $row['HumanName'], "HumanPoint" => $row['HumanPoint']); } ก็จะได้แบบข้อ 1 แล้วครับ ใช่เลยครับ หัวข้อ: Re: ถามปัญหา PHP หน่อยคับ เกี่ยวกับ array เริ่มหัวข้อโดย: utalert ที่ 15 ธันวาคม 2009, 11:36:56 ขอโทษนะครับ การบ้านเหรอ
หัวข้อ: Re: ถามปัญหา PHP หน่อยคับ เกี่ยวกับ array เริ่มหัวข้อโดย: giffary ที่ 15 ธันวาคม 2009, 12:33:58 ขอโทษนะครับ การบ้านเหรอ ป่าวคับ เป็นหนึ่งในงานของโปรเจคจบครับ ผมจะทำระบบ matching ช่างภาพหน่ะครับ |