2017-12-28 5 views
-3

3 개의 라디오 버튼과 버튼을 사용하여 "제출"을 클릭하여 양식을 만들고 세션을 사용하여 선택한 각 라디오 버튼의 양을 보여주는 다음 페이지로 리디렉션 할 수 있습니까?세션의 라디오 버튼 값 저장 - PHP

예 :

라디오 버튼 A의 하나의 라디오 버튼 B, 라디오 버튼 C

선택한 각 라디오 버튼의 양을 나타내는 다음 페이지로 가져온다 제출

선택
  • 라디오 버튼 A - 5 번
  • 라디오 버튼 B - 2 번
  • 라디오 버튼 C - 0 번.

지금까지는 데이터베이스를 사용하여 작업 할 수 있었지만 세션을 사용하려면 어떻게해야합니까?

업데이트 : 내가 가진 내 현재 코드는, 당신은 당신의 코드를 추가하면 라디오 버튼 내가

file1.php

session_start(); 
$_SESSION['choice'] = $choiceVal; 

<form method="get" action="file2.php"> 
    <input type="radio" name="choice" value="R1"> R1<br> 
    <input type="radio" name="choice" value="R2"> R2<br> 
    <input type="radio" name="choice" value="R3"> R3<br> 
    <input type="submit"> 
</form> 

file2.php

session_start(); 
$choiceVal = $_GET['choice']; 
echo "Your registration is: ".$choiceVal."."; 

<p><a href="file1.php">Back to main page</a> 
+0

http://php.net/manual/en/tutorial.forms.php --- HTTP file2.php에 대한 /php.net/manual/en/features.sessions.php –

+0

원하는 것을 얻을 수 있지만 코드를 추가 할 수 있습니까? –

+0

@ChrisHappy 데이터베이스를 사용하기위한 코드 만 가지고 있는데, PHP 세션을 사용하여 어떻게해야하는지 모릅니다. 온라인에서 많은 예제를 보았습니다.하지만 내가하고 싶은 것에 적용하려고하면 작동하지 않습니다. –

답변

1

를 선택 표시되는지 더 자세한 답변을 추가 할 수 있습니다.

변경 test2.php에 :/:

<?php 

session_start(); 

if (!isset($_SESSION['count'])) { 
    $_SESSION['count'] = [ 
    'A' => 0, 
    'B' => 0, 
    'C' => 0, 
    ]; 
} 

$option = isset($_GET['choice']) ? $_GET['choice'] : false; 

if ($option) { 
    $_SESSION[count][$option]++; 
} 

echo '<ul>'; 
foreach ($_SESSION['count'] as $key => $value) { 
    echo '<li>Radio Button ' . $key . ' - '. $value .' times.</li>'; 
} 
echo '</ul>'; 
+0

나는 코드를 붙여 넣었습니다. –

+0

코드를 사용해보십시오! –

+0

안녕하세요, 귀하의 코드를 시도, 예기치 않은 '=' 'A'및 unexpecting '['. 구문을 이해하지 못합니다. –

0

귀하의 코드

<?php 
session_start(); 
if(isset($_GET['choice'])){//Check the get value. 
    if(!isset($_SESSION['click'])){//Check the session exist or not. if not define new array with 0 to all R1,R2,R3. 
     $_SESSION['click'] = array('R1'=>0,'R2'=>0,'R3'=>0); 
    } 
    // Assign the clicked button value to same key's array with +1; 
    $_SESSION['click'][$_GET['choice']] = ($_SESSION['click'][$_GET['choice']]+1); 
    echo "Your registration is: ".$_SESSION['click'][$_GET['choice']].'<p><a href="q.html">Back to main page</a>'; 
} 
// Print your click count 
echo ' 
<ul> 
    <li>Radio Button A - '.$_SESSION['click']['R1'].' times</li> 
    <li>Radio Button B - '.$_SESSION['click']['R2'].' times</li> 
    <li>Radio Button C - '.$_SESSION['click']['R3'].' times</li> 
</ul>'; 
?>