Как ввести данные PHP в <link rel = "stylesheet" type = "text / css" href = "CSS / sheet.css" /> - PullRequest
0 голосов
/ 10 января 2012

У меня есть скрипт, в котором можно успешно показать ОС и браузер. Я сделал это так, чтобы он выводил скрипт CSS. Он разбивает вывод до восьми CSS-скриптов. (на данный момент) Это показывает Mac, ПК и ОС Ubuntu с IE, Firefox, Safari и Chrome в качестве основных браузеров. Сценарий находится в зачаточном состоянии, но пока работает. Я собираюсь почистить это позже.

Пожалуйста, не говорите мне, что get_browser () работает лучше, я работаю на сервере, который не позволяет ему работать.

список CSS это:

  • postcr.css
  • postff.css
  • postie.css
  • postmcr.css
  • postmff.css
  • postmsa.css
  • postsc.css
  • postuff.css

Сценарий таков:

<?php
//Written by Matt Ridge
//Kaboom Labs LLC.
//Web Site to be Announced.
//This is a script that will identify the OS and browser you are using. This also has a fix in where Chrome shows up as Chrome, and not show up as Safari by accident. 



//Booleans to set OS and Browser to False.
$os = false;
$browser = false;
//Booleans for Web Browser & OS Functions.
$info = $_SERVER['HTTP_USER_AGENT'];
$xp = 'Windows NT 5.1';
$vista = 'Windows NT 6.0';
$win7 = 'Windows NT 6.1';
$ubuntu = 'Ubuntu';
$ie106 = 'ie106';
$ie10 = 'ie10';
$ie9 = 'ie9';
$ie8 = 'MSIE 8.0;';
$ie7b = 'MSIE 7.0b;';
$ie7 = 'MSIE 7.0;';
$chrome = '/Chrome/';
$safari = '/Safari/';
$firefox = '/Firefox/';


//Operating Systems
if (stristr($info, "Windows NT 5.1")) {echo 'post';}
if (stristr($info, "Windows NT 6.0")) {echo 'post';}
if (stristr($info, "Windows NT 6.1")) {echo 'post';}
if (stristr($info, "Ubuntu")) {echo 'postu';}
if (stristr($info, "Mac OS")) {echo 'postm';}


//Web Browsers
if (stristr($info, "Chrome") !== FALSE) {stristr($info,"Safari");
        $chrome = 'cr.css';
            echo 'cr.css';}
elseif (stristr($info, "Safari")) {echo 'sa.css';}
if (stristr($info, "Firefox")) {echo 'ff.css';}
if (stristr($info, "MSIE 7.0;")) {echo 'ie.css';}
if (stristr($info, "MSIE 7.0b;")) {echo 'ie.css';}
if (stristr($info, "MSIE 8.0;")) {echo 'ie.css';}
if (stristr($info, "MSIE 9.0;")) {echo 'ie.css';}
if (stristr($info, "MSIE 10.0;")) {echo 'ie.css';}
if (stristr($info, "MSIE 10.6;")) {echo 'ie.css';}



//If OS or Browser not found in list.
if ($ubuntu || $xp || $vista || $win7)
$os = true;

if($firefox || $chrome || $safari || $ie106 || $ie10 || $ie9 || $ie8 || $ie7b || $ie7)
$browser = true;

if(!$browser || !$os){

echo'<strong>';
echo '<br />' . $_SERVER['HTTP_USER_AGENT'] . '<br /><br />Administrator someone in your work force is using an unsupported browser or OS, please email this information to the developer of the web page you are using. It will allow your browser/OS combination  to be used correctly. Sorry for the inconvenience.</strong> <br /><br />Please copy and paste the text above and send it to your web administrator. It will explain everything he/she needs to do.<br />';}

?>

Скрипт скажет человеку скопировать и вставить инструкцию на тот случай, если он использует неподдерживаемый браузер, чтобы администратор скрипта мог обновить код.

То, что я хочу сделать, это сделать вывод этого скрипта здесь:

<link rel="stylesheet" type="text/css" href="CSS/sheet.css" />

Я хочу заменить файл sheet.css на приведенный выше скрипт.

У меня написано так:

<link rel="stylesheet" type="text/css" href="CSS/<?php require ('css.php');?>" />

Я хотел бы думать, что это возможно, но пока кажется, что это не так. Может кто-нибудь ответить на последний кусочек моего затруднения. Я не могу представить, что это невозможно. Если кто-то может помочь, это будет с благодарностью.

1 Ответ

1 голос
/ 10 января 2012

Путь, который он на самом деле создает:

/CSS/%EF%BB%BFpostcr.css

Может быть, намного проще просто установить переменную в вашем файле. Таким образом, вам не нужно беспокоиться о каких-либо посторонних данных, поступающих.

//in the included file (shortened obviously)
$myCSS = '';
$myCSS .= 'post';
$myCSS .= 'cr.css';

//in the displaying file
... href="/CSS/<?php echo $myCSS; ?>"> ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...