Forumet - FEl PHP code?

FEl PHP code?

54 0 11
Här är när jag skapar en form
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
</form>
<form id="Mat" name="Mat" method="post" action="mat.php">
<label>
<input type="text" name="Mat2" id="Mat2" />
</label>
<label>
<input type="submit" name="skicka" id="skicka" value="Submit" />
</label>
</form>
</body>
</html>

och här är mat.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
<?php
$mat="Pizza";
if (isset ( $_POST['Mat']))
{
if($_POST['Mat2']==$mat)
{
echo"Maten är god";
}
else{
echo"Maten är äcklig";

}
}
?>
</body>
</html>


jag håller på träna. det komemr inget när jag trycker på skicka.. varför?
Pm_is_back:

<body>
</form>
<form id="Mat" name="Mat" method="post" action="mat.php">


Vet inte om det är därför som det inte fungerar, men varför avslutar du ett formulär utan att ens ha öppnat det?

Pm_is_back:

$mat="Pizza";
if (isset ( $_POST['Mat']))
{
if($_POST['Mat2']==$mat)
{
echo"Maten är god";
}
else{
echo"Maten är äcklig";


Varför använder du ens variabeln $mat om pizza är det enda som ger resultatet "maten är god"? Sen vet jag inte om det är skiftlägeskänsligt eller inte, men om det är det så kan det ju vara en bra idé att först göra om $_POST['Mat2'] till gemener eller versaler, så att det inte spelar någon roll om man skriver "PiZZA" eller "pIZzA". Men å andra sidan, om det inte är skiftlägeskänsligt så spelar det ju ingen roll.
aa Men det spelar ingen roll

Åtta:

Vet inte om det är därför som det inte fungerar, men varför avslutar du ett formulär utan att ens ha öppnat det?


hade en form till ovanför den . tog bort när jag skulle ställa min fråga här men det spelar ingen roll
<body>

<form id="Mat" name="Mat" method="post" action="mat.php">
<label>
<input type="text" name="Mat2" id="Mat2" />
</label>
<label>
<input type="submit" name="skicka" id="skicka" value="Submit" />
</label>
</form>
</body>
</html>

och här.. okej

<body>
<?php

if (isset ( $_POST['Mat']))
{
if($_POST['Mat2']=="pizza")
{
echo"Maten är god";
}
else{
echo"Maten är äcklig";

}
}
?>
</body>
</html>

Spana också in:

Pm_is_back:

Jag har bara G i svenska!
Kan du förklara mer?:) tack


isset($_POST['Mat2']) returnerar true om det fanns ett fält med namnet Mat2 POST-anropet till ditt PHP-dokument.

Pm_is_back:

men varför skriver man det? är det nödvändigt?


Om isset($_POST['Mat2']) == False så har du inte kommit till PHP-dokumentet genom ett POST-anrop innehållande ett fält med namnet Mat2, så du kan inte använda dig av det värdet. För det mesta betyder det att användaren kommit till dokumentet från en länk eller genom att ha skrivit in dess URL i adressfältet, inte genom att ha fyllt i ett formulär.