如何使用Jquery回显PHP会话变量?

时间:2015-07-24 11:53:11

标签: javascript php jquery html datepicker

我是PHP新手。我有一个文件上传代码。此代码上传文件并将其保存在Mysql db中。在此代码中我使用两个字段一个是日期,第二个是标题。当用户单击提交按钮时,日期和标题也存储在db中。我在代码中使用Jquery来选择当前日期和显示日历。我的Jquery功能是在日期字段中显示当前日期。当我在日期字段中更改日期时,它还会自动更改标题字段中的日期。

这是我的问题。

我在我的代码中使用session,在Title字段中使用echo session变量。正如我上面讲述的我的Jquery功能。我在更改日期时遇到问题。

当我在日期字段中更改日期时,它不显示会话变量数据。

这是没有日期变化的图片

witout change

以下是日期enter image description here

更改后的图片

我希望当我更改日期时,它还会显示所有其他可变数据。

这是我的会话代码

<?php

 // starts session

 session_start();

 // setting variable values during session

$_SESSION['UserName']='Saqib';
$_SESSION['TeamName']='MIT';
?>

这是我的文件代码

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery UI Datepicker - Default functionality</title>
  <link rel="stylesheet" type="text/css" href="style.css">
  <link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.10.2.js"></script>
  <script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
  <link rel="stylesheet" href="/resources/demos/style.css">
    <script>
$(document).ready(function() {
    $("#mydate").datepicker({
    dateFormat: "dd-M-y",
   onSelect: function(dateText, inst) {
            $("#dt_title input[type='text']").val($("#dt_title input[type='text']").attr('data-title')+dateText);
   }
    }).datepicker("setDate", new Date());
});   
</script>
</head>
<body>

 <form action="up_mb.php" method="POST" enctype="multipart/form-data">

   <table width="547" class="tblbdr" >
    <tr>
        <td height="23"  colspan="6" class="head"><p>  Morning Briefing </p></td>
</tr>
 <tr> <td height="10"></td></tr>
<tr><td class="celltext"><b>Date:</b> </td> <td><input name="mydate" type="text" id="mydate" style="width:200px"> </td></tr>
<tr>

<tr><td class="celltext"><b>Title: </b><br> </td> 

<td class="celltext" style="width:200px" >  <span id="dt_title"> <input name="title" type="text" value=" MB | 
<?php session_start(); echo $_SESSION['UserName'];?> | <?php echo $_SESSION['TeamName'];?> | <?php echo date("d-M-y");?>" 
data-title="MB | " style="width:200px"/> </span> </td> </tr>

</tr>
<td class="celltext"><b>Upload File:</b></td>
    <td colspan="4" bordercolorlight="#006666">  
    <input type="file" name="myfile" id="myfile" width="100%" size=80/>

   <!-- <input type="file" name="files[]"  multiple style="width:300px"/> -->
   </td></tr>
    <td><input type="submit" value="Save"/> </td> <td> </td>
    <td width="151">

   </td>
    <tr>
    <td height="12">
    </td>
    <td width="290">

   </td> </tr>
   </table>
</form>
</body>
</html>

5 个答案:

答案 0 :(得分:1)

您需要更改数据标题&#39;属性输入&#39;字段

data-title="MB | <?php echo $_SESSION['UserName'];?> | <?php echo $_SESSION['TeamName'];?> | "

而不是

data-title="MB | "

答案 1 :(得分:1)

在doctype html之前的第一行放置session_start()。

答案 2 :(得分:0)

看起来您想要做的是更新您的onSelect以包含PHP会话数据的内容。即:

   onSelect: function(dateText, inst) {
            $("#dt_title input[type='text']").val($("#dt_title input[type='text']) + " | <?php echo $_SESSION['UserName'].' | '.$_SESSION['TeamName']; ?>").attr('data-title')+dateText);
   }

不确定我是否在那里(或语法)得到了值,但如果我正确地遵循,你可以完全接受它。请通过评论告诉我们!

答案 3 :(得分:0)

将您的scritp更改为:

>> a: [1 2 3 4 3 4 4] 
== [1 2 3 4 3 4 4]
>> unique a           
== [1 2 3 4]
>> a                  
== [1 2 3 4 3 4 4]
>> a: unique a          
== [1 2 3 4]
>> a
== [1 2 3 4]

此外,您无需再次$(document).ready(function() { $("#mydate").datepicker({ dateFormat: "dd-M-y", onSelect: function(dateText, inst) { changeDate =$("#dt_title input[type='text']").attr('data-title'); sessions = "<?php echo $_SESSION['UserName']; ?> | <?php echo $_SESSION['TeamName']; ?> | "; $("#dt_title input[type='text']").val(changeDate+sessions+dateText); } }).datepicker("setDate", new Date()); }); 打开session_start()

答案 4 :(得分:0)

只需将您的会话数据附加到文本字段中,如下所示

$(document).ready(function() {
    $("#mydate").datepicker({
    dateFormat: "dd-M-y",
    onSelect: function(dateText, inst) {
        $("#dt_title input[type='text']").val($("#dt_title input[type='text']").attr('data-title')+"| <?php echo $_SESSION['UserName'] | $_SESSION['TeamName']; ?> | "+dateText);
}
}).datepicker("setDate", new Date());
});