charlie
ก๊วนเสียว
พลังน้ำใจ: 1
ออฟไลน์
กระทู้: 219
|
 |
« เมื่อ: 12 สิงหาคม 2009, 15:17:42 » |
|
ผมสร้าง object มาสองตัว จาก class เดียวกัน $response กับ $attribute ทีนี้อยากให้ object สองตัวนี้มันรวมกันหน่ะครับ ต้องใช้ function อะไรครับ? อ้อ.. แล้วก็ ผมลองใช้ array_merge แล้ว แต่ object มันก็ยังไม่รวมกันอยู่ดี ผมลองทดสอบโดยใช้ code แบบนี้ <?php foreach(array_merge($response,$attribute) as $value){ $name = $value->book->name // เป็นค่าที่ได้จาก object $response $img = $value->smallimg->img // เป็นค่าที่ได้จาก object $attribute print($name.$img); } ?>
แต่ผลที่ได้ มันกลายเป็นว่า มันวนลูป 2 รอบ ซึ่งจริงๆแล้วมันน่าจะวนแค่รอบเดียว
|
|
|
บันทึกการเข้า
|
|
|
|
g-ji
เจ้าพ่อบอร์ดเสียว
พลังน้ำใจ: 231
ออฟไลน์
กระทู้: 3,254
|
 |
« ตอบ #1 เมื่อ: 12 สิงหาคม 2009, 15:28:46 » |
|
เอา print ออกมานอก loop สิ <?php foreach(array_merge($response,$attribute) as $value){ $name = $value->book->name // เป็นค่าที่ได้จาก object $response $img = $value->smallimg->img // เป็นค่าที่ได้จาก object $attribute
} print($name.$img); ?>
|
|
|
บันทึกการเข้า
|
|
|
|
charlie
ก๊วนเสียว
พลังน้ำใจ: 1
ออฟไลน์
กระทู้: 219
|
 |
« ตอบ #2 เมื่อ: 12 สิงหาคม 2009, 15:38:21 » |
|
เอา print ออกมานอก loop สิ <?php foreach(array_merge($response,$attribute) as $value){ $name = $value->book->name // เป็นค่าที่ได้จาก object $response $img = $value->smallimg->img // เป็นค่าที่ได้จาก object $attribute
} print($name.$img); ?>
โทษครับ จริงๆแล้วมันมีปัญหาตอนแสดงผลหน่ะครับ คือสมมุติถ้าสั่ง print <?php print("<div>".$name.$img."</div>"); // สั่งใน foreach
// ผลที่ได้มันกลับออกมาเป็น //<div>$name</div> //<div>$img</div> ?>
เหมือนมันวนลูปแยก object กัน แทนที่จะมี div แค่อันเดียว
|
|
« แก้ไขครั้งสุดท้าย: 12 สิงหาคม 2009, 15:49:57 โดย charlie »
|
บันทึกการเข้า
|
|
|
|
morizaki
ก๊วนเสียว
พลังน้ำใจ: 45
ออฟไลน์
กระทู้: 499
|
 |
« ตอบ #3 เมื่อ: 12 สิงหาคม 2009, 16:09:10 » |
|
$response,$attribute เป็น array ทั้งคู่อะป่าวครับ แต่คิดว่าไม่น่าใช่ เพราะเห็นมีการอ่านค่าจาก attribute ซะด้วยสิ ตาม coding ที่เขียนมามันจะทำงานแบบนี้อ่ะครับ 1. เอา $response กับ $attribute มาต่อกันเป็น array จากคำสั่ง array_merge จะได้ผลลัพธ์แบบนี้อ่ะครับ Array ( - => $response
[1] => $attribute ) 2. พอมันวนใน loop foreach รอบที่ 1 ค่า $value จะเป็น $response มันก็จะมีค่า $name อย่างเดียว (ให้เดา ->book->name มาจาก $response แหงมๆ) รอบที่ 2 ค่า $value จะเป็น $attribute มันก็จะมีค่า $img อย่างเดียว (ให้เดา ->smallimg->img ก็คงมาจาก $attribute)
ปล. ยังสงสัยจุดประสงค์ของการรวม ตัวแปร $response กับ $attribute  ถ้ายังไงอธิบายสิ่งที่อยากได้ให้ละเอียดหน่อยน่ะครับ
|
|
|
บันทึกการเข้า
|
|
|
|
charlie
ก๊วนเสียว
พลังน้ำใจ: 1
ออฟไลน์
กระทู้: 219
|
 |
« ตอบ #4 เมื่อ: 12 สิงหาคม 2009, 16:25:36 » |
|
$response,$attribute เป็น array ทั้งคู่อะป่าวครับ แต่คิดว่าไม่น่าใช่ เพราะเห็นมีการอ่านค่าจาก attribute ซะด้วยสิ ตาม coding ที่เขียนมามันจะทำงานแบบนี้อ่ะครับ 1. เอา $response กับ $attribute มาต่อกันเป็น array จากคำสั่ง array_merge จะได้ผลลัพธ์แบบนี้อ่ะครับ Array ( - => $response
[1] => $attribute ) 2. พอมันวนใน loop foreach รอบที่ 1 ค่า $value จะเป็น $response มันก็จะมีค่า $name อย่างเดียว (ให้เดา ->book->name มาจาก $response แหงมๆ) รอบที่ 2 ค่า $value จะเป็น $attribute มันก็จะมีค่า $img อย่างเดียว (ให้เดา ->smallimg->img ก็คงมาจาก $attribute)
ปล. ยังสงสัยจุดประสงค์ของการรวม ตัวแปร $response กับ $attribute  ถ้ายังไงอธิบายสิ่งที่อยากได้ให้ละเอียดหน่อยน่ะครับ
จุดประสงค์ของผมก็คือ อยากทำให้มันแสดงผลตามที่ต้องการหน่ะครับ แ่ต่มันกลับแสดงเกิน ผมเลยเดาว่ามันน่าจะมาจากการที่เป็น object คนละตัวกันเวลาวนลูป มันเลยแยกจากกัน ไม่รวมกัน code จริงๆเป็นแบบนี้ครับ(โทษครับ ที่ไม่เอา่ลงตั้งแตกตอนแรก กลัวคนเข้ามาดูจะงง) <?php print("<table>"); foreach(array_merge($attributes,$responses) as $current){ $smallimage = $current->SmallImage->URL; $Title = $current->ItemAttributes->Title; $Price = $current->Price->FormattedPrice; $CartItemId = $current->CartItemId; $remove = "shoppingcart.php?Action=Remove&CartId=$CartId&HMAC=$HMAC&CartItemId=$CartItemId"; print("<tr><td><img src =$smallimage></td><td>".$Title."</td>"); print("<td></td><td><a href =$remove>remove</a></td><td>".$Price."</td></tr>"); } print("</table>"); ?>
ผลที่ได้กลายเป็นแบบนี้ <table> <tr><td><img src =$smallimage></td><td>".$Title."</td> <tr><td><img src =$smallimage></td><td>".$Title."</td> <td></td><td><a href =$remove>remove</a></td><td>".$Price."</td></tr> <td></td><td><a href =$remove>remove</a></td><td>".$Price."</td></tr> </table
ซึ่งจริงๆแล้วมันควรจะเป็นแบบนี้ <table> <tr><td><img src =$smallimage></td><td>".$Title."</td><td></td><td><a href =$remove>remove</a></td><td>".$Price."</td></tr> <tr><td><img src =$smallimage></td><td>".$Title."</td><td></td><td><a href =$remove>remove</a></td><td>".$Price."</td></tr> </table>
|
|
« แก้ไขครั้งสุดท้าย: 12 สิงหาคม 2009, 16:45:40 โดย charlie »
|
บันทึกการเข้า
|
|
|
|
EThaiZone
เจ้าพ่อโลลิค่อน
เจ้าพ่อบอร์ดเสียว
พลังน้ำใจ: 321
ออฟไลน์
กระทู้: 12,518
|
 |
« ตอบ #5 เมื่อ: 12 สิงหาคม 2009, 17:08:41 » |
|
I think this should work.  <?php
class Compositor { private $obj_a; private $obj_b
public function __construct($obj_a, $obj_b) { $this->obj_a = $obj_a; $this->obj_b = $obj_b; }
public function __get($attrib_name) { if ($this->obj_a->$attrib_name) { return $this->obj_a->$attrib_name; } else { return $this->obj_b->$attrib_name; } } }
$merged = new Compositor($attributes,$responses); print("<table>"); foreach($merged as $current){ $smallimage = $current->SmallImage->URL; $Title = $current->ItemAttributes->Title; $Price = $current->Price->FormattedPrice; $CartItemId = $current->CartItemId; $remove = "shoppingcart.php?Action=Remove&CartId=$CartId&HMAC=$HMAC&CartItemId=$CartItemId"; print("<tr><td><img src =$smallimage></td><td>".$Title."</td>"); print("<td></td><td><a href =$remove>remove</a></td><td>".$Price."</td></tr>"); } print("</table>");
?> REF: http://stackoverflow.com/questions/455700/what-is-the-best-method-to-merge-two-php-objects PS. Work on PHP5 not PHP4. (This is Magic Methods.)
|
|
|
บันทึกการเข้า
|
|
|
|
charlie
ก๊วนเสียว
พลังน้ำใจ: 1
ออฟไลน์
กระทู้: 219
|
 |
« ตอบ #6 เมื่อ: 12 สิงหาคม 2009, 17:28:28 » |
|
I think this should work.  <?php
class Compositor { private $obj_a; private $obj_b
public function __construct($obj_a, $obj_b) { $this->obj_a = $obj_a; $this->obj_b = $obj_b; }
public function __get($attrib_name) { if ($this->obj_a->$attrib_name) { return $this->obj_a->$attrib_name; } else { return $this->obj_b->$attrib_name; } } }
$merged = new Compositor($attributes,$responses); print("<table>"); foreach($merged as $current){ $smallimage = $current->SmallImage->URL; $Title = $current->ItemAttributes->Title; $Price = $current->Price->FormattedPrice; $CartItemId = $current->CartItemId; $remove = "shoppingcart.php?Action=Remove&CartId=$CartId&HMAC=$HMAC&CartItemId=$CartItemId"; print("<tr><td><img src =$smallimage></td><td>".$Title."</td>"); print("<td></td><td><a href =$remove>remove</a></td><td>".$Price."</td></tr>"); } print("</table>");
?> REF: http://stackoverflow.com/questions/455700/what-is-the-best-method-to-merge-two-php-objects PS. Work on PHP5 not PHP4. (This is Magic Methods.) ไม่ได้อ่า..ครับ ทีนี้ไม่ขึ้นอะไรเรย ผมลอง print("<pre>"); print_r($merged); object มันรวมกันแล้วครับ แต่เรียกไม่ขึ้น
|
|
« แก้ไขครั้งสุดท้าย: 12 สิงหาคม 2009, 18:10:23 โดย charlie »
|
บันทึกการเข้า
|
|
|
|
EThaiZone
เจ้าพ่อโลลิค่อน
เจ้าพ่อบอร์ดเสียว
พลังน้ำใจ: 321
ออฟไลน์
กระทู้: 12,518
|
 |
« ตอบ #7 เมื่อ: 12 สิงหาคม 2009, 18:18:32 » |
|
ผมก็อบคลาสมา ลืมดูว่า ในคลาสไม่มีเซมิโคล่อนปิด ให้ใส่ด้วยครับ ผมเทสแล้วใช้งานได้นะ โค้ดที่เทส <?php
class Compositor { private $obj_a; private $obj_b;
public function __construct($obj_a, $obj_b) { $this->obj_a = $obj_a; $this->obj_b = $obj_b; }
public function __get($attrib_name) { if ($this->obj_a->$attrib_name) { return $this->obj_a->$attrib_name; } else { return $this->obj_b->$attrib_name; } } }
class rand_simple_obj { public function __construct() { for($i=0; $i<3; $i++) { $s_key = crc32(rand()); for($i2=0; $i2<3; $i2++) { $key = crc32(rand()); $value = crc32(rand()); $this->$s_key->$key = $value; } } } }
$obj1 = new rand_simple_obj; $obj2 = new rand_simple_obj; $merged = new Compositor($obj1, $obj2);
var_dump($merged); ?>
|
|
|
บันทึกการเข้า
|
|
|
|
charlie
ก๊วนเสียว
พลังน้ำใจ: 1
ออฟไลน์
กระทู้: 219
|
 |
« ตอบ #8 เมื่อ: 12 สิงหาคม 2009, 18:39:31 » |
|
ผมก็อบคลาสมา ลืมดูว่า ในคลาสไม่มีเซมิโคล่อนปิด ให้ใส่ด้วยครับ ผมเทสแล้วใช้งานได้นะ โค้ดที่เทส <?php
class Compositor { private $obj_a; private $obj_b;
public function __construct($obj_a, $obj_b) { $this->obj_a = $obj_a; $this->obj_b = $obj_b; }
public function __get($attrib_name) { if ($this->obj_a->$attrib_name) { return $this->obj_a->$attrib_name; } else { return $this->obj_b->$attrib_name; } } }
class rand_simple_obj { public function __construct() { for($i=0; $i<3; $i++) { $s_key = crc32(rand()); for($i2=0; $i2<3; $i2++) { $key = crc32(rand()); $value = crc32(rand()); $this->$s_key->$key = $value; } } } }
$obj1 = new rand_simple_obj; $obj2 = new rand_simple_obj; $merged = new Compositor($obj1, $obj2);
var_dump($merged); ?> ผมว่าวิธีเรียกผมคงผิดแน่ๆเลย อันนี้ค่าที่ได้จากตอนสั่ง print("<pre>"); print_r($merged); http://www.mediafire.com/file/fmhjzijrnwn/compositor.txt  พี่ลองดูให้หน่อยครับ ว่ามันต้องเรียกยังไง เหมือนผมจะเรียกผิดรึเปล่า เช่นจะเรียก ไอ SmallImage->URL
|
|
« แก้ไขครั้งสุดท้าย: 12 สิงหาคม 2009, 18:41:36 โดย charlie »
|
บันทึกการเข้า
|
|
|
|
morizaki
ก๊วนเสียว
พลังน้ำใจ: 45
ออฟไลน์
กระทู้: 499
|
 |
« ตอบ #9 เมื่อ: 12 สิงหาคม 2009, 19:28:35 » |
|
:oโอ้มีท่านเทพมาช่วยตอบแล้ว โค๊ดที่คุณ EThaiZone เขียนเป็นการรวม $obj_a,$obj_b ไว้ใต้ class เดียวกันครับ เวลาเรียกก็ต้องเรียก $merge->obj_a[0]->SmallImage->URL 
|
|
|
บันทึกการเข้า
|
|
|
|
EThaiZone
เจ้าพ่อโลลิค่อน
เจ้าพ่อบอร์ดเสียว
พลังน้ำใจ: 321
ออฟไลน์
กระทู้: 12,518
|
 |
« ตอบ #10 เมื่อ: 12 สิงหาคม 2009, 19:32:26 » |
|
ของ amazon นี้เอง ถึงว่าคุ้นๆ กับลักษณะการเรียก obj ปกติบางที เวลาเรา parser มา เราก็ไม่ได้ obj ที่ถูกต้องเสมอไป อย่างจากไฟล์เมื่อกี๊ มันใช้ array อิง แล้วข้างในถึงเป็น obj ดังนั้นก็ต้องมาเขียนฟังค์ชั่นรวมกันใหม่ครับ คิดว่าแบบนี้น่าจะใช้ได้นะ <?php
class Compositor { private $obj_a; private $obj_b;
public function __construct($obj_a, $obj_b) { $this->obj_a = $obj_a; $this->obj_b = $obj_b; }
public function __get($attrib_name) { if ($this->obj_a->$attrib_name) { return $this->obj_a->$attrib_name; } else { return $this->obj_b->$attrib_name; } } }
//เขียนใหม่มาเพื่อ port จาก Compositor รองรับกรณี index แบบ array function array_obj_merge($obj1, $obj2) { $new = array(); foreach($obj1 as $k => $v) { $new[$k] = new Compositor($obj1[$k], $obj2[$k]); } return $new; }
//ข้อมูลตัวอย่าง จากไฟล์ที่ส่งมา (เฉพราะส่วนที่โดนเรียกในลูป) $obj1[0]->SmallImage->URL = 'http://ecx.images-amazon.com/images/I/51YEMUJ0RXL._SL75_.jpg'; $obj1[0]->ItemAttributes->Title = "Raving Fans: A Revolutionary Approach To Customer Service"; $obj2[0]->Price->FormattedPrice = '$15.61'; $obj2[0]->CartItemId = 'U2ZXRW09XXADCF';
$obj1[1]->SmallImage->URL = "http://ecx.images-amazon.com/images/I/51JrYsxy6UL._SL75_.jpg"; $obj1[1]->ItemAttributes->Title = "Snow Flower and the Secret Fan: A Novel"; $obj2[1]->Price->FormattedPrice = '$11.56'; $obj2[1]->CartItemId = 'U1MXDHAQYJAQE8';
//จับรวมซะ $merged = array_obj_merge($obj1, $obj2);
print("<table>"); foreach($merged as $current){ $smallimage = $current->SmallImage->URL; $Title = $current->ItemAttributes->Title; $Price = $current->Price->FormattedPrice; $CartItemId = $current->CartItemId; $remove = "shoppingcart.php?Action=Remove&CartId=$CartId&HMAC=$HMAC&CartItemId=$CartItemId"; print("<tr><td><img src =$smallimage></td><td>".$Title."</td>"); print("<td></td><td><a href =$remove>remove</a></td><td>".$Price."</td></tr>"); } print("</table>");
?>
|
|
|
บันทึกการเข้า
|
|
|
|
EThaiZone
เจ้าพ่อโลลิค่อน
เจ้าพ่อบอร์ดเสียว
พลังน้ำใจ: 321
ออฟไลน์
กระทู้: 12,518
|
 |
« ตอบ #11 เมื่อ: 12 สิงหาคม 2009, 19:36:52 » |
|
:oโอ้มีท่านเทพมาช่วยตอบแล้ว โค๊ดที่คุณ EThaiZone เขียนเป็นการรวม $obj_a,$obj_b ไว้ใต้ class เดียวกันครับ เวลาเรียกก็ต้องเรียก $merge->obj_a[0]->SmallImage->URL  ไม่ครับ $merge->obj_a[0]->SmallImage->URL ไม่ควรเรียกแบบนี้ ไม่งั้นที่ทำมาก็ไร้ความหมาย จริงๆ มันก็เรียกไม่ได้ เพราะ $obj_a จะเป็น private (ใน php5 น่ะนะ)กำ มองผิด มันประกาศ private กับตัวแปร ไม่ใช่ตัว obj  จุดสำคัญของ class Compositor อยู่ที่ public function __get($attrib_name) ที่จะทำการ switch ข้อมูลที่จะเรียกว่าจะเป็น $obj_a หรือ $obj_b มีอันไหน ก็จะเรียกอันนั้นมาใช้ได้ class Compositor ใช้รวมได้ปกติจริงๆ เพียงแต่ obj ที่มารวม มันต้องเป็น object จริงๆ ไม่ใช่ object ปน array แบบที่ parser มาจาก amazon พวก rss parser ชอบคืนค่ามาแบบนั้น เล่นเอาซะไม่รู้จะเรียกกว่า array หรือ object ดี 
|
|
« แก้ไขครั้งสุดท้าย: 12 สิงหาคม 2009, 19:39:51 โดย EThaiZone »
|
บันทึกการเข้า
|
|
|
|
charlie
ก๊วนเสียว
พลังน้ำใจ: 1
ออฟไลน์
กระทู้: 219
|
 |
« ตอบ #12 เมื่อ: 12 สิงหาคม 2009, 19:37:18 » |
|
:oโอ้มีท่านเทพมาช่วยตอบแล้ว โค๊ดที่คุณ EThaiZone เขียนเป็นการรวม $obj_a,$obj_b ไว้ใต้ class เดียวกันครับ เวลาเรียกก็ต้องเรียก $merge->obj_a[0]->SmallImage->URL  ตอนเรียกธรรมดา เรียกได้แล้วค้าบบบ  แต่ว่าพอใส่ foreach ยังไม่ขึ้นเหมือนเดิม 
|
|
|
บันทึกการเข้า
|
|
|
|
charlie
ก๊วนเสียว
พลังน้ำใจ: 1
ออฟไลน์
กระทู้: 219
|
 |
« ตอบ #13 เมื่อ: 12 สิงหาคม 2009, 19:38:57 » |
|
:oโอ้มีท่านเทพมาช่วยตอบแล้ว โค๊ดที่คุณ EThaiZone เขียนเป็นการรวม $obj_a,$obj_b ไว้ใต้ class เดียวกันครับ เวลาเรียกก็ต้องเรียก $merge->obj_a[0]->SmallImage->URL  ไม่ครับ $merge->obj_a[0]->SmallImage->URL ไม่ควรเรียกแบบนี้ ไม่งั้นที่ทำมาก็ไร้ความหมาย จริงๆ มันก็เรียกไม่ได้ เพราะ $obj_a จะเป็น private (ใน php5 น่ะนะ) จุดสำคัญของ class Compositor อยู่ที่ public function __get($attrib_name) ที่จะทำการ switch ข้อมูลที่จะเรียกว่าจะเป็น $obj_a หรือ $obj_b มีอันไหน ก็จะเรียกอันนั้นมาใช้ได้ class Compositor ใช้รวมได้ปกติจริงๆ เพียงแต่ obj ที่มารวม มันต้องเป็น object จริงๆ ไม่ใช่ object ปน array แบบที่ parser มาจาก amazon พวก rss parser ชอบคืนค่ามาแบบนั้น เล่นเอาซะไม่รู้จะเรียกกว่า array หรือ object ดี  แล้วท่านว่าควรจะทำอย่างไรดีขอรับ
|
|
|
บันทึกการเข้า
|
|
|
|
EThaiZone
เจ้าพ่อโลลิค่อน
เจ้าพ่อบอร์ดเสียว
พลังน้ำใจ: 321
ออฟไลน์
กระทู้: 12,518
|
 |
« ตอบ #14 เมื่อ: 12 สิงหาคม 2009, 19:40:54 » |
|
แล้ว array_obj_merge นี้ใช้ได้ไหมครับ หรือเทสแล้วยังไม่ได้ ?
|
|
|
บันทึกการเข้า
|
|
|
|
charlie
ก๊วนเสียว
พลังน้ำใจ: 1
ออฟไลน์
กระทู้: 219
|
 |
« ตอบ #15 เมื่อ: 12 สิงหาคม 2009, 19:44:11 » |
|
แล้ว array_obj_merge นี้ใช้ได้ไหมครับ หรือเทสแล้วยังไม่ได้ ?
โอ้ๆ โทษทีครับ เด๋วลองก่อน
|
|
« แก้ไขครั้งสุดท้าย: 12 สิงหาคม 2009, 19:47:54 โดย charlie »
|
บันทึกการเข้า
|
|
|
|
charlie
ก๊วนเสียว
พลังน้ำใจ: 1
ออฟไลน์
กระทู้: 219
|
 |
« ตอบ #16 เมื่อ: 12 สิงหาคม 2009, 20:08:38 » |
|
แล้ว array_obj_merge นี้ใช้ได้ไหมครับ หรือเทสแล้วยังไม่ได้ ?
ตรงส่วนนี้ มันไม่ได้กำหนดตายตัวหน่ะครับ จริงๆแล้วผมทำระบบ cart ครับ ไอเจ้า $response กับ $attribute ก็ได้มาจากที่ลูกค้าคลิกสินค้าตัวไหนแล้วถึงจะเรียกค่า ของ iTem หน่ะครับ แต่จากที่พี่ EThaiZone กำหนดมา มันเป็นตายตัวอยู่แล้วอ่ะครับ 
|
|
|
บันทึกการเข้า
|
|
|
|
charlie
ก๊วนเสียว
พลังน้ำใจ: 1
ออฟไลน์
กระทู้: 219
|
 |
« ตอบ #17 เมื่อ: 12 สิงหาคม 2009, 20:18:03 » |
|
โอ้้ๆๆๆๆๆๆ ไม่ต้องแล้วค้าบบบบบบบบบบ ได้แล้วววววววววว <?php class Compositor { var $obj_a; var $obj_b; public function __construct($obj_a, $obj_b) { $this->obj_a = $obj_a; $this->obj_b = $obj_b; } public function __get($attrib_name) { if ($this->obj_a->$attrib_name) { return $this->obj_a->$attrib_name; } else { return $this->obj_b->$attrib_name; } } }
function array_obj_merge($obj1, $obj2) { $new = array(); foreach($obj1 as $k => $v) { $new[$k] = new Compositor($obj1[$k], $obj2[$k]); } return $new; }
$attributes = $attribute->Items->Item; $responses = $response->Cart->CartItems->CartItem; $merged = new Compositor($attributes,$responses); $array = array_obj_merge($merged->obj_a, $merged->obj_b); foreach($array as $current){ $smallimage = $current->SmallImage->URL; $Title = $current->ItemAttributes->Title; $Price = $current->Price->FormattedPrice; $CartItemId = $current->CartItemId; $remove = "shoppingcart.php?Action=Remove&CartId=$CartId&HMAC=$HMAC&CartItemId=$CartItemId"; print("<tr bgcolor = '#595858'><td width = '10%'><img src =$smallimage></td><td width = '35%'>".$Title."</td>"); print("<td width = '20%'></td><td width = '25%'><a href =$remove>remove</a></td><td width = '10%'>".$Price."</td></tr>"); } ?>
ขอบคุณมากๆครับ คุณ EThaiZone ผมไม่รู้จะขอบคุณยังไง เพราะผมงมมา 3-4 วันแระ ผมอยากกด +thank ให้อ่ะครับ เค้าต้องทำไงอ่ะ
|
|
« แก้ไขครั้งสุดท้าย: 12 สิงหาคม 2009, 20:19:39 โดย charlie »
|
บันทึกการเข้า
|
|
|
|
morizaki
ก๊วนเสียว
พลังน้ำใจ: 45
ออฟไลน์
กระทู้: 499
|
 |
« ตอบ #18 เมื่อ: 12 สิงหาคม 2009, 20:47:21 » |
|
ดีใจด้วยครับทำได้แล้ว  ไว้ว่างๆ ผมติด coding จะให้คุณ EThaiZone เทพทาง coding SEO จริงๆ  ปกติผมเขียนแต่งานทั่วไป เพิ่งเริ่มทำกะพวก SEO ไว้สงสัยจะมาถามบ้างครับ  ร่วมกันแบ่งปัน เพื่อให้สังคมดีขึ้น 
|
|
|
บันทึกการเข้า
|
|
|
|
EThaiZone
เจ้าพ่อโลลิค่อน
เจ้าพ่อบอร์ดเสียว
พลังน้ำใจ: 321
ออฟไลน์
กระทู้: 12,518
|
 |
« ตอบ #19 เมื่อ: 12 สิงหาคม 2009, 21:11:52 » |
|
ได้ก็ดีแล้วครับ จริงเวลาถามคำถามแนวนี้ หลายคนชอบมาแบบว่า อยากได้อย่างนี้อย่างนั้น บางคนดีหน่อย มีแนบโค้ดตัวอย่างพอให้เข้าใจแนวคิด แต่สิ่งเดียวที่อยากได้จริงๆ คือ input เพราะไม่มีให้เทส จริงๆ ตอนแรกว่าถ้าไม่ได้ จะให้ serialize ตัวแปรที่ว่ามาให้ 
|
|
|
บันทึกการเข้า
|
|
|
|
|