테이블의 동일한 열의 여러 행에 단일 양식에서 동일한 이름의 여러 데이터를 삽입하는 방법

Anuveester

나는 가지고있다

<form action="entry.php" method="post" >
<table>
<tr>
    <td>
        <input type="text" name="searchid[]" id="searchid" placeholder="Data 1" ><br />
        <input type="text" name="searchid[]" id="searchid" placeholder="Data 2" ><br />
        <input type="text" name="searchid[]" id="searchid" placeholder="Data 3" ><br />
        <input type="text" name="searchid[]" id="searchid" placeholder="Data 4" ><br />
    </td>
</tr>
<tr>
<td><input type="submit" name="submit" id="submit" value="submit" /></td>
</tr>

</table>    
</form>

그리고 entry.php 코드,

<?php
include "db.php";

if (isset($_POST["submit"]))

$data1 = mysql_real_escape_string($_POST['searchid']);

$query1 = "INSERT INTO php_test (name) VALUES ('$data1')";
$query = mysql_query($query1,$connection);

if($query){
    header ("location: index.php");
    }
else{
    echo "Something Wrong";
    }

?>

이 코드는 단일 입력 데이터로 작동하지만 동일한 열의 별도 필드에 4 개의 데이터를 입력하고 제출하면 별도의 행에 데이터를 삽입하고 필드 이름이 동일하고

Barmar

$_POST['searchid']단일 문자열이 아닌 배열입니다. 다음과 같이 반복해야합니다.

if (isset($_POST["submit"]))
    foreach ($_POST['searchid'] as $searchid) {
        $data1 = mysql_real_escape_string($searchid);
        mysql_query("INSERT INTO php_test (name) VALUES ('$data1')") or die(mysql_error());
    }
}
header("location: index.php");

또한 id="searchid"HTML에서 중복 속성을 제거 하십시오. ID는 고유해야합니다. ID를 갖는 데 이러한 요소가 필요하지 않을 수도 있습니다.

여러 열이있는 경우 다음과 같이 할 수 있습니다.

if (isset($_POST["submit"]))
    foreach ($_POST['searchid'] as $index => $searchid) {
        $data1 = mysql_real_escape_string($searchid);
        $data2 = mysql_real_escape_string($_POST['searchid2'][$index]);
        mysql_query("INSERT INTO php_test (name, name2) VALUES ('$data1', '$data2')") or die(mysql_error());
    }
}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관