Cần sự giúp đỡ để tạo Module

Events happening in the community are now at Drupal community events on www.drupal.org.
thienphuc's picture

Hi all. Mình mới làm quen với Drupal. Mình đang học viết 1 cái Module đơn giản và đang gặp khó khăn. Nhờ mọi người hướng dẫn.
Mình tạo 1 cái Module chat trên Site. Block này mình thấy nó chạy tốt trên hầu hết các page của Site, tuy nhiên khi vào /admin/build/* thì phần hiển thị nội dung Message nó lại load toàn bộ nội dung của Page 1 lần nữa. Điều này làm cho máy chạy rất rất chậm và Module ko chạy.

Module. Do ko attack đc file .rar nên mình đổi nó sang đuôi .doc để attack. Mong mọi người giúp đỡ. Thanks!
http://groups.drupal.org/files/chat.rar_.doc

AttachmentSize
home.JPG17.78 KB
build.JPG90.04 KB
chat.rar_.doc3.81 KB

Comments

Nhờ mọi người giúp

thienphuc's picture

Và các bạn sửa giùm server và tên database của Drupal trong file ajax_chat.php nếu các bạn test giùm mình nhé!
Cảm ơn rất nhiều.

Không có chữ ký nào cả

Test chức năng này chút mọi

khuongkd's picture

Test chức năng này chút mọi người thông cảm

Ở hàm callback, bạn echo

thehong's picture

À, bạn dùng firebug xem thử xem, js của bạn có call đến đúng path hay không?

Và chắc rằng, ở hàm callback, bạn echo $output thay vì return $output.

Ở hàm callback, bạn echo

nhuhoan's picture

ngoài ra bạn phải chú ý , sau khi echo $output , bạn phải dùng hàm exit(0) nữa .

thienphuc's picture

Thank mọi người. Mình đã xem và thấy khi vào trong admin/build/... thì path ko đúng nữa.
Mình có file ajax_chat.php đặt cùng thư mục với các file module (sites/all/modules/chat/)
File này sẽ load data và trả về để show trong list messages. Vấn đề là mình sử dụng path: drupal_get_path('modules','chat').'/ajax_chat.php' = sites/all/modules/chat/ajax_chat.php
ở ngoài admin thì path này là đúng. (http://localhost:82/drupal/PATH)
Nhưng khi vào bên trong admin/build/
thì path này ko còn đúng nữa. (http://localhost:82/drupal/admin/build/PATH)
Mọi người giúp mình với. Hoặc có cách nào get đc (http://locahost:82/drupal) ko?
PHP mình chỉ là biết chút chút thôi, nên cũng chưa biết làm thế nào lấy đc đoạn này. Thank all...

Không có chữ ký nào cả

Sao lại không được nhỉ ?

nhuhoan's picture

mình chưa hiểu rõ câu hỏi của bạn cho lắm , đương nhiên là ngoài admin và http://localhost:82/drupal/admin/build/PATH là khác nhau rồi, bởi ngoài trang này có chức năng tạo alias cho URL mà (lừa tình :D) , ví dụ bạn tao 1 page thông qua node , thì nó có dạng node/nid , nhìn sấu và khó hiểu ,bạn muốn đặt tên cho dễ hiểu thì add alias cho nó .

Còn chuyện lấy http://localhost:82/drupal/ thì dễ thôi , drupal hỗ trợ 2 biến toàn cục hỗ trợ chuyện này , bạn gọi như sau

global $base_url và global $base_path ;

Thanks thehong+ngnhoan. Nó đã

thienphuc's picture

Thanks thehong+ngnhoan.
Nó đã chạy. mình dùng base_url+modules_path và kết quả là được 1 path tuyệt đối. Giờ thì ngon rồi.
Thank all...

Không có chữ ký nào cả

Mình cũng đang vọc cái này,

Cherylnguyen's picture

Mình cũng đang vọc cái này, cảm ơn các bạn đã chia sẻ...