Trang 1 / 2 12 LastLast
Hiển thị kết quả từ 1 đến 10 / 14
  1. #1
    Tham gia
    23-02-2005
    Bài viết
    114
    Like
    10
    Thanked 1 Time in 1 Post

    Buồn quá đi ! Thắc mắc về lập trình php trong linux.

    Các cao nhân cho em hỏi xíu. Có gì gà quá thì lượng thứ cho nha. Tình hình là em đang học php nhưng vì vài lý do phải chạy trong môi trường linux. Em dùng hàm is_file($tentaptin) để kiểm tra xem tập tin có tồn tại chưa. Chạy bên wins thì ok. Nhưng sao chạy trên linux nó lúc nào cũng báo ko tồn tại trong khi rõ ràng em đã cố tình tạo tập tin đó để test mà. Mấy cao nhân giải thích giùm em nhá. )
    Quote Quote

  2. #2
    Tham gia
    13-04-2008
    Location
    hà nội
    Bài viết
    529
    Like
    0
    Thanked 6 Times in 5 Posts
    bạn kiểm tra lại $tentaptin xem có thể do chữ hoa chữ thường

  3. #3
    Tham gia
    14-12-2008
    Bài viết
    1,343
    Like
    16
    Thanked 10 Times in 10 Posts
    linux và window khác nhau ở dấu phân cách thư mục.

    ở window là dấu \ , còn bên linux là dấu /

    để giải quyết vấn đề này thì php đưa ra DIRECTORY_SEPARATOR . bạn cần config nó và sử dụng nó thay cho cả \ và / . ví dụ

    //config directory
    define( 'DS', DIRECTORY_SEPARATOR );
    define( 'DS', D );
    define('SITE_PATH', dirname(__FILE__) . DS);
    define('ADMIN_PATH', SITE_PATH . 'admin' . DS);

  4. Thành viên Like bài viết này:


  5. #4
    Tham gia
    23-02-2005
    Bài viết
    114
    Like
    10
    Thanked 1 Time in 1 Post
    Thank các cao nhân lắm lắm nhưng giờ mình lại có một vấn đề mới cần hỏi. Mình muốn đọc nội dung trong file đó vào một chuỗi. Mình sử dụng hàm file($tentaptin) thì bị báo lỗi thế này mấy cao nhân xem giùm mình nhé.
    Warning: file(/var/lib/phpfwgen/netobjects) [function.file]: failed to open stream: Permission denied in /opt/lampp/htdocs/xampp/demo.php on line 4
    Có phải nó báo mình ko có đủ quyền với file đó ko? Mình đăng nhập vào root rồi mà. hix

  6. #5
    Tham gia
    13-04-2008
    Location
    hà nội
    Bài viết
    529
    Like
    0
    Thanked 6 Times in 5 Posts
    khi chạy process php chạy thường khi cài mặc định nó chạy với user là apache vì vậy bạn cần Chmod 755 hay 777 cho file đó thì ok
    Quote Được gửi bởi maddox View Post
    Thank các cao nhân lắm lắm nhưng giờ mình lại có một vấn đề mới cần hỏi. Mình muốn đọc nội dung trong file đó vào một chuỗi. Mình sử dụng hàm file($tentaptin) thì bị báo lỗi thế này mấy cao nhân xem giùm mình nhé.
    Warning: file(/var/lib/phpfwgen/netobjects) [function.file]: failed to open stream: Permission denied in /opt/lampp/htdocs/xampp/demo.php on line 4
    Có phải nó báo mình ko có đủ quyền với file đó ko? Mình đăng nhập vào root rồi mà. hix

  7. Thành viên Like bài viết này:


  8. #6
    Tham gia
    14-12-2008
    Bài viết
    1,343
    Like
    16
    Thanked 10 Times in 10 Posts
    chmod ko hẳn đã hoạt động tốt trên 1 số os, như window 7 chmod ko làm việc hoàn hảo nếu admin ko config lại window

  9. Thành viên Like bài viết này:


  10. #7
    Tham gia
    09-02-2007
    Bài viết
    280
    Like
    2
    Thanked 28 Times in 23 Posts
    Read thì 644 là đủ rồi. Tốt nhất là bạn chown -R apache:apache cho cái thư mục đó. Đỡ phải set quyền cho nó phiền.

  11. #8
    Tham gia
    13-04-2008
    Location
    hà nội
    Bài viết
    529
    Like
    0
    Thanked 6 Times in 5 Posts
    bận ấy đang thắc mắc trên linux
    Quote Được gửi bởi ngoc_viet08 View Post
    chmod ko hẳn đã hoạt động tốt trên 1 số os, như window 7 chmod ko làm việc hoàn hảo nếu admin ko config lại window

  12. 2 thành viên Like bài viết này:


  13. #9
    Tham gia
    23-02-2005
    Bài viết
    114
    Like
    10
    Thanked 1 Time in 1 Post
    Vấn đề đó mình ok rồi lại thắc mắc thêm một điều. Nghe nói mấy cái phân quyền trên linux rất là quan trọng mà mình thiết lập chmod thành 777 hết thì có làm sao ko? À mình chạy trên wins thì thấy có câu lệnh là fopen($tentaptin,"x"); nếu tập tin đó chưa tồn tại thì tự động tạo luôn. Nhưng lại không chạy được câu lệnh này bên linux. Vậy mấy cao nhân cho mình hỏi nếu cũng muốn mở một tập tin mà ko có sẵn thì tự động tạo ra tập tin đó bên linux thì làm sao nhỉ? Mình cũng ko phân biệt được giữa hàm fopen() với popen(). Đọc tài liệu tiếng anh ko hiểu lắm. Lâu lâu mới mò lên mạng một lần hỏi cho đã luôn mong mấy cao nhân giải đáp giùm mình. Thanks nhiều nhiều.

  14. #10
    Tham gia
    13-04-2008
    Location
    hà nội
    Bài viết
    529
    Like
    0
    Thanked 6 Times in 5 Posts
    chmod rất quan trọng nó giúp site của bản an toàn hơn khi bạn dùng share host

    tìm hiểu về chmod và ý nghĩa 777 bạnxem tại đây


    Quote Được gửi bởi maddox View Post
    Vấn đề đó mình ok rồi lại thắc mắc thêm một điều. Nghe nói mấy cái phân quyền trên linux rất là quan trọng mà mình thiết lập chmod thành 777 hết thì có làm sao ko? À mình chạy trên wins thì thấy có câu lệnh là fopen($tentaptin,"x"); nếu tập tin đó chưa tồn tại thì tự động tạo luôn. Nhưng lại không chạy được câu lệnh này bên linux. Vậy mấy cao nhân cho mình hỏi nếu cũng muốn mở một tập tin mà ko có sẵn thì tự động tạo ra tập tin đó bên linux thì làm sao nhỉ? Mình cũng ko phân biệt được giữa hàm fopen() với popen(). Đọc tài liệu tiếng anh ko hiểu lắm. Lâu lâu mới mò lên mạng một lần hỏi cho đã luôn mong mấy cao nhân giải đáp giùm mình. Thanks nhiều nhiều.

Trang 1 / 2 12 LastLast

Bookmarks

Quy định

  • Bạn không thể tạo chủ đề mới
  • Bạn không thể trả lời bài viết
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình
  •