집 >데이터 베이스 >MySQL 튜토리얼 >여러 확인란 및 텍스트 상자 배열 데이터를 MySQL 데이터베이스에 효율적으로 삽입하는 방법은 무엇입니까?
MySQL 데이터베이스에 여러 확인란 및 텍스트 상자 배열 삽입
MySQL 데이터베이스에 여러 확인란 및 텍스트 상자 배열을 삽입하는 것은 까다로운 작업일 수 있습니다. 체크박스가 선택된 경우에만 제출되는 경우 특히 그렇습니다. 이를 달성하는 방법에 대한 자세한 설명은 다음과 같습니다.
HTML 양식
각 확인란의 이름 속성에 명시적인 색인이 있는지 확인하세요.
<input tabindex="1" name="checkbox[0]" type="checkbox" value="17" />
또한 이름에 동일한 인덱스를 사용하여 텍스트 상자 배열이 확인란과 일치하는지 확인하세요. 속성.
PHP 스크립트
1. 체크박스 처리:
foreach를 사용하여 체크박스 배열을 반복하고 해당 인덱스로 각 값의 색인을 생성합니다.
foreach($_POST['checkbox'] as $i => $check) { $checkArray[$i] = $check; }
2. 배열 결합:
체크박스 배열의 인덱스가 다른 배열과 정렬되지 않을 수 있으므로 수동으로 결합해야 합니다. 또 다른 foreach 루프를 사용하여 체크박스 배열을 반복하고 해당 값을 다른 배열의 해당 값과 결합합니다.
foreach($checkArray as $i => $check) { $itemArray[$i] = $_POST['item'][$i]; $quantityArray[$i] = $_POST['quantity'][$i]; }
3. 데이터베이스에 삽입:
이제 배열을 올바르게 결합했으므로 데이터베이스에 삽입을 수행할 수 있습니다. SQL 주입을 방지하려면 바인딩_param과 함께 준비된 문을 사용하세요.
$stmt = $conn->prepare("INSERT INTO purchases (Product, Quantity, Price) VALUES (?, ?, ?)"); $stmt->bind_param("sis", $product, $quantity, $price); foreach ($itemArray as $i => $product) { $quantity = $quantityArray[$i]; $price = $_POST['price'][$i]; // Get the price from the HTML $stmt->execute(); }
추가 팁:
위 내용은 여러 확인란 및 텍스트 상자 배열 데이터를 MySQL 데이터베이스에 효율적으로 삽입하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!