Em đang gặp vấn đề là không thể truyền giá trị người dùng nhập vào làm url cho action form
Truyền variable thông qua url bằng thuộc tính action của form
<?php
$action_page = $_POST['something_here'];
# $action_page = $_GET['something_here'];
?>
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<form action="<?php echo $action_page; ?>" method="POST">
<input type="text" name="user_name">
<input type="submit" name="username_btn" value="register">
</form>
</body>
</html>
Cảm ơn câu trả lời của anh. Nhưng mà hình như e chưa giải thích được rõ ý e đang muốn lắm ạ. Ví dụ, trên form a vừa gửi thì khi người dùng submit e muốn url trong action sẽ là http:…/search/user_name user_name là cái mà người dùng nhập vào, như vậy thì kb biết có được ko ạ
e kb là có thể lấy được giá trị người dùng nhập vào vào truyền lên action luôn đc ko ạ
Url trong action
hay là url hiển thị trên trình duyệt?
dạ url trên trình duyệt a ơi
<?php
echo 'Page này là: ';
echo $_SERVER["PHP_SELF"];
echo '<br/>';
$action_page = $_GET['user_name'];
echo 'User vừa mới nhập: ' . $action_page;
?>
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<form action="<?php htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="GET">
<input type="text" name="user_name" value="<?php echo $action_page; ?>">
<button type="submit">Send</button>
</form>
</body>
</html>
$_SERVER[“PHP_SELF”] là để trỏ về chính trang này (như ví dụ ở cái echo đầu tiên)
Cái htmlspecialchars() là để encode thông tin, phòng trường hợp bị chèn mã HTML vào. Bạn tìm hiểu thêm cái PHP_SELF XSS attack
Mình thấy form của bạn là form search, tại sao lại dùng post mà không dùng get
mình vừa sửa lại r, cảm ơn bạn