2015-07-04 3 views
0

Есть ли способ использовать этот код внутри html-файла?Проверка совместимости PHP внутри HTML

Я попробовал все возможное и не могу заставить его работать ...

Любая помощь будет принята с благодарностью .. Спасибо!

$isUDIDProtected=TRUE; 
$compatibleVersions=array("8.1.1","8.1","8.0"); 

Я был верхний код для каждого файла PHP

if ($isUDIDProtected) 
{ 
     echo "<p style=\"color: red;\">This package is UDID protected! You must have your device registered to download this package</p>"; 
    } 

    if ($compatibleVersions) 
{ 
     $uaString = $_SERVER["HTTP_USER_AGENT"]; 
     if (preg_match("/(.*) OS ([0-9]*)_([0-9]*)_([0-9]*) (.*)/", $uaString)) { 
      $version = preg_replace("/(.*) OS ([0-9]*)_([0-9]*)_([0-9]*) (.*)/","$2.$3.$4", $uaString); 
     } else if (preg_match("/(.*) OS ([0-9]*)_([0-9]*) (.*)/", $uaString)) { 
      $version = preg_replace("/(.*) OS ([0-9]*)_([0-9]*) (.*)/","$2.$3", $uaString); 
     } 
     if ($version) { 
      if (in_array($version, $compatibleVersions)) { 
       echo "<p style=\"color: green;\">This package is compatible with your iOS version :)</p>"; 
      } else { 
       echo "<p style=\"color: #FFCC00\">This package is not comfirmed to work on your iOS version</p>"; 
      } 
     } 
    } 

Файл HTML находится ниже

<ul data-role="listview" data-inset="true"> 
<li data-role="list-divider"><center>Compatibility</center></li> 
<li><center>(show yes or no)</center></li> 
</ul> 

ответ

1

Ваш код - это PHP-код. Он не будет работать внутри файла «html». Вам нужно поместить его в файл PHP (с соответствующими тегами php) и запустить его через сервер. Будучи сказал это, вы можете иметь файл "compat.php" с кодом:

$compatibleVersions=array("8.1.1","8.1","8.0"); 

    if ($compatibleVersions) 
{ 
     $uaString = $_SERVER["HTTP_USER_AGENT"]; 
     if (preg_match("/(.*) OS ([0-9]*)_([0-9]*)_([0-9]*) (.*)/", $uaString)) { 
      $version = preg_replace("/(.*) OS ([0-9]*)_([0-9]*)_([0-9]*) (.*)/","$2.$3.$4", $uaString); 
     } else if (preg_match("/(.*) OS ([0-9]*)_([0-9]*) (.*)/", $uaString)) { 
      $version = preg_replace("/(.*) OS ([0-9]*)_([0-9]*) (.*)/","$2.$3", $uaString); 
     } 
     if (isset($version) && in_array($version, $compatibleVersions)) { 
      echo "<p style=\"color: green;\">This package is compatible with your iOS version :)</p>"; 
     } else { 
      echo "<p style=\"color: #FFCC00\">This package is not comfirmed to work on your iOS version</p>"; 
     } 
    } 

Затем, в другом файле "htmlPage.php", что-то вроде:

<?php 
$isUDIDProtected=TRUE; 
if ($isUDIDProtected) 
{ 
     echo "<p style=\"color: red;\">This package is UDID protected! You must have your device registered to download this package</p>"; 
die(); 
    } 
?> 
<ul data-role="listview" data-inset="true"> 
<li data-role="list-divider"><center>Compatibility</center></li> 
<li><center><?php include "compat.php" ?></center></li> 
</ul> 
+0

Не следует ли размещать файл htmlPage.php внутри .html-файла? – willmays1

+0

Нет, «htmlPage.php» должен быть самой страницей. Если вы поместите его в файл «html», ваш код не будет работать, потому что он не будет знать, как анализировать PHP-код. Он просто покажет «» Как обычный текст. – Mindastic

+0

Чем бы я помещался внутри моего html-файла, чтобы загрузить два эха в файле compat.php – willmays1

1

Вам нужно добавить код PHP под PHP открывающих и закрывающих тегов в HTML код в соответствии с ситуацией if else.

+0

А "HTML" файл не распознает php-код. – Mindastic

+0

Да, это правда, я предполагал, что код был записан в файл расширения php. Не в файле, у которого есть расширение .html. Вышеупомянутый PHP-код будет работать только в том случае, если он имеет расширение .php, а не файл с другими расширениями. Поэтому убедитесь, что вы пишете код внутри файла расширения php, и мы также можем использовать файл .htaccess, чтобы показать php-файл в .html в веб-браузере. –

Смежные вопросы