2012-04-25 2 views
0

PHP와 관련된 숙제를하고 있습니다. 기본적으로 데이터베이스에서 가져온 항목을 렌더링하는 웹 양식이 포함 된 페이지가 있습니다. 각 행과 2 개의 라디오 버튼에 체크 박스가 있습니다. 사용자가 "수락"또는 "거부"를 선택하고 제출을 클릭하면 확인 된 항목이 해당 승인 상태로 변경됩니다. 양식의 모든 항목이 게시물로 제출됩니다. 나는 루프가 배열을 가로 지르며 마지막 인덱스 (승인 또는 거부가 있어야 함)에 도달 할 때 카운터가있는 while 루프를 사용할 수 있도록 포스트가 배열이라고 생각했습니다. 이전의 모든 색인을 승인 또는 거부하도록 변경하는 조회가 생성됩니다. 이것이별로 의미가 없다면 미안합니다. <input type='radio' name='accept' value='1' /> : 같은 이름의 속성을 가지고 있어야 당신의 HTML에서여러 행의 단일 요소를 변경하는 쿼리 생성 PHP MySQL

<?php 
     #create a query string 
     $query = "SELECT * FROM Request WHERE superemail = '$user'"; 
     #echo $query; 

     #run the query 
     $result = mysqli_query($link, $query) or die('error querying'); 

     while($row = mysqli_fetch_array($result)){ 
       #print out each row of the queryi 
       #line up the query results with temporary strings 
       $change = $row['KEY']; 
       $name = $row['first']. " " . $row['last']; 
       #echo $name; 
       $email = $row['email']; 
       #echo $email; 
       $type = $row['type']; 
       #echo $type; 
       $duration = $row['duration']; 
       $status = $row['status']; 

       #create a table row with the query results 

       echo "<tr><td><input type=checkbox name=$change /></td> 
       <td>$name</td> 
       <td>$email</td><td>$type</td> 
       <td>$duration</td><td>$status</td></tr>"; 

     } #end while 
    ?> 
    <label for=update>Change status to:</label><br /> 
    <input type=radio name=update value=A />Approved<br /> 
    <input type=radio name=update value=D />Denied<br /> 
    <input type = submit value = "Change Status" /> 
+0

노력을 기울 였다는 것을 알 수 있도록 몇 가지 코드를 제시해야합니다. 또한 누군가가 아직 문제를 완전히 이해하지 못하는 상황을 디버깅하는 데 도움이됩니다. 우리에게 PHP 코드와 HTML을주십시오. –

+0

무엇이 질문입니까? 코드를 제공하지 않고 "숙제를하고 있어요"라는 게시물을 시작하면 많은 도움을 얻지 못할 것입니다. –

+0

상태를 닫으려면 변경하십시오. 이것은 현재 JavaScript와 asychronized JQuery AJAX 요청으로 처리되고 있습니다. – mikeyGlitz

답변

0

input 태그 (당신의 체크 박스와 라디오 버튼) : Here's a picture for more clarification

여기에 내가 웹 양식을 생성하는 데 사용되는 코드입니다. 양식이 PHP에 의해 제출되고 처리되면 스크립트는 해당 정보에 $_POST['accept'] (또는 양식의 방법에 따라 $_GET['accept'])에 액세스 할 수 있습니다.

라디오 버튼의 이름을 지정할 수 있어야합니다. 그런 다음 해당 인덱스의 POST 배열에 값이 있는지 확인하십시오.

0

몇 가지 사항을 가정합니다. 첫째, 승인 대기열에있는 항목 만 선택하여 처리하도록하는 것이 설계 목표입니다. 나머지는 그대로 두십시오. 둘째, 라디오 버튼에서 선택한 상태로 상태를 변경하려고합니다. 셋째, 코드 스 니펫과 작업 완료 방법에 대한 설명이 모두 필요하다는 것입니다.

여기에 있습니다.

일련의 체크 박스가 있습니다. 나는 그들이 같은 이름을 가지고 있다고 가정한다. 값을 PHP로 배열로 전달하기를 원한다면, []을 강조하여 입력 값을 반드시 whatever[]으로 지정해야합니다! 이것은 $ _POST/$ _ GET에 나타나는 체크 박스 배열을 만드는 것입니다. 선택한 항목 만 배열에 나타납니다. 그 값은 물론 입력을 살균 한 후 유용한 ... (해당 데이터베이스 테이블의 값, 예를 들어) 선택할 수있는 것이어야합니다.

그래서, 당신의 HTML 입력 태그는 다음과 같아야합니다

<input type="checkbox" name="process[]" value="<?php echo $employeeName ?>" > 

당신이 ... 다시오고

$_POST['process'][array(0=>name1, 1=>name2/*...etc*/)] 

을 ...이해야와를 통해 당신이 할 수있는 루프 너의 여가 시간에 foreach.

+0

확인란의 이름은 ID 필드 또는 해당 데이터베이스 행에 해당합니다. – mikeyGlitz