Hướng dẫn what is question mark in url in php? - dấu hỏi trong url trong php là gì?

Bất cứ điều gì được truyền sau URL sử dụng ? về cơ bản là một 'chuỗi truy vấn'. Các biến được truyền vào có thể truy cập bên trong PHP thông qua Superglobal $_GET[].

Hãy nói trong ví dụ của bạn, bạn đã vượt qua trong editnameeditpass seprately. Sau đó, bạn có thể xử lý việc này bằng mã sau:


Không thành công, bạn cũng có thể sử dụng giá trị mảng $_SERVER['QUERY_STRING'], sẽ trả về bất cứ thứ gì xuất hiện sau ?. Nếu bạn sẽ làm việc với nhiều chuỗi truy vấn có thể khác nhau, có thể tốt hơn là sử dụng câu lệnh

switch($_SERVER['QUERY_STRING'])
{
    case 'editname':
        break;

    case 'editpass':
        break;

    default:
        // i.e. no query string.
        break;
}
1:

switch($_SERVER['QUERY_STRING'])
{
    case 'editname':
        break;

    case 'editpass':
        break;

    default:
        // i.e. no query string.
        break;
}

Đôi khi, bạn có thể cần phải vượt qua nhiều hơn một biến trong chuỗi truy vấn, trong trường hợp đó các VAR được phân định bởi

switch($_SERVER['QUERY_STRING'])
{
    case 'editname':
        break;

    case 'editpass':
        break;

    default:
        // i.e. no query string.
        break;
}
2. Bạn cũng có thể gán các giá trị cho các biến bằng toán tử gán thông thường (
switch($_SERVER['QUERY_STRING'])
{
    case 'editname':
        break;

    case 'editpass':
        break;

    default:
        // i.e. no query string.
        break;
}
3). Vì vậy, ví dụ, hãy xem xét URL sau:

switch($_SERVER['QUERY_STRING'])
{
    case 'editname':
        break;

    case 'editpass':
        break;

    default:
        // i.e. no query string.
        break;
}
4

Sau đó, chúng ta có thể truy cập

switch($_SERVER['QUERY_STRING'])
{
    case 'editname':
        break;

    case 'editpass':
        break;

    default:
        // i.e. no query string.
        break;
}
5 và
switch($_SERVER['QUERY_STRING'])
{
    case 'editname':
        break;

    case 'editpass':
        break;

    default:
        // i.e. no query string.
        break;
}
6 bên trong
switch($_SERVER['QUERY_STRING'])
{
    case 'editname':
        break;

    case 'editpass':
        break;

    default:
        // i.e. no query string.
        break;
}
7 và xử lý mọi thứ theo yêu cầu.

Xem thêm:

Xin chào các bạn! Tôi đang cố gắng chèn dữ liệu vào cơ sở dữ liệu và sau khi gửi dữ liệu bằng mẫu URL mà tôi đang sử dụng phương thức POST sẽ giống như "Somelinks/add-result.php này?" Điều gì đang xảy ra với nó, bất kỳ ý tưởng?
What's going on with it, any idea?

Những gì tôi đã thử:

Đây là trang để chèn dữ liệu vào cơ sở dữ liệu và tôi đang sử dụng biểu mẫu hành động như chèn.php và phương thức là bài đăng.

"localhost";
$username = "root";
$password = "";
$dbname = "result1";
$con= mysqli_connect('localhost','root','','$dbname');

if(!$con){
echo'Not connected to server';
}
if(!mysqli_select_db($con,'result1'))
{
echo 'data base not selected';
}
$name =$_GET['Name'];
$id =$_GET['id'];
$Class =$_GET['Class'];
$Law =$_GET['Law'];
$Hoqoq =$_GET['Hoqoq'];
$PanelCode =$_GET['Law panel'];

$sql="INSERT INTO result (Name,id,Class,Hoqoq,Law,Law panel)VALUES('$name','$id','$Class','$Hoqoq','$Law','$PanelCode')";
if(!mysqli_query($con,$sql))
{
echo'Not Inserted';
}
else{
echo'Inserted';
}
header("refresh:2; url=admin-panel.php");
?>

Cập nhật 13-tháng 4-21 23:41 PM 13-Apr-21 23:41pm


Thêm vào câu trả lời của Sandeep, ở trên, có một tùy chọn thứ ba:

$ _Request hoạt động cho cả dữ liệu $ _put và $ _get. Có thể bắt được: nếu bạn đăng cả hai loại dữ liệu lên cùng một trang và cả hai đều sử dụng cùng một ID thì bạn sẽ có một cuộc đụng độ không thể lấy cả hai. Tuy nhiên - dù sao tôi cũng chưa bao giờ thực hiện cả hai, và chắc chắn sẽ không sử dụng lại tên cho chỉ mục. Nó chưa bao giờ là một vấn đề trong khoảng mười năm.

Bạn nói rằng bạn đăng dữ liệu nhưng trong mã của bạn ở trên, bạn đang truy xuất sử dụng GET.

$name =$_GET['Name'];
$id =$_GET['id'];
$Class =$_GET['Class'];
$Law =$_GET['Law'];
$Hoqoq =$_GET['Hoqoq'];
$PanelCode =$_GET['Law panel'];

Đọc về chúng: Post (hoạt động với tiêu đề) vs GET (nó hoạt động với các chuỗi truy vấn - dữ liệu sau? Trong URL): Php - Get & Post Phương thức - Hướng dẫn [^]

Giả sử bạn đã thực hiện một cuộc gọi bài đăng đúng, sau đây là cách để truy xuất dữ liệu:

if(isset($_POST['save']))
{	 
    $id =$_POST['id'];
    $Class =$_POST['Class'];
    $Law =$_POST['Law'];
    $Hoqoq =$_POST['Hoqoq'];
    $PanelCode =$_POST['Law panel'];
    $sql =...
}

Một mẫu để tham khảo của bạn .: Chèn dữ liệu vào MySQL bằng PHP [^]

Như R.Deeming đã chia sẻ, hãy đảm bảo có truy vấn tham số để tránh tiêm SQL.

Nội dung này, cùng với bất kỳ mã nguồn và tệp liên quan nào, được cấp phép theo giấy phép mở của Dự án Mã (CPOL)

Dấu câu hỏi trong URL là gì?

Trong một URL, dấu câu hỏi (??) Chia địa chỉ của một đối tượng và tập hợp các từ được sử dụng trong truy vấn.divides the address of an object and the set of words used in the query.

Dấu câu hỏi được sử dụng trong PHP là gì?

Trong Php 7, toán tử Double Cook (??) được gọi là toán tử Null Coalescing.Nó trả lại toán hạng đầu tiên của nó nếu nó tồn tại và không phải là null;Nếu không, nó trả lại toán hạng thứ hai của nó.Nó đánh giá từ trái sang phải.returns its first operand if it exists and is not NULL; otherwise, it returns its second operand. It evaluates from left to right.

Những điều sau khi đánh dấu câu hỏi trong URL được gọi là gì?

Các tham số URL hoặc chuỗi truy vấn là một phần của URL thường xuất hiện sau dấu hỏi (?) Và được sử dụng để truyền dữ liệu cùng với URL. are the part of a URL that typically comes after a question mark (?) and are used to pass data along with the URL.

Câu hỏi có nên đánh dấu trong URL được mã hóa không?

Ví dụ: chuỗi "được gán cho" sẽ được mã hóa là*%22assigned+đến%22*.(Một số giá trị mã hóa, chẳng hạn như %0A, không được hỗ trợ do các vấn đề bảo mật.) Bảng sau đây liệt kê các ký tự thường được mã hóa.... mã hóa url ..