我正在爲一個任務開發一個PHP「交互式文本遊戲」。將php會話值設置爲文本框的值
在我的程序中,提示用戶輸入信息(字符名稱等)到各種文本框中,隨着用戶完成以前的文本字段,這些文本框會一個接一個出現。
我想要做的是獲取文本框(用戶輸入)的值並將其存儲在PHP會話中。我知道我會想要使用AJAX來動態獲取文本值。
我不想先點擊一個「提交」按鈕,只要用戶按下輸入或點擊開箱即可存儲該值。
這裏是我到目前爲止的代碼示例,不包括不必要的行,如包括ajax/stylesheets /等。
這部分代碼,即$('input').keypress
方法,應該從文本字段中獲得文本,並使用"#name"
,並將其放在某處的某個PHP代碼中?我非常新的PHP和JavaScript :(
<?php
session_start();
$_SESSION['name'];
?>
<html>
<head>
<script>
$(document).ready(function() {
$('input').focus(function() {
$(this).val("");
$('input').keypress(function(event)
//.focusout(function()
{
if (event.which === 13) {
$(this).parent().next('div.sub-container').show();
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("name").innerHTML = xmlhttp.responseText;
alert(xmlhttp.responseText);
}
}
xmlhttp.open("GET", "globals.php?q=" + $(this).val(), true);
xmlhttp.send();
}
});
$('input').focusout(function() {
$(this).parent().next('div.sub-container').show();
});
});
});
</script>
</head>
<body>
<div class="container">
<form action="" method="get">
<div class="sub-container-init">
<p class = "text">Like all good stories, we need a compelling hero. Someone with a nice-sounding name. Have anything good?</p>
<input id="name" name="name" value="Name" />
</div>
<input type="submit" value="Submit" />
</form>
</div>
</body>
</html>
這是globals.php
單獨的頁面。理想的情況下,下面的PHP會從文本字段中獲得的文本,並保存在我可以訪問會話從其他網頁
<?php
$q=$_REQUEST["q"];
echo $q;
?>
摘要:如何從"#name"
文本值存儲在,我可以訪問同一頁面後在PHP會議
謝謝!
?
旁註:'session_start();'需要在使用會話的所有文件中。你沒有在你的第二部分代碼中提及/顯示它。 –
哦!謝謝!我會補充一點。我假設他們會參考同一個會話並訪問相同的變量? – 13rave
不客氣。是的,如果在兩個文件中使用相同的會話名稱。 –