sum 값이 왜 저장이 안될까요?
본문
aa.php
<?
$question = array("나는 사랑스럽거나 가치있는 사람이 아니다",
"칭찬받거나 선물을 받으면 불편하다?",
"안에 구멍이 뚫린 것처럼 공허하게 느껴질 때가 많다",
"기쁨 슬픔 사랑 등의 감정을 표현하기 어렵다",
"나의 실수를 용납하기 어렵다",
"남에게 도와달라는 말을 하기 어렵다",
"일과 휴식의 균형을 맞추기 어렵다",
"나의 가치는 남을 도울 때 높아진다",
"남의 부탁을 거절할 때는 죄책감을 느낀다",
"내가 하고 싶지 않은 일도 때때로 기꺼이 자원한다 ",
"나를 기쁘게 하거나 나만을 위한 일을 하면 이기적이라고 생각된다",
"내가 원하는 일을 하기보다는 내게 소중한 사람이 원하는 일을 한다",
"상대가 어떻게 반응할 지 걱정돼 감정을 솔직히 표현하지 않는다",
"누군가와 '너와 나 단 둘'이라는 친밀한 관계가 형성되지 않으면 불안하다",
"상대가 화나 있으면 나 때문일까봐 걱정된다"
);
?>
<html>
<head></head>
<body>
<form name="mresearch" method="post" action="checkbox_process.php">
<table width="601" border="0" cellpadding="1" cellspacing="0" align="center">
<tr><td><p align="center"><b>◈◈◈ 관계중독증 자기진단 ◈◈◈</b></p></td></tr>
<tr><td bgColor="brwon">
<table width="600" border="0" cellpadding="3" cellspacing="1">
<?
for($i = 0; $i < sizeof($question); $i++) {
$num = $i + 1;
echo "<tr>\n";
echo " <td width=580 bgColor=lightyellow><b>" . $num . ".</b> " . $question[$i] . "</td>\n";
echo " <td colspan=20 bgColor=pink align=center><input type=\"checkbox\" name=\"item[]\" value=\"1\"></td>\n";
echo "</tr>\n";
}
?>
</table>
</td></tr></table><p align="center"><input type="submit" value="결과보기"></p>
</form>
</body>
</html>
아래는 checkbox_process.php 입니다.
<?
$sum = 0;
for($i = 0; $i < sizeof($item); $i++) {
$sum += $item[$i];
}
if($sum < 4) {
$comment = "관계중독중이 아닙니다!";
} else if ($sum >=4 && $sum <8) {
$comment = "관계중독을 의심해볼 필요가 있습니다.";
} else {
$comment = "관계중독에 해당합니다.";
}
$introduction = "<b>관계중독이란</b> '나'는 없고 '너와 함께 있는 나'만 있는 것으로 끊임없이 친밀한 관계를 맺을 누군가를 찾는다는 점에서 '중독'입니다. <p> 이들은 친밀한 누군가가 없으면 불안하고 그에게만 '촉각'을 세워 사소한 말이나 행동에도 쉽게 상처를 입습니다. 이로 인해 우울증이나 불안증에 시달리며 결국 남에게도 불편을 주고 심한 경우 정신질환의 초기단계인 '의존성 인격 장애'로 발전할 수 있습니다. ";
?>
<html>
<head></head>
<body>
<table width="501" border="0" cellpadding="1" cellspacing="0" align="center">
<tr><td bgColor="brown">
<table width="500" border="0" cellpadding="10" cellspacing="1">
<tr>
<td align="center" bgColor=pink><b>[관계중독 진단결과]</b></td>
</tr>
<tr>
<td bgColor=#FFFFFF><?echo $introduction ?></td>
</tr>
<tr>
<td bgColor=#C0C0FF>진단결과 당신은 <b><?echo $comment ?></b></td>
</tr>
</table>
</td></tr>
</table>
</body>
</html>
aa.php에서 item 배열에 2,6,8,13,14 번째에 체크를 하고 폼으로 값 전송을 하면
checkbox_process.php에서 item 배열의 인덱스 값을 더해서
sum이 5이상이면 관계중독으로 판별하는건데
sum값이 왜 저장이 안될까요?
!-->!-->답변 3
php.ini 에 addslashes 확인해보세요
코드는 이상없어보입니다.
그 외 상단 스크립트에서 충돌이 일어나는거 아닌가 체크해보세요.
위 코드만 가지고 보면 이상없어보여요
$sum = array_sum($_POST['item']);
으로 바꿔서 테스트 해 보세요.
답변을 작성하시기 전에 로그인 해주세요.