html 페이지와 상호 작용하는 성공적인 PHP 페이지를 실행했습니다. 그러나 PHP가 의도했던대로 상호 작용하지 않는 끝 부분에는 한 번 인스턴스가 있습니다.PHP : html 형식의 'selected values'와의 상호 작용
내가 겪고있는 문제는 어떤 색상이 선택 되든 또는 어떤 색상이 선택 되더라도 페이지가 항상 "앤드류가 당신을 미워"한다는 것입니다. 나는이 메시지가 사용자가 'RED'를 선택했는지를 보여 주기만을 원한다. 'GREEN', 'YELLOW', 'BLUE'또는 'PURPLE'이 선택되면 "Andrew가 좋아하는 메시지"를 표시하고 싶습니다.
HTML 페이지 :
<html>
<head>
<title>Test</title><br />
</head>
<body>
<form action="website.php" method="POST">
<p><strong>Name:</strong></br>
<input type="text" name="user"/></p>
<p><strong>Age:</strong><br/>
<input type="text" name="age"/></p>
<p><strong>What's your favourite colour?</strong><br/><br>
<select name="colour[]" multiple="multiple">
<option value="Green">Green</option>
<option value="Blue">Blue</option>
<option value="Red">Red</option>
<option value="Yellow">Yellow</option>
<option value="Purple">Purple</option>
</select>
<p><input type="submit" value="Submit"/></p>
</form>
</body>
</html>
는 PHP 페이지 : 도와위한
//the first part of this php page works perfectly
<?php
echo "<p>Hi <b>". $_POST["user"]."!</p>";
echo "<p>You are <b>".$_POST["age"]."</b><p>";
echo "<p> Your favourite colour is: <br/>";
if (!empty($_POST["colour"])) {
echo "<ul>";
foreach ($_POST ["colour"] as $value) {
echo "<li>$value</li>";
}
echo "</ul>";
}
?>
//this is where things start to break down
<?php
$funny_colour = "Red";
if ($_POST["$value"] = $funny_colour) {
$message = "Andrew hates you"; // Always shows no matter what
echo $message;
} else if ($_POST["$value"] != $funny_colour) {
$message = "Andrew likes you"; // Never shows
echo $message;
}
?>
감사합니다, 정말 감사하고 몇 가지 질문에 대답하기 위해 노력할 것입니다.
'='이 아닌 비교를 위해 (= =') 값과 데이터 유형을 비교할 때 ==를 사용해야합니다. 그리고'$ value'는 정의되지 않았을 수도 있습니다. – Abrixas2