Bao gồm PHP không hoạt động

Tôi không chắc nơi này thực sự thuộc về HTML, CSS, Thiết kế ứng dụng hoặc một trong các chủ đề PHP. Vì vậy, tôi nghĩ rằng tôi sẽ đăng ở đây

Trong tìm kiếm của mình, tôi đã tìm thấy các chủ đề gần giống với câu hỏi của mình nhưng chưa cung cấp cách khắc phục sự cố của tôi. Vì vậy, tôi đang yêu cầu giúp đỡ. Điều đó và tôi là một Nhà phát triển web mới bắt đầu

 

 

Problem: the php includes I use are not displayed on web pages in subdirectories. If I add ../ to the php include so it is like this: on the newpage.php only some of the included files are shown on the page in the subdirectory. All links on the file newpage.php now act as though they were written link and don't work. They are acctually written link.

 

Thư mục & Tệp

 

/

mục lục. php

tiêu đề. php

cuối trang. php

menu.php

Phong cách. css

thư mục con/

trang mới. php

 

 

trang mới. php bao gồm mã

 

 

 

 

Câu hỏi? . php và các tệp được bao gồm khác được hiển thị trên các trang thư mục con? . Vì đường dẫn tuyệt đối hoặc tương đối dường như làm hỏng nó

 

FYI. Tôi không có quyền truy cập CLI vào máy chủ. Chỉ truy cập ftp

 

Cảm ơn một lần nữa cho bất kỳ sự giúp đỡ bạn có thể cung cấp

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

  • Giải pháp

Bao gồm PHP không hoạt động
Bao gồm PHP không hoạt động

requinix

Đăng ngày 15 tháng 5 năm 2013

requinix

  • Bao gồm PHP không hoạt động
    Bao gồm PHP không hoạt động

  • quản trị viên
  • Bao gồm PHP không hoạt động
    • 14. 5k
    • 304
  • Vị trí. Mỹ/Los_Angeles

  • Giải pháp

    • Chia sẻ

Đăng ngày 15 tháng 5 năm 2013

Nếu vấn đề là các hàm bao gồm () đơn giản là không hoạt động thì bạn cần sử dụng các đường dẫn tuyệt đối khi đặt tên tệp. "thực đơn. php" một mình là không đủ

include ($_SERVER["DOCUMENT_ROOT"] . "/menu.php");
Nếu vấn đề là liên kết dẫn đến lỗi 404 thì bạn cần sử dụng đường dẫn tuyệt đối khi cung cấp URL. "thực đơn. php" một mình là không đủ.
Menu

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Bao gồm PHP không hoạt động
Bao gồm PHP không hoạt động

cảng80

Đăng ngày 16 tháng 5 năm 2013

cảng80

  • Bao gồm PHP không hoạt động
    Bao gồm PHP không hoạt động

  • Các thành viên
    • 9

  • Tác giả

    • Chia sẻ

Đăng ngày 16 tháng 5 năm 2013

Nếu vấn đề là các hàm bao gồm () đơn giản là không hoạt động thì bạn cần sử dụng các đường dẫn tuyệt đối khi đặt tên tệp. "thực đơn. php" một mình là không đủ

include ($_SERVER["DOCUMENT_ROOT"] . "/menu.php");
Nếu vấn đề là liên kết dẫn đến lỗi 404 thì bạn cần sử dụng đường dẫn tuyệt đối khi cung cấp URL. "thực đơn. php" một mình là không đủ.
<a href="/menu.php">Menu</a>

Cảm ơn bạn đã phản hồi của bạn

 

Họ không nhận được lỗi 404. Các tệp được bao gồm không hiển thị. Tôi sẽ cung cấp $_SERVER["DOCUMENT_ROOT"]

một sự cố gắng. Tôi đã diễn giải không chính xác việc sử dụng $_SERVER["DOCUMENT_ROOT"]. Tôi nghĩ đó là một cài đặt trong tệp ini PHP đã được đặt. Không phải là một cái gì đó được sử dụng trong mã hóa

 

Cảm ơn một lần nữa,

Tôi sẽ đăng lại trạng thái

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Bao gồm PHP không hoạt động
Bao gồm PHP không hoạt động

cảng80

Đăng ngày 16 tháng 5 năm 2013

cảng80

  • Bao gồm PHP không hoạt động
    Bao gồm PHP không hoạt động

  • Các thành viên
    • 9

  • Tác giả

    • Chia sẻ

Đăng ngày 16 tháng 5 năm 2013

Cảm ơn bạn requinix đã trả lời

 

Tôi đã thử các lần lặp này và nó vẫn không hoạt động. Tôi chỉ hình dung tôi sẽ chạy qua nhiều khả năng

 

lần thử đầu tiên

 

nỗ lực thứ 2

 

lần thử thứ 3

 

Mặc dù vậy, nếu tôi hiểu chính xác thì nó phải giống như bạn đã nhập "DOCUMENT_ROOT". Tôi chỉ đang thử các ý tưởng để xem nó có thay đổi gì không

 

lần thử thứ 4

 

lần thử thứ 5

 

lần thử thứ 6

 

 

Am i thiếu cái gì ở đây? . Css hoạt động cho thư mục con/trang mới. php. Các trang đầu trang, chân trang và menu được bao gồm không hiển thị cho thư mục con/trang mới. php. Quyền là  755 hoặc rwxr-xr-x đối với thư mục con/ và các tệp trong thư mục con/

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Bao gồm PHP không hoạt động

nhạc jazz1

Đăng ngày 16 tháng 5 năm 2013

nhạc jazz1

  • Bao gồm PHP không hoạt động

  • cựu nhân viên
  • Bao gồm PHP không hoạt động
    • 2. 7k
  • Vị trí. Mississauga, Ca-na-đa

    • Chia sẻ

Đăng ngày 16 tháng 5 năm 2013

Thôi, sang trang mới. php và cung cấp cho chúng tôi kết quả của

// current directory
echo getcwd() . "\n";

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Bao gồm PHP không hoạt động
Bao gồm PHP không hoạt động

cảng80

Đăng ngày 17 tháng 5 năm 2013

cảng80

  • Bao gồm PHP không hoạt động
    Bao gồm PHP không hoạt động

  • Các thành viên
    • 9

  • Tác giả

    • Chia sẻ

Đăng ngày 17 tháng 5 năm 2013

Nó đưa ra con đường

 

/var/www/html/dd/subdir

 

Tôi đã thử sử dụng chúng một vài giờ sau bài đăng cuối cùng của tôi. Họ cũng không làm việc

 

 

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Bao gồm PHP không hoạt động
Bao gồm PHP không hoạt động

cảng80

Đăng ngày 17 tháng 5 năm 2013

cảng80

  • Bao gồm PHP không hoạt động
    Bao gồm PHP không hoạt động

  • Các thành viên
    • 9

  • Tác giả

    • Chia sẻ

Đăng ngày 17 tháng 5 năm 2013

The server just had updates applied. using works now when it did not before. I would rather the $_SERVER["DOCUMENT_ROOT"] would work. For now at least the ../ does link correctly now, when before it would assume the subdir path instead.

 

Cảm ơn bạn đã giúp đỡ. -)

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Bao gồm PHP không hoạt động

nhạc jazz1

Đăng ngày 17 tháng 5 năm 2013

nhạc jazz1

  • Bao gồm PHP không hoạt động

  • cựu nhân viên
  • Bao gồm PHP không hoạt động
    • 2. 7k
  • Vị trí. Mississauga, Ca-na-đa

    • Chia sẻ

Đăng ngày 17 tháng 5 năm 2013 (đã chỉnh sửa)

Chà, giải pháp của requinix sẽ không hoạt động theo nhật ký đó (/var/www/html/dd/subdir), nó chỉ hoạt động nếu bạn di chuyển menu. php bên ngoài dự án

 

Trong RedHat/CentOS/Fedora, thư mục gốc của web có tên là html, vì vậy trong trường hợp đó, "dd" là thư mục dự án của bạn không phải là thư mục gốc của web như bạn đã đăng trong bài đăng đầu tiên của mình

Được chỉnh sửa vào ngày 17 tháng 5 năm 2013 bởi jazzman1

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Bao gồm PHP không hoạt động
Bao gồm PHP không hoạt động

cảng80

Đăng ngày 26 tháng 5 năm 2013

cảng80

  • Bao gồm PHP không hoạt động
    Bao gồm PHP không hoạt động

  • Các thành viên
    • 9

  • Tác giả

    • Chia sẻ

Đăng ngày 26 tháng 5 năm 2013

Chà, giải pháp của requinix sẽ không hoạt động theo nhật ký đó (/var/www/html/dd/subdir), nó chỉ hoạt động nếu bạn di chuyển menu. php bên ngoài dự án

 

Trong RedHat/CentOS/Fedora, thư mục gốc của web có tên là html, vì vậy trong trường hợp đó, "dd" là thư mục dự án của bạn không phải là thư mục gốc của web như bạn đã đăng trong bài đăng đầu tiên của mình

 

Cảm ơn bạn đã chỉnh sửa trên webroot. Tôi có thể thấy sự khác biệt trong thư mục gốc của máy chủ so với thư mục gốc của một dự án, tôi sẽ ghi nhớ điều đó cho lần sau. Tôi có nhiều thư mục dự án trong webroot của/var/www/html/. Vì vậy, tôi hiểu bạn một cách chính xác, $_SERVER["DOCUMENT_ROOT"] sẽ không hoạt động vì điều đó giới thiệu /var/www/html/ chứ không phải /var/www/html/dd/ ?

 

Vì vậy, bản sửa lỗi thực sự phải là vấn đề về đường dẫn tuyệt đối như requinix đã đề xuất?

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Bao gồm PHP không hoạt động

nhạc jazz1

Đăng ngày 26 tháng 5 năm 2013

nhạc jazz1

  • Bao gồm PHP không hoạt động

  • cựu nhân viên
  • Bao gồm PHP không hoạt động
    • 2. 7k
  • Vị trí. Mississauga, Ca-na-đa

    • Chia sẻ

Đăng ngày 26 tháng 5 năm 2013

 

 

Vì vậy, tôi hiểu bạn một cách chính xác, $_SERVER["DOCUMENT_ROOT"] sẽ không hoạt động vì điều đó giới thiệu /var/www/html/ chứ không phải /var/www/html/dd/ ?

 

Nó phụ thuộc vào cách trông giống như chỉ thị gốc trong conf Apache, theo mặc định là

DocumentRoot "/var/www/html"

Khi bạn tạo các dự án mới trên cùng một web gốc, bạn nên tránh sử dụng các đường dẫn tuyệt đối trừ khi bạn thực sự cần chúng

Tại sao bao gồm không hoạt động trong PHP?

Đảm bảo bạn sử dụng đúng đường dẫn . Hàm bao gồm sẽ cố gắng nhập tệp PHP của bạn bằng cách điều hướng đường dẫn hệ thống tệp. Điều này có nghĩa là bạn cần đảm bảo rằng tập lệnh được bao gồm có thể được truy cập từ tập lệnh cần nó bằng đường dẫn đã chỉ định.

Làm cách nào để đưa URL vào PHP?

Tùy chọn PHP allow_url_include thường cho phép lập trình viên bao gồm() tệp từ xa (dưới dạng mã PHP) bằng cách sử dụng URL thay vì đường dẫn tệp cục bộ.

Làm cách nào để đưa tệp vào trang PHP?

Có thể chèn nội dung của một tệp PHP vào một tệp PHP khác (trước khi máy chủ thực thi nó), với câu lệnh bao gồm hoặc yêu cầu. The include and require statements are identical, except upon failure: require will produce a fatal error (E_COMPILE_ERROR) and stop the script.

Làm cách nào để đưa PHP vào HTML?

Chúng tôi có thể chèn bất kỳ tệp PHP nào vào mã HTML bằng cách sử dụng hai từ khóa là 'Bao gồm' và 'Yêu cầu' . Hàm PHP bao gồm (). Chức năng này được sử dụng để sao chép tất cả nội dung của một tệp được gọi trong hàm, văn bản khôn ngoan vào một tệp mà từ đó nó được gọi. Điều này xảy ra trước khi máy chủ thực thi mã.