Php gửi mảng trong bài viết

GET và POST là hai phương thức cần thiết khi web giao tiếp với máy chủ. Các phương pháp này xác định xem web đang đăng dữ liệu lên hay nhận dữ liệu từ máy chủ

PHP là ngôn ngữ được tạo ra để tạo web, cung cấp cho chúng tôi một cách hữu ích để xử lý dữ liệu trong quá trình Đăng hoặc Nhận phương thức. Trong bài đăng này, chúng ta sẽ tìm hiểu về mảng $_GET và $_POST trong PHP

Có một điều bạn cần biết rằng trong một. php, chúng ta có thể viết HTML và PHP cùng nhau, mã PHP phải được viết ở giữa thẻ ;

Cách truyền biến trong URL

Trước hết, chúng ta cần biết cách truyền một số biến hoặc tham số trong URL

http://localhost/task1.php/?firstName=Sam&lastName=Nguyen

Sau URL bình thường

  1. Để khai báo biến ta dùng dấu “?”
  2. sau đó tên biến
  3. Dấu “=” để gán giá trị
  4. điều cuối cùng là giá trị của chính nó
  5. Nếu bạn có nhiều biến, hãy phân tách chúng bằng dấu “&”

Sử dụng mảng $_GET trong PHP

Bây giờ chúng ta đã biết cách truyền các biến trong URL, chúng ta sẽ lấy nó trong PHP bằng cách sử dụng $_GET. $_GET là một biến có sẵn của PHP, là một mảng chứa biến mà chúng ta lấy từ URL

Vì chúng tôi đã chuyển một số biến trong URL, chúng tôi nên biết tên của các biến là gì để lấy nó bằng cú pháp $_GET[variable_name];

echo $_GET['firstName'] //Sam
echo $_GET['firstName'] //Nguyen
use "echo" to print the value to web page.

Xác thực biến trong URL

Có hai điều chúng ta sẽ xem xét ở đây. đầu tiên nếu biến được khai báo, thứ hai nếu biến trống

Sử dụng isset() để kiểm tra xem biến có được khai báo trong URL hay không, đây là hàm trả về giá trị boolean true nếu phát hiện tham số trong URL là false nếu không. Miễn là tên biến có trong URL, nó sẽ trả về true

http://localhost/task1.php/?firstName=Sam&lastName=
isset($_GET['firstName'])  // true
isset($_GET['middleName']) // false
isset($_GET['lastName']) // true

Như bạn có thể thấy trong đoạn mã trên, biến lastName chưa được cung cấp giá trị nhưng nó vẫn trả về return true do hàm isset() phát hiện tên biến trong URL

Bây giờ chúng ta cần kiểm tra xem biến có trống/trống hay không. Điều này đơn giản như bất kỳ ngôn ngữ nào khác bằng cách so sánh biến với một chuỗi rỗng

http://localhost/task1.php/?firstName=Sam&lastName=
$_GET['firstName'] == "" // false
$_GET['lastName'] == "" // true

Sử dụng mảng $_POST trong PHP

Để sử dụng phương thức Đăng, chúng tôi chắc chắn cần một biểu mẫu trong tệp HTML của mình để xử lý dữ liệu mà chúng tôi muốn đăng. Biến dựng sẵn trong PHP $_POST cũng là một mảng và nó chứa dữ liệu mà chúng ta cung cấp cùng với phương thức post

Hãy xem xét ứng dụng đơn giản dưới đây, chúng tôi sẽ yêu cầu người dùng nhập 2 số để cộng chúng lại với nhau

ADD 2 NUMBER

Biểu mẫu trong đoạn mã trên có 2 dữ liệu mà chúng tôi muốn xử lý được lưu trữ trong 2 trường đầu vào. Lưu ý rằng các trường đầu vào này có giá trị tên khác nhau. Và giá trị của thuộc tính tên là những gì chúng ta sử dụng để truy cập giá trị của chính các trường đầu vào trong PHP

Bất cứ khi nào phương thức đăng được kích hoạt bằng cách nhấp vào nút gửi, PHP sẽ nhận được giá trị của biến mà chúng tôi muốn bắt

Một mảng kết hợp gồm các biến được truyền tới tập lệnh hiện tại thông qua phương thức HTTP POST khi sử dụng application/x-www-form-urlencoded hoặc multipart/form-data làm Loại nội dung HTTP trong yêu cầu

ví dụ

Ví dụ #1 $_POST ví dụ

echo 'Hello ' . htmlspecialchars($_POST["name"]) . '!';
?>

Giả sử người dùng đã đăng tên=Hannes

Ví dụ trên sẽ xuất ra một cái gì đó tương tự như

ghi chú

Ghi chú

Đây là biến 'siêu toàn cầu' hoặc toàn cầu tự động. Điều này đơn giản có nghĩa là nó có sẵn trong tất cả các phạm vi trong toàn bộ tập lệnh. Không cần phải làm $variable toàn cầu;

Bài đăng này sẽ chỉ cho bạn cách gửi một mảng kết hợp với HTML và PHP. Khái niệm này khá hữu ích khi bạn cần gửi dữ liệu kiểu mảng như thông tin giỏ hàng

Vui lòng chuyển đến ‘‘ hoặc ‘‘ nếu bạn đã khá quen thuộc với cú pháp của hàm array() của PHP

Php gửi mảng trong bài viết

Mục lục

Mảng kết hợp trong PHP

Một trong những điều tốt nhất về PHP là các mảng giống như từ điển của nó. Cấu trúc dữ liệu mảng kết hợp cho phép người dùng tạo mảng nhiều chiều với nhiều kiểu dữ liệu khác nhau. Nó khá giống với một đối tượng nhưng được tạo ra trong thời gian chạy. Các giá trị trong mảng kết hợp tồn tại trong các cặp khóa-giá trị

Như được mô tả trên php. net

“Mảng trong PHP thực chất là một bản đồ có thứ tự. Bản đồ là một loại liên kết các giá trị với các khóa. ”

Đoạn mã dưới đây cho thấy cách bạn có thể định nghĩa một mảng PHP đơn giản

 'value1', 1=>'value2');

// Or use strings as keys
$arr = array(
'key1' => 'value1',
'key2' => 'value2'
);

Lưu ý rằng các khóa là số nguyên hoặc chuỗi. Trong mảng PHP, các khóa phải là duy nhất cho mỗi giá trị, do đó tạo thành các cặp khóa-giá trị

Đoạn mã trên chỉ hiển thị định nghĩa phiên bản cơ bản của một mảng PHP. Để hiểu rõ hơn về khả năng của hàm mảng, hãy xem mã bên dưới

 'value', // String 
    'age' => 25, // integer
    'score' => 87.12, // float
    'trx' => array(33, 55, 75, 113, 180), // one dimentional array
    'orderDetails' => array( // here we have a multidimentiional array as a value
        'name' => 'john doe',
        'productIDs' => array(11, 442, 532, 1341),
        'totalPrice' => 112.53,
        'currency' => 'USD'
    ),
    'myMethod' => function(){
        return "Hello, World!"
    }
);

// To individual access the values:
echo $arr['key']; // Prints value
echo $arr['age']; // Prints 25
echo $arr['score']; // Prints 87.12
echo $arr['trx'][2]; // Accesses 3rd value in the array, prints 75
echo $arr['orderDetails']['name']; // Prints john doe
echo $arr['orderDetails']['productIDs'][0]; // prints 11
echo $arr['myMethod'](); // Executes myMethod function; prints Hello, World!

By now, you might have a basic understanding of how PHP arrays work. Next, we’ll look into the HTML 

 and  tags and how we can use these to input array-like data from the user.

Biểu mẫu và đầu vào HTML

Khi nói đến web, cách tiêu chuẩn để gửi bất kỳ dữ liệu đầu vào nào được lấy từ người dùng là thông qua các thẻ HTML 

 'value', // String 
    'age' => 25, // integer
    'score' => 87.12, // float
    'trx' => array(33, 55, 75, 113, 180), // one dimentional array
    'orderDetails' => array( // here we have a multidimentiional array as a value
        'name' => 'john doe',
        'productIDs' => array(11, 442, 532, 1341),
        'totalPrice' => 112.53,
        'currency' => 'USD'
    ),
    'myMethod' => function(){
        return "Hello, World!"
    }
);

// To individual access the values:
echo $arr['key']; // Prints value
echo $arr['age']; // Prints 25
echo $arr['score']; // Prints 87.12
echo $arr['trx'][2]; // Accesses 3rd value in the array, prints 75
echo $arr['orderDetails']['name']; // Prints john doe
echo $arr['orderDetails']['productIDs'][0]; // prints 11
echo $arr['myMethod'](); // Executes myMethod function; prints Hello, World!
0 và 
 'value', // String 
    'age' => 25, // integer
    'score' => 87.12, // float
    'trx' => array(33, 55, 75, 113, 180), // one dimentional array
    'orderDetails' => array( // here we have a multidimentiional array as a value
        'name' => 'john doe',
        'productIDs' => array(11, 442, 532, 1341),
        'totalPrice' => 112.53,
        'currency' => 'USD'
    ),
    'myMethod' => function(){
        return "Hello, World!"
    }
);

// To individual access the values:
echo $arr['key']; // Prints value
echo $arr['age']; // Prints 25
echo $arr['score']; // Prints 87.12
echo $arr['trx'][2]; // Accesses 3rd value in the array, prints 75
echo $arr['orderDetails']['name']; // Prints john doe
echo $arr['orderDetails']['productIDs'][0]; // prints 11
echo $arr['myMethod'](); // Executes myMethod function; prints Hello, World!
1. Chúng tôi sẽ tập trung vào thuộc tính tên của các thẻ 
 'value', // String 
    'age' => 25, // integer
    'score' => 87.12, // float
    'trx' => array(33, 55, 75, 113, 180), // one dimentional array
    'orderDetails' => array( // here we have a multidimentiional array as a value
        'name' => 'john doe',
        'productIDs' => array(11, 442, 532, 1341),
        'totalPrice' => 112.53,
        'currency' => 'USD'
    ),
    'myMethod' => function(){
        return "Hello, World!"
    }
);

// To individual access the values:
echo $arr['key']; // Prints value
echo $arr['age']; // Prints 25
echo $arr['score']; // Prints 87.12
echo $arr['trx'][2]; // Accesses 3rd value in the array, prints 75
echo $arr['orderDetails']['name']; // Prints john doe
echo $arr['orderDetails']['productIDs'][0]; // prints 11
echo $arr['myMethod'](); // Executes myMethod function; prints Hello, World!
1

Cú pháp cơ bản để viết các giá trị tên là

hình thức. html


    
    
    

kết quả. php

Sau khi người dùng nhấp vào nút gửi trong đoạn mã trên, dữ liệu biểu mẫu sẽ được gửi đến kết quả. tập tin php. Vì chúng tôi đã sử dụng phương thức POST để gửi biểu mẫu nên kết quả được lưu trữ trong mảng 

 'value', // String 
    'age' => 25, // integer
    'score' => 87.12, // float
    'trx' => array(33, 55, 75, 113, 180), // one dimentional array
    'orderDetails' => array( // here we have a multidimentiional array as a value
        'name' => 'john doe',
        'productIDs' => array(11, 442, 532, 1341),
        'totalPrice' => 112.53,
        'currency' => 'USD'
    ),
    'myMethod' => function(){
        return "Hello, World!"
    }
);

// To individual access the values:
echo $arr['key']; // Prints value
echo $arr['age']; // Prints 25
echo $arr['score']; // Prints 87.12
echo $arr['trx'][2]; // Accesses 3rd value in the array, prints 75
echo $arr['orderDetails']['name']; // Prints john doe
echo $arr['orderDetails']['productIDs'][0]; // prints 11
echo $arr['myMethod'](); // Executes myMethod function; prints Hello, World!
3. Chúng tôi có thể truy cập dữ liệu của trường đầu vào bằng cách sử dụng 
 'value', // String 
    'age' => 25, // integer
    'score' => 87.12, // float
    'trx' => array(33, 55, 75, 113, 180), // one dimentional array
    'orderDetails' => array( // here we have a multidimentiional array as a value
        'name' => 'john doe',
        'productIDs' => array(11, 442, 532, 1341),
        'totalPrice' => 112.53,
        'currency' => 'USD'
    ),
    'myMethod' => function(){
        return "Hello, World!"
    }
);

// To individual access the values:
echo $arr['key']; // Prints value
echo $arr['age']; // Prints 25
echo $arr['score']; // Prints 87.12
echo $arr['trx'][2]; // Accesses 3rd value in the array, prints 75
echo $arr['orderDetails']['name']; // Prints john doe
echo $arr['orderDetails']['productIDs'][0]; // prints 11
echo $arr['myMethod'](); // Executes myMethod function; prints Hello, World!
4. Đây 
 'value', // String 
    'age' => 25, // integer
    'score' => 87.12, // float
    'trx' => array(33, 55, 75, 113, 180), // one dimentional array
    'orderDetails' => array( // here we have a multidimentiional array as a value
        'name' => 'john doe',
        'productIDs' => array(11, 442, 532, 1341),
        'totalPrice' => 112.53,
        'currency' => 'USD'
    ),
    'myMethod' => function(){
        return "Hello, World!"
    }
);

// To individual access the values:
echo $arr['key']; // Prints value
echo $arr['age']; // Prints 25
echo $arr['score']; // Prints 87.12
echo $arr['trx'][2]; // Accesses 3rd value in the array, prints 75
echo $arr['orderDetails']['name']; // Prints john doe
echo $arr['orderDetails']['productIDs'][0]; // prints 11
echo $arr['myMethod'](); // Executes myMethod function; prints Hello, World!
5 là giá trị mà chúng tôi đã sử dụng trong thuộc tính 
 'value', // String 
    'age' => 25, // integer
    'score' => 87.12, // float
    'trx' => array(33, 55, 75, 113, 180), // one dimentional array
    'orderDetails' => array( // here we have a multidimentiional array as a value
        'name' => 'john doe',
        'productIDs' => array(11, 442, 532, 1341),
        'totalPrice' => 112.53,
        'currency' => 'USD'
    ),
    'myMethod' => function(){
        return "Hello, World!"
    }
);

// To individual access the values:
echo $arr['key']; // Prints value
echo $arr['age']; // Prints 25
echo $arr['score']; // Prints 87.12
echo $arr['trx'][2]; // Accesses 3rd value in the array, prints 75
echo $arr['orderDetails']['name']; // Prints john doe
echo $arr['orderDetails']['productIDs'][0]; // prints 11
echo $arr['myMethod'](); // Executes myMethod function; prints Hello, World!
6 của thẻ 
 'value', // String 
    'age' => 25, // integer
    'score' => 87.12, // float
    'trx' => array(33, 55, 75, 113, 180), // one dimentional array
    'orderDetails' => array( // here we have a multidimentiional array as a value
        'name' => 'john doe',
        'productIDs' => array(11, 442, 532, 1341),
        'totalPrice' => 112.53,
        'currency' => 'USD'
    ),
    'myMethod' => function(){
        return "Hello, World!"
    }
);

// To individual access the values:
echo $arr['key']; // Prints value
echo $arr['age']; // Prints 25
echo $arr['score']; // Prints 87.12
echo $arr['trx'][2]; // Accesses 3rd value in the array, prints 75
echo $arr['orderDetails']['name']; // Prints john doe
echo $arr['orderDetails']['productIDs'][0]; // prints 11
echo $arr['myMethod'](); // Executes myMethod function; prints Hello, World!
1. Bây giờ chúng ta hãy xem một ví dụ. Chúng tôi có thể gửi một mảng dữ liệu

Gửi dữ liệu mảng liên kết với HTML & PHP

Giả sử bạn có nhiều tên ô tô và muốn nhận chúng ở back-end dưới dạng một mảng thay vì các cặp tên-giá trị cho mỗi ô tô. Bạn có thể đạt được điều này bằng cách sử dụng ký hiệu mảng như 

 'value', // String 
    'age' => 25, // integer
    'score' => 87.12, // float
    'trx' => array(33, 55, 75, 113, 180), // one dimentional array
    'orderDetails' => array( // here we have a multidimentiional array as a value
        'name' => 'john doe',
        'productIDs' => array(11, 442, 532, 1341),
        'totalPrice' => 112.53,
        'currency' => 'USD'
    ),
    'myMethod' => function(){
        return "Hello, World!"
    }
);

// To individual access the values:
echo $arr['key']; // Prints value
echo $arr['age']; // Prints 25
echo $arr['score']; // Prints 87.12
echo $arr['trx'][2]; // Accesses 3rd value in the array, prints 75
echo $arr['orderDetails']['name']; // Prints john doe
echo $arr['orderDetails']['productIDs'][0]; // prints 11
echo $arr['myMethod'](); // Executes myMethod function; prints Hello, World!
8

Hãy xem xét một ví dụ mở rộng về cùng một vấn đề

hình thức. html

kết quả. php

";
endforeach;

print_r($cars);

đầu ra mẫu

Ferrari Testarossa
Lamborghini Gallardo
Ford Mustang
Honda Prius
Jeep Gladiator

Array
(
    [0] => Ferrari Testarossa
    [1] => Lamborghini Gallardo
    [2] => Ford Mustang
    [3] => Honda Prius
    [4] => Jeep Gladiator
)

Ở phần trên, bạn sẽ nhận thấy rằng chúng ta chỉ truy cập một phần tử trong mảng 

 'value', // String 
    'age' => 25, // integer
    'score' => 87.12, // float
    'trx' => array(33, 55, 75, 113, 180), // one dimentional array
    'orderDetails' => array( // here we have a multidimentiional array as a value
        'name' => 'john doe',
        'productIDs' => array(11, 442, 532, 1341),
        'totalPrice' => 112.53,
        'currency' => 'USD'
    ),
    'myMethod' => function(){
        return "Hello, World!"
    }
);

// To individual access the values:
echo $arr['key']; // Prints value
echo $arr['age']; // Prints 25
echo $arr['score']; // Prints 87.12
echo $arr['trx'][2]; // Accesses 3rd value in the array, prints 75
echo $arr['orderDetails']['name']; // Prints john doe
echo $arr['orderDetails']['productIDs'][0]; // prints 11
echo $arr['myMethod'](); // Executes myMethod function; prints Hello, World!
3, i. e.
0Để truy cập tất cả các kết quả cùng một lúc. Sử dụng phương pháp này có thể đặc biệt hữu ích khi bạn đang tạo các trường động. Bạn thậm chí có thể mở rộng vấn đề trên để cho phép thông tin xe hơi và thông tin tài xế

hình thức. html

Enter Car 1 details:


Enter Car 2 details:


Enter Car 3 details:


kết quả. php

đầu ra mẫu

Array ( 
    [cars] => Array ( 
        [0] => Array ( 
            [name] => Jeep Gladiator 
            [year] => 2019 
        ) 
        [1] => Array ( 
            [name] => Ford Mustand Vintage 
            [year] => 1966 
        ) 
        [2] => Array ( 
            [name] => Ferrari Testarossa 
            [year] => 1990 
        )
    )
)

kết thúc

Như bạn có thể thấy, một mảng kết hợp được hình thành ở phía máy chủ. Sử dụng phương pháp này, bạn có thể gửi nhiều kết hợp dữ liệu. Bạn cũng có thể sử dụng phương pháp này để lấy thông tin từ các trường được thêm động vào biểu mẫu của bạn

Ví dụ có thể bao gồm

  • Thêm trường giáo dục/bằng cấp mới khi nhấn nút
  • Thêm hàng sản phẩm mới khi làm việc trên hệ thống điểm bán hàng (POS)
  • Đọc nhiều sản phẩm và thông tin của chúng từ các sản phẩm mới được thêm vào

Bạn cũng có thể quan tâm

  • Ví dụ mã PHP cho AWS
  • Cách thực thi các lệnh shell thông qua PHP
  • Cách tải tệp lên bằng PHP & Ajax
  • Cài đặt NextCloud bằng Wasabi S3 làm bộ nhớ chính
  • Cách viết mã một plugin WordPress cơ bản


Giới thiệu về tác giả

Nhóm biên tập của Anto cũng yêu thích đám mây như bạn. Mỗi thành viên trong nhóm biên tập của Anto đều là chuyên gia về Đám mây theo cách riêng của họ. Anto Online rất tự hào trong việc giúp đỡ những người đam mê Cloud. Hãy cho chúng tôi biết nếu bạn có ý tưởng tuyệt vời cho chủ đề tiếp theo. Liên hệ với Anto Online nếu bạn muốn đóng góp

Làm cách nào để sử dụng mảng trong bài đăng trong PHP?

PHP $_POST . $HTTP_POST_VARS cũng chứa thông tin tương tự, nhưng không phải là siêu toàn cầu và hiện không được dùng nữa. $_POST is a predefined variable which is an associative array of key-value pairs passed to a URL by HTTP POST method that uses URLEncoded or multipart/form-data content-type in request. $HTTP_POST_VARS also contains the same information, but is not a superglobal, and now been deprecated.

Làm cách nào để in mảng bài trong PHP?

Để in mảng dữ liệu POST. echo print_r($_POST,true); Nếu bạn muốn trình duyệt dễ đọc hơn, hãy bọc trong thẻ

Làm cách nào chúng tôi có thể gửi các mảng ở dạng HTML?

Bạn có thể tạo mảng trong các trường biểu mẫu sử dụng dấu ngoặc vuông . Điều đó có nghĩa là bạn có thể đặt tên cho các trường như account[first_name] và account[last_name] và trong hầu hết các ngôn ngữ phía máy chủ, bạn sẽ có một mảng 'account'.

Làm cách nào để gửi mảng từ trang này sang trang khác trong PHP?

Bạn có thể sử dụng phiên, lưu giá trị trong phiên và trong một trang khác nơi bạn muốn mảng mà bạn nhận giá trị từ phiên . Bạn có thể ẩn giá trị mảng bằng cách sử dụng bất kỳ ký tự đặc biệt cụ thể nào và gửi giá trị đến nơi bạn muốn, sau đó nhận giá trị trong trang đó rồi khai báo giá trị.