所以我有一个.php网页,其中包含一个登录系统顶部的PHP脚本。 在这下面是用于显示网页的HTML。现在在Firefox或Chrome中显示效果不错,但在Internet Explorer中,网站显得格外震撼。我发现删除PHP后格式化是正确的。以下是页面顶部使用的PHP代码:
<?php
session_start();
if(!session_is_registered(myusername)){
header("location:http://www.mvaeng.com.au/Login");
}
$myusername = $_SESSION["myusername"];
$mypassword = $_SESSION["mypassword"];
$host="localhost"; // Host name
include 'DATA.php';
$db_name="mvaengco_Loginsystem"; // Database name
$tbl_name="Members"; // Table name
mysql_connect("$host", "$username", "$password")or
die(mysql_error());
mysql_select_db("$db_name")or die(mysql_error());
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);
$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and
password='$mypassword'";
$result=mysql_query($sql);
$count=mysql_num_rows($result);
if(!($count==1)){
header("location:http://www.mvaeng.com.au/Login");
}
$htaccess = 'Files/.htaccess';
$ip .= $_SERVER['REMOTE_ADDR'];
$line1ht .= "order deny,allow \r\n";
$line2ht .= "deny from all \r\n";
$line3ht .= "allow from $ip \r\n";
file_put_contents($htaccess, $line1ht);
file_put_contents($htaccess, $line2ht, FILE_APPEND | LOCK_EX);
file_put_contents($htaccess, $line3ht, FILE_APPEND | LOCK_EX);
?>
PHP代码下面的HTML代码的第一部分:
<head>
<title>Client File System - Logged In</title>
<meta charset="utf-8">
<link href="http://mvaeng.com.au/css/reset.css" rel="stylesheet" type="text/css" />
<link href="http://mvaeng.com.au/css/layout.css" rel="stylesheet" type="text/css" />
<link href="http://mvaeng.com.au/css/style.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="http://mvaeng.com.au/js/dropdown.js"> </script>
<script src="http://code.jquery.com/jquery-1.8.1.min.js" type="text/javascript"></script>
<script src="jquery.easing.js" type="text/javascript"></script>
<script src="jqueryFileTree.js" type="text/javascript"></script>
<link href="jqueryFileTree.css" rel="stylesheet" type="text/css" media="screen" />
<script type="text/javascript">
var x="../../MASTER/Files/";
function openFile(file) {
var fileA=file.replace("/","/BIN_1/");
window.location = fileA;
}
$(document).ready( function() {
$('#fileTree').fileTree({ root: '../../BIN_1/Files/', script: 'connectors/jqueryFileTree.php' }, function(file) {
openFile(file);
});
});
</script>
</head>
那么,我该如何解决这个问题呢? 谢谢!
答案 0 :(得分:0)
嗯,IE是一个非常讨厌的浏览器。它以不同的方式解释html,特别是涉及空白区域或空格时......
无论如何,如果跨浏览器兼容性对您来说非常重要,我建议您使用正确放置的div(或其他匹配元素)设计页面,并将文本放在里面。
PHP代码可能会导致一些破坏你的html输出的不需要的空格,IE不知道如何处理......
答案 1 :(得分:0)
尝试在php脚本的开头使用ob_start(),在文件末尾使用ob_flush()。
答案 2 :(得分:0)
如果你的html中有其他PHP片段,那么删除IE中的顶部部分可能会产生你所看到的变化。除此之外,我没有看到顶级PHP代码的存在与否会产生什么视觉效果。
不在一边,你需要切换到mysqli。 PHP中的mysql在90年代使用,不再是编写任何严肃程序的正确方法。你越早做出改变,你以后就越不需要改变。 mysqli真的没那么不同。看看一些例子,你就可以轻松地抓住它们了。