首页 > 解决方案 > 如何在 jquery 函数中插入 php 代码

问题描述

我正在编写一个用于文件共享的 php 站点。我在向用户隐藏删除文件选项并将其显示给站点管理员时遇到了问题,实际登录的用户名存储在 php 会话中,因此隐藏或显示删除选项将在 php 条件下使用。问题是 php 代码从来没有在删除 img 标签上添加“隐藏”选项。

在第一步中,js、jquery 和 php 代码被分隔在两个文件中,所以我不得不将 jquery 代码复制到 index.php(主页)中,因为我没有其他选项可以将登录用户从 php 会话抓取到 js 文件。

function render(data) {
  var scannedFolders = [],
    scannedFiles = [];

  if (scannedFiles.length) {
    scannedFiles.forEach(function(f) {
      var fileSize = bytesToSize(f.size),
        name = escapeHTML(f.name),
        fileType = name.split('.'),
        icon = '<span class="icon file"></span>';

      fileType = fileType[fileType.length - 1];

      icon = '<span class="icon file f-' + fileType + '">.' + fileType + '</span>';
      var x = f.path.replace(/\/\/+/g, '/');
      var file = $('<li class="files"><a href="'+ f.path+'" title="'+ f.path +'" class="files">'+icon+'<span class="name">'+ name +'</span> <span class="details">'+fileSize+'</span></a></li><img src="assets/supp.png" height="42" width="42" id="logo" onclick=del("'+encodeURIComponent(x)+'")   if($_SESSION['username']!='info') {?> hidden <?php } ?>>');
      file.appendTo(fileList);
    });
  }

标签: javascriptphpjqueryhtml

解决方案


<?php if($_SESSION['username']!='info') echo 'hidden' ?>

您需要将 php 代码放入 php 标签中。您的示例代码中有语法错误。

这样,如果您的if陈述为真,它将显示“隐藏”参数,导致您的 html 元素不可见。


推荐阅读