[英]store form input in a Session variable
我在使用變量 $_SESSION['number'] 時遇到問題。 用戶可以在表單中設置它,但在點擊提交后它會消失。 該字段為空兩次或更多次? 點擊提交后如何保留 $_SESSION['number']? 謝謝
<form action=" <?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
<input type="text" name="number"/>
<input type="submit" name="Submit" value="Submit!" />
</form>
<?php
// starting the session
session_start();
$_SESSION['number']=0;
if (isset($_POST['Submit'])){
if($_POST['number'] != ''){
$_SESSION['number'] = $_POST['number'];
}
$_SESSION['number'] = $_SESSION['number'];
}
echo 'number='.$_SESSION['number'];
你的代碼應該是這樣的,
<?php
// starting the session
session_start();
$num = 0;
if (isset($_POST['Submit'])) {
if ($_POST['number'] == '') {
$_SESSION['number'] = $num;
} else {
$_SESSION['number'] = $_POST['number'];
}
echo 'number = '.$_SESSION['number'];
}
?>
<form action=" <?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
<input type="text" name="number"/>
<input type="submit" name="Submit" value="Submit!" />
</form>
並認為它會幫助你。
感謝 Lakmal,我使用了您的代碼,發現如果我在“if else 循環”之前設置 $_SESSION 變量並保持“if else”邏輯非常簡單,它就可以工作。 $_SESSION 變量非常適合這種類型的代碼。
<?php
//starting the session
session_start();
$num = 0;
if(!isset($_SESSION['number'])) $_SESSION['number']=0;
if(isset($_POST['Submit'])){
if($_POST['number'] != ''){
$_SESSION['number'] = $_POST['number'];
}
echo 'number='.$_SESSION['number'];
}
?>
<form action=" <?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
<input type="text" name="number"/>
<input type="submit" name="Submit" value="Submit!" />
</form>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.