10/10/2018, 11:14

Xin hỏi cách chia dữ liệu thành 3 cột PHP

Mình có đoạn code chia dữ liệu thành 2 cột

bây giờ mình muốn chia nó thành 3 cột xin các bạn chỉ giúp

if($n%2!=0){
$top->block["LIST_1"][] = $tmp;
}else{
$top->block["LIST_2"][] = $tmp;
}
dinhgiapit viết 13:28 ngày 10/10/2018
bạn tạo 2 biến
$dem và $str
$dem = 0;
$str ='';
$n = count($table);
for($i = 0 ; $i < $n ; $i++)
{
$row = $table[$i];
if($dem % 3 == 0)
{
$str .='<tr>';
}

$str .='dữ liệu của bạn';

if($dem % 3 == 2)
{
$str .='</tr>';
}

$dem++;
}
echo $str;
biến $dem sẽ tăng lên 1 khi bạn hiển thị hết một dòng dữ liệu.
ngoc_viet08 viết 13:15 ngày 10/10/2018
code của bạn nhìn phức tạp và không thân thiện lắm với coder khác
bvnguyen viết 13:22 ngày 10/10/2018
Được gửi bởi ngoc_viet08
code của bạn nhìn phức tạp và không thân thiện lắm với coder khác
bác này biết mà không định chỉ nè

@chủ thớt: định dạng mấy cột là để cho css nó làm, đừng để php, ví dụ sau này bác muốn thay giao diện khác, thành 5 cột thì lại phải mò vào code php à.
bác xuất ra mỗi record dữ liệu thành một <li> sau đó dùng css để định dạng nó, thành mấy cột thì phụ thuộc vào css hết, sau này muốn làm giao diện khác thì chỉ cần chỉnh css là xong.

bác đang tìm hiểu dần dần những vấn đề này là bác đang tiến bộ đấy
ngoc_viet08 viết 13:15 ngày 10/10/2018
Được gửi bởi bvnguyen
bác này biết mà không định chỉ nè

@chủ thớt: định dạng mấy cột là để cho css nó làm, đừng để php, ví dụ sau này bác muốn thay giao diện khác, thành 5 cột thì lại phải mò vào code php à.
bác xuất ra mỗi record dữ liệu thành một <li> sau đó dùng css để định dạng nó, thành mấy cột thì phụ thuộc vào css hết, sau này muốn làm giao diện khác thì chỉ cần chỉnh css là xong.

bác đang tìm hiểu dần dần những vấn đề này là bác đang tiến bộ đấy
chỉ tốn time quá =))

liệu tag <li> có đảm bảo thay thế được table ko bác
bvnguyen viết 13:24 ngày 10/10/2018
Được gửi bởi ngoc_viet08
chỉ tốn time quá =))

liệu tag <li> có đảm bảo thay thế được table ko bác
cảm ơn bác, em vẫn dùng cách này để hiển thị các product, bác có cách nào thì chỉ em với
chắc em chưa hiểu cái ý "nhìn phức tạp và không thân thiện lắm với coder khác" là sao, nếu dùng table như bình thường thì vẫn phức tạp và không thân thiện
ngoc_viet08 viết 13:19 ngày 10/10/2018
Được gửi bởi bvnguyen
cảm ơn bác, em vẫn dùng cách này để hiển thị các product, bác có cách nào thì chỉ em với
chắc em chưa hiểu cái ý "nhìn phức tạp và không thân thiện lắm với coder khác" là sao, nếu dùng table như bình thường thì vẫn phức tạp và không thân thiện
nếu 3 cột 3 li , thì mình phải tính toán số sản phẩm để phân chia hợp lí vào 3 cột ban đầu , cuối cùng bạn cũng phải chỉnh sửa code php thui

ngoài ra nếu chia sản phẩm vào mỗi cột <li> thì các sản phẩm cùng hàng chưa chắc đã xếp cùng 1 dòng với nhau , do thông tin các sản phẩm có thể khác nhau. khuyết điểm lớn đó nhé.

table vẫn tối ưu hơn.

nếu dùng table như bình thường thì vẫn phức tạp và không thân thiện
đừng cứ nghĩ đụng tới table thì là phức tạp , ko thân thiện , ko theo chuẩn chứ . table vẫn có vị trí và công dụng của nó mà các tag ko thay thế tốt được . với việc show sản phẩm dạng lưới thì table là số 1 rồi
bvnguyen viết 13:16 ngày 10/10/2018
thật sai lầm khi nghĩ rằng mỗi lần thay đổi giao diện lại phải vào php code để sửa, chưa kể nếu site bác có nhiều giao diện khác nhau, có giao diện thì 3 cột, có giao diện thì 5 cột, bác nói các sản phẩm cùng hàng chưa chắc đã xếp cùng 1 dòng với nhau, bác hoàn toàn có thể dùng jquery mà, nhìn chữ ký chắc bác cũng biết, các designer không biết php thì sao bác?
Vấn đề này chắc nhiều người bàn luận rồi, vẫn chưa có hồi kết Quan trọng là css của bác thế nào thôi
ngoc_viet08 viết 13:29 ngày 10/10/2018
Được gửi bởi bvnguyen
thật sai lầm khi nghĩ rằng mỗi lần thay đổi giao diện lại phải vào php code để sửa, chưa kể nếu site bác có nhiều giao diện khác nhau, có giao diện thì 3 cột, có giao diện thì 5 cột, bác nói các sản phẩm cùng hàng chưa chắc đã xếp cùng 1 dòng với nhau, bác hoàn toàn có thể dùng jquery mà, nhìn chữ ký chắc bác cũng biết, các designer không biết php thì sao bác?
Vấn đề này chắc nhiều người bàn luận rồi, vẫn chưa có hồi kết Quan trọng là css của bác thế nào thôi
làm sao bác chuyển từ 3 cột lên 5 cột nếu ko thay đổi php code?

nếu dùng jquery để fix vấn đề ko thẳng hàng các sản phẩm thì ko còn j phải bàn ...

vấn đề đang nói tới là dùng cách nào hiệu quả và đơn giản , ko phải làm được hay là không. jquery ninja có thể viết nguyễn 1 framework để biến tag <li> thành công dụng y chang cái table . nhưng đó là việc của kẻ rỗi hơi!

Đang li vs table thì bác chuyển sang li + jquery vs table

kiểu suy nghĩ của bác giống với suy nghĩ joomla có thể làm mọi thứ , thậm chí dùng joomla chỉnh sửa lại để làm wordpress...
banama viết 13:16 ngày 10/10/2018
Được gửi bởi bvnguyen
bác này biết mà không định chỉ nè

@chủ thớt: định dạng mấy cột là để cho css nó làm, đừng để php, ví dụ sau này bác muốn thay giao diện khác, thành 5 cột thì lại phải mò vào code php à.
bác xuất ra mỗi record dữ liệu thành một <li> sau đó dùng css để định dạng nó, thành mấy cột thì phụ thuộc vào css hết, sau này muốn làm giao diện khác thì chỉ cần chỉnh css là xong.

bác đang tìm hiểu dần dần những vấn đề này là bác đang tiến bộ đấy

Mình chưa hiểu ý bạn lắm

vidu <li>{VALUE_mage}</li> thì chia cột như thế nào

Cảm ơn , mới học php nên chưa biết nhiều lắm có gì thông cảm
Bài liên quan
0