Tôi đã kiểm tra php.net
và đọc một vài ví dụ về cách hoạt động của urlencode()
nhưng bằng cách nào đó tôi không thể làm đúng. Ai đó có thể cho tôi một tay không?cách sử dụng urlencode() trong ví dụ của tôi?
nó sẽ là rất nhiều ví dụ để hy vọng ví dụ ngắn gọn của tôi sẽ có ý nghĩa.
Tôi có một trang có tên là 2.php
và nó được gọi để hiển thị một số nội dung của tệp .txt
được chọn trong 1.php
.
Tôi nói để tạo ra một liên kết cho 3.php
và liên kết sẽ giống như /3?filename=a.txt
với tên tập tin như GET
tên tham số và Đảm bảo GET
giá trị tham số là urlencoded
sử dụng urlencode()
chức năng.
nhưng tôi nhầm lẫn cách thức và nơi tôi nên đặt urlencode()
để làm cho nó hoạt động.
tôi sẽ dán mã 2.php của tôi ở đây ... Tôi đơn giản hóa các mã một chút ...
<?php
$fileContents = file("./aaa/" . $_GET["course"] . ".txt");
echo "<table border=\"1\">";
foreach($fileContents as $row)
{
echo "<tr>";
$contents = preg_split("/,/", $row);
foreach($contents as $eachline)
{
echo "<td>";
if(!(preg_match("/@/", $eachline)))
{
echo trim(ucfirst($eachline));
}
else
{
echo trim(strtolower($eachline));
}
echo "</td>";
}
echo "</tr>";
}
echo "</table>";
echo "<a href='./1.php'>Choose another txt file</a><br/>";
echo "or<br/>";
echo "<a href='.3.php?'>Work with this txt file</a>";
?>
NHƯNG ... tùy chọn 3.php phải có một chuỗi truy vấn nối thêm vào nó: tên của tệp văn bản đã được chọn trong 1, do đó thay vì ./3.php, url phải là một cái gì đó như ./3?filename=asdf.txt
Sử dụng "tên tệp" làm tên thông số GET. Đảm bảo giá trị tham số GET được mã hóa url bằng cách sử dụng hàm urlencode().
nhưng tôi chỉ không chắc chắn làm thế nào để có được nó để làm việc ....
dán mã cho bạn. –
Lưu ý rằng hệ thống này có thể dễ bị tấn công từ xa, nếu không được xử lý đúng cách –
dán .... nhưng loại đơn giản hóa nó một chút để không có quá nhiều để đọc nhưng hy vọng vẫn có thể hiểu được – Dora