Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/255.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP:简化代码/缩短欢迎信息_Php - Fatal编程技术网

PHP:简化代码/缩短欢迎信息

PHP:简化代码/缩短欢迎信息,php,Php,任何缩短此欢迎信息的建议: <?php if(isset($_SESSION['user_id'])) { if(isSet($_SESSION['1stTime'])){ ?> <strong id="welcome" style="font-size: 10px;"> <a href="logout.php"> Logga ut </a> </strong> <?php }else{

任何缩短此欢迎信息的建议:

 <?php 
 if(isset($_SESSION['user_id'])) {
  if(isSet($_SESSION['1stTime'])){
  ?>
  <strong id="welcome" style="font-size: 10px;">
  <a href="logout.php">
  Logga ut
  </a>
  </strong>
  <?php
  }else{
  $_SESSION['1stTime'] = time();
  ?>
  <script>
  $(document).ready(function() {
  $("#welcome").fadeIn("slow");
   setTimeout(function(){
   $("#welcome").fadeOut("slow"); 
    setTimeout(function(){
     $("#welcome").html("<a href='logout.php'>Logga ut</a>");
     $("#welcome").fadeIn();
     }, 800);
   }, 5000);
  });
  </script>
  <strong id="welcome" style="display: none; color: #FFF; font-size: 10px;">Hej, <?php echo $FULL; ?>!</strong>
  <?php 
  } 
  }
  ?>



$(文档).ready(函数(){
$(“欢迎”).fadeIn(“慢”);
setTimeout(函数(){
美元(“#欢迎”)。淡出(“缓慢”);
setTimeout(函数(){
$(“#欢迎”).html(“”);
$(“#欢迎”).fadeIn();
}, 800);
}, 5000);
});
嘿
首先,它检查您是否已登录。接下来,如果设置了1stTime,如果设置了1stTime,则用瑞典语显示“注销”,如果设置了1stTime,则使用“Hi,NAME”进行介绍,然后在5秒后更改为“注销”(jquery)+设置会话


如何简化此操作?

您可以将jQuery代码简化为:

    $(document).ready(function() {
        $("#welcome").fadeIn("slow").delay(5000).fadeOut("slow").delay(800).html("<a href='logout.php'>Logga ut</a>").fadeIn();
    });
$(文档).ready(函数(){
$(“#欢迎”).fadeIn(“慢”).delay(5000).fadeOut(“慢”).delay(800.html(“”.fadeIn();
});

但是对于剩下的代码,我看不到任何方法可以使它变得更小或更简单

我发现将javascript、php和静态HTML分开而不是将它们都交织在一起更简单。这里几乎所有的“工作”都是javascript,我们从PHP需要的只是几个seision变量,可能还需要设置一个

我将使用隐藏输入,因为我不喜欢小的php标记,我认为这有助于演示php和JS在这种情况下的角色。我将
logout
intro
分为不同的元素,但这并不太重要,如果您愿意,可以将它们重新组合在一起

<strong id="logout" style="font-size: 10px;">   
   <a href="logout.php">   Logga ut   </a>   
</strong> 

<strong id="intro" style="color: #FFF; font-size: 10px;">

</strong>

<?php
    echo "<input type='hidden' id='hasUserId' value='" . isset($_SESSION['user_id'] . "' />";
    echo "<input type='hidden' id='hasPriorLogin' value='" . isset($_SESSION['1stTime'] . "' />";

   echo "<input type='hidden' id='fullName' value='" . isset($FULL) ? $FULL : 'noname' . "' />";

    if (!isset($_SESSION['1stTime']) $_SESSION['1stTime'] = time();
?>

<script>         
    $(document).ready(function() {   

       $("#intro").hide(); $("#logout").hide();  //start with both strong blocks hidden

       if ($("#hasUserId").val()) //everything is dependent on being logged in
       {
           if ($("#hasPriorLogin").val())    //not the users first time
           {
               $("#logout").fadeIn("slow"); 
           }
           else                            //the users first time
           {
                $("#intro").html("Hey" + $("#fullName").val() + "!");
                $("#intro").show();
                $("#intro").fadeOut("slow").delay(5000);
                $("#logout").fadeIn("slow").delay(5800);
           }
       }
   });      
</script>