[英]Why isn't this simple sign up page working?
我不確定為什么這行不通,它沒有給我任何錯誤,但不會顯示結果。 我只想顯示3個文本字段的結果。 我要做的下一步是將數據輸入數據庫,然后顯示它,但是我想接下來會發生。 謝謝。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<?php
$Fname = $_POST["Fname"];
$Lname = $_POST["Lname"];
$Pword = $_POST["Pword"];
if (!isset($_POST['submit'])) { // if page is not
?>
<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 method = "post" action = "<?php echo $PHP_SELF;?>">
First name<input name="Fname" type="text" maxlength="12"
/>
<br />
<br />
Last name<input name="Lname" type="text" maxlength="12"
/>
<br />
<br />
<!--Address <input name="register_address" type="text" maxlength="12"
/>
<br />
<br />-->
<!--<select name="state" value="State"></select>-->
Password<input name="Pword" type="text" maxlength="12"
/>
<br />
<br />
<!--Re-type Password<input name="register_password_confirm" type="text" maxlength="12"
/>
<br />
<br />-->
<input name="submit" type="button" value="Submit" />
</form>
<?
} else {
echo "Hello, ".$Fname." ".$Lname.".<br />";
echo "Your Password is, " .$Pword.".<br />";
}
?>
</body>
</html>
我看到的三個問題
1-您的按鈕不是“提交”按鈕
更改:
<input name="submit" type="button" value="Submit" />
至
<input name="submit" type="submit" value="Submit" />
2-寄存器全局變量可能已關閉
更改:
<?php echo $PHP_SELF;?>
至
<?php echo $_SERVER['PHP_SELF'];?>
3-短開放標簽可能已關閉
更改:
<?
} else {
echo "Hello, ".$Fname." ".$Lname.".<br />";
echo "Your Password is, " .$Pword.".<br />";
}
?>
至
<?php
} else {
echo "Hello, ".$Fname." ".$Lname.".<br />";
echo "Your Password is, " .$Pword.".<br />";
}
?>
您的提交按鈕需要更改為type="submit"
,您也可能希望在else語句中移動變量聲明,以避免PHP警告:
<input name="submit" type="submit" value="Submit" />
和:
<?php
} else {
$Fname = $_POST["Fname"];
$Lname = $_POST["Lname"];
$Pword = $_POST["Pword"];
echo "Hello, ".$Fname." ".$Lname.".<br />";
echo "Your Password is, " .$Pword.".<br />";
}
?>
最后,我將把if
語句放到最低限度的html數量減少了, if
將來更改條件的處理方式,則可能導致沖突:
<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
if (!isset($_POST['submit'])) { // if page is not
?>
<form method = "post" action = "<?php echo $_SERVER['PHP_SELF'];?>">
First name<input name="Fname" type="text" maxlength="12" /><br /><br />
Last name<input name="Lname" type="text" maxlength="12" /><br /><br />
<!--Address <input name="register_address" type="text" maxlength="12" /> <br /> <br />-->
<!--<select name="state" value="State"></select>-->
Password<input name="Pword" type="text" maxlength="12" /><br /><br />
<!--Re-type Password<input name="register_password_confirm" type="text" maxlength="12" /><br /><br />-->
<input name="submit" type="submit" value="Submit" />
</form>
<?php
} else {
$Fname = $_POST["Fname"];
$Lname = $_POST["Lname"];
$Pword = $_POST["Pword"];
echo "Hello, ".$Fname." ".$Lname.".<br />";
echo "Your Password is, " .$Pword.".<br />";
}
?>
</body>
</html>
嘗試添加一個
<input type="hidden" name="submitted" value="1" />
並檢查
$_POST['submitted'] == 1
嘗試回顯如下結果:
echo "Hello, $Fname $Lname.<br />
Your Password is, $Pword.<br />";
我忘了補充一點,當使用雙引號進行回顯時,您不需要在變量后面加點。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.