2013-09-05 4 views
1

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

Я знаю, что это можно сделать, но я не уверен.

Спасибо.

<?php 
$ua=$_SERVER['HTTP_USER_AGENT']; 
switch(true) { 
    case stripos($ua,'android') : 
    $device = 'android'; break; 
    case stripos($ua,'ipad') : 
    $device = 'ipad'; break; 
    case stripos($ua,'iphone') : 
    $device = 'iphone'; break; 
} 
?> 
<ul class="pageitem"><li class="button android"><input name="Submit" value="App Downloads" onclick="window.location='apps.php?id=<?php echo $device; ?>' " type="submit" /></li></ul> 
+0

Почему андроид TAG? –

+0

Я не знаю. Возможно, измените его на мобильный. – kevstarlive

+1

вопрос о андроиде или вопрос ios ?? –

ответ

1

Попробуйте с default случае. Если не соответствует, будет выполняться случай по умолчанию.

<?php 
$ua=$_SERVER['HTTP_USER_AGENT']; 
switch(true) { 
    case stripos($ua,'android') : 
    $device = 'android'; break; 
    case stripos($ua,'ipad') : 
    $device = 'ipad'; break; 
    case stripos($ua,'iphone') : 
    $device = 'iphone'; break; 
    default: 
    $device = false; 
} 
?> 

<?php if($device): ?> 
<ul class="pageitem"><li class="button android"><input name="Submit" value="App Downloads" onclick="window.location='apps.php?id=<?php echo $device; ?>' " type="submit" /></li></ul> 
<?php endif; ?> 
2

Как насчет ...

<?php 
$ua=$_SERVER['HTTP_USER_AGENT']; 
switch(true) { 
    case stripos($ua,'android') : 
    $device = 'android'; break; 
    case stripos($ua,'ipad') : 
    $device = 'ipad'; break; 
    case stripos($ua,'iphone') : 
    $device = 'iphone'; break; 
    default: 
    $device = 'unknown'; 
} 

if($device != 'unknown') 
{ 
?> 
<ul class="pageitem"><li class="button android"><input name="Submit" value="App Downloads" onclick="window.location='apps.php?id=<?php echo $device; ?>' " type="submit" /></li></ul> 
<?php } ?> 

Не тестировался, мой PHP ржавый, поэтому не уверен, если я сделал случай по умолчанию правый ..

2

Попробуйте это,

<?php 
    $device=''; 
    $ua=$_SERVER['HTTP_USER_AGENT']; 
    switch(true) { 
     case stripos($ua,'android') : 
     $device = 'android'; break; 
     case stripos($ua,'ipad') : 
     $device = 'ipad'; break; 
     case stripos($ua,'iphone') : 
     $device = 'iphone'; break; 
    } 
    if($device != '') 
    { 
     echo '<ul class="pageitem"><li class="button android"> 
      <input name="Submit" value="App Downloads" onclick="window.location=\'apps.php?id='.$device.'\'" type="submit" /> 
      </li></ul>'; 
    } 
?> 

Альтернативно попробовать simple one с помощью preg_match

<?php 
    $ua=$_SERVER['HTTP_USER_AGENT']; 
    if (preg_match('/android|ipad|iphone/i', $ua)) { 
     echo '<ul class="pageitem"><li class="button android"> 
      <input name="Submit" value="App Downloads" onclick="window.location=\'apps.php?id='.$device.'\'" type="submit" /> 
      </li></ul>'; 
    } 
?> 
Смежные вопросы