Skocz do zawartości
Szukaj na Pecetowiczu
  • Utwórz konto

Jak wywołać zawartość pliku PHP bez ramki iframe ?


Rekomendowane odpowiedzi

Witam. Otoz mam takie pytanie. Chcialbym wywolac z pliku php jedna wartosc ale bez ramki iframe.  Na screenie zaznaczylem dokladnie czerwona ramka co chcialbym wywolac.

php.png

Odnośnik do komentarza
Udostępnij na innych stronach

A jak include'ujesz teraz ten plik stats2.php?

Odnośnik do komentarza
Udostępnij na innych stronach

aktualnie poprzez ramke iframe

Odnośnik do komentarza
Udostępnij na innych stronach

Możesz to zrobić na dwa sposoby:

  1. Wyodrębnić znacznik `b` do osobnego pliku. Edytować stats2.php i zainclude'ować ten nowy plik. Więc w tym miejscu gdzie teraz inclue'ujesz stats2 jako iframe użyjesz po prostu tego nowego pliku PHP.
  2. Sposób drugi, to zabawa z DomCrawlerem - trochę bardziej zaawansowane rozwiązanie, ale do ogarnięcia. No i pozbywasz się dodatkowych i zbędnych plików.
Odnośnik do komentarza
Udostępnij na innych stronach

<? include('nazwa.php'):?>

Odnośnik do komentarza
Udostępnij na innych stronach

(edytowane)
13 godzin temu, włoszka napisał:

<? include('stata2.php');?>

Niestety nic mi nie wywoluje 

Edytowane przez Koper2
Odnośnik do komentarza
Udostępnij na innych stronach

index masz .html czy .php?

Odnośnik do komentarza
Udostępnij na innych stronach

php mam

Odnośnik do komentarza
Udostępnij na innych stronach

widzę że masz stronę na wp, nie podałeś gdzie chcesz wywołać ten plik php

Odnośnik do komentarza
Udostępnij na innych stronach

chce to wywolac na panelu radiowym pod tym adresem https://radio-relax.pl/radiopanel

 

Odnośnik do komentarza
Udostępnij na innych stronach

Chce to dokladnie wstawic w tym kodzie zamiast tej ramki iframe ktora jest podana w kodzie

 

<?php
$personality = new MySettings('personality-sitename', 'all');
$sitename = $personality->getValue();
?>
<div id="siteTopMenu" class="d-flex justify-content-between bd-highlight mb-3">
    <div class="p-2 bd-highlight"></div>
	<iframe src="https://radio-relax.pl/stata2.php" style="width:30%;background-color:transparent;height:35px;border-width:0"></iframe>
	<div  class="p-2 bd-highlight inline"><?include('stata2.php');?></div>

    <div  class="p-2 bd-highlight sitename"><?=$sitename;?></div>
	
            

    <div  class="p-2 bd-highlight inline"><p class="d-inline halo"><?=$MyTrans->getText('login-info-userhalo').'</p> <p class="d-inline username">'.$USER->getName();?></p>!</div>
	
</div>

<div id="sidebarCollapse" class="active">
    <span></span>
    <span></span>
    <span></span>
</div>


<script>
$(document).ready(function(){
    $("#sidebarCollapse").click(function(){
        if($(this).hasClass( "active" )){
            $("#sidebarCollapse").animate({marginLeft: '-=200px'}, 600);
            closeNav();
        }else{
            $("#sidebarCollapse").animate({marginLeft: '+=200px'}, 500);
            openNav();

        }
    })
})
</script>

 

Odnośnik do komentarza
Udostępnij na innych stronach

Wywal znacznik iframe, bo nie jest potrzebny.

Co do include, to musisz podać poprawną ścieżkę, bo nie wiadomo w jakiej lokalizacji są oba pliki. Wrzuć tu jeszcze screen z drzewa katalogów.

 

PS. Myslałem, że ten plik to stats2 xD

Odnośnik do komentarza
Udostępnij na innych stronach

Kod ktory podalem wyzej to jest plik website-nav-left.php a plik stata2.php dla ulatwienia po prostu wrzucilem do tej samej lokalizacji co website-nav-left.php i oby dwa pliki sa w katalogu _include. Kombinowalem juz na rozne sposoby i nie wchodzi mi to.

Odnośnik do komentarza
Udostępnij na innych stronach

A to skąd leci? W sensie, skąd wiesz, że taka zmienna istnieje i jest obiektem?

<?php

$stats->get('uniquelisteners');

W teorii, w pliku website-nav-left.php możesz po prostu wkleić to:

<?php include('stata2.php'); ?>

Tylko, że wyświetli Ci całego HTML-a, a tego nie chcesz. Dlatego - jeżeli nie używasz pliku stata2.php w innych lokalizacjach, to możesz w nim zostawić po prostu:

<?php

include( ... );
include( ... );

?>

<b>Słuchaczy &nbsp;<?php echo $stats->get('uniquelisteners'); ?></b>

 

Odnośnik do komentarza
Udostępnij na innych stronach

(edytowane)

stata2.php korzysta jeszcze z dwóch plików php sc-klasa.php i ustawienia.php gdzie w tych plikach są ustawienia portu radia adresu hasła radia itp.  I w stata2.php jest include do tych właśnie dwóch plików.  

 

 

Edytowane przez Koper2
Odnośnik do komentarza
Udostępnij na innych stronach

To jest kod pliku sc-klasa.php 

<?php
/**
* SHOUTcast 2 statistics class
*
* @author PortalRadiowy.pl
* @copyright 2016 PortalRadiowy.pl
* @version 1.3
*/

class shoutcast2stats {
    private $_ip;
    private $_port;
    private $_sid;
    private $_json;
 
    public function __construct($ip, $port, $sid=1)
    {
        $this->_ip = $ip;
        $this->_port = $port;
        $this->_sid = $sid;
        $this->initCurl();
    }
 
    private function initCurl()
    {
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, 'http://'.$this->_ip.':'.$this->_port.'/stats?sid='.$this->_sid.'&json=1');
        curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (PortalRadiowy.pl)');
        curl_setopt($ch, CURLOPT_HEADER, 0);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_TIMEOUT, 3);
        $curl_exec = curl_exec($ch);
        $this->_json = ($curl_exec ? json_decode(iconv('UTF-8', 'UTF-8//IGNORE', $curl_exec)) : false);
        curl_close($ch);
    }
   
    public function get($name, $name_dj='')
    {
        if ($name == 'streamstatus') {
            if ($this->_json == false) {
                return 0;
            } elseif ($this->_json->streamstatus == 0) {
                return 1;
            } else {
                return 2;
            }
        } elseif (isset($this->_json->$name) && $name == 'dj' && !empty($name_dj)) {
            $dj_json = json_decode(substr(preg_replace('/\},[\s]*\{/', ',', preg_replace(array('/\([\s]*"/', '/"[\s]*\)/', '/"[\s]*,/'), array('{"', '"}', '":'), preg_replace_callback('/\\\\(\d+)/m', function($matches) { return iconv('Windows-1250', 'UTF-8//IGNORE', chr($matches[1])); }, $this->_json->dj))), 1, -1));
            if (isset($dj_json->$name_dj)) {
                return htmlspecialchars($dj_json->$name_dj);
            }
        } elseif (isset($this->_json->$name)) {
            return htmlspecialchars($this->_json->$name);
        }
        return '';
    }
}
 
 
 
include('ustawienia.php');
$stats = new shoutcast2stats($ip, $port);

 

A ustawien.php kodu nie podsylam bo tam jest tylko jak pisalem wczesniej ip/port serwera itp. 

I to jeszcze kod stata2.php 

<?php include('sc-klasa2.php');?>
 <?php include('ustawienia2.php');?>
<!doctype html>
<html lang="pl">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <link rel="stylesheet" href="<?PHP echo $url?>/css/bootstrap.css">
    <link rel="stylesheet" href="<?PHP echo $url?>/css/styl.css">
    <link rel="stylesheet" href="<?PHP echo $url?>/css/animate.css">
	<meta http-equiv="refresh" content="30"> 

</head>
<style type="text/css">
body {
	background: transparent!important;
}

  }
}
h1,h3,h {
	font-size: 15pt;
}
</style>

<body>
 
 <h>Słuchaczy  &nbsp;<?php echo $stats->get('uniquelisteners'); ?></h>
 
</body>
</html>

 

Odnośnik do komentarza
Udostępnij na innych stronach

No i dobrze. Edytuj plik stata2.php tak jak pisałem wcześniej 😉 

PS. Nie ma takiego znacznika jak `h` w HTML. Chyba, że to Twój własny tag.

Odnośnik do komentarza
Udostępnij na innych stronach

Kontynuuj dyskusję

Dołącz do Pecetowicza, aby kontynuować dyskusję w tym wątku.

  • Dodaj nową pozycję...
  • Dodaj nową pozycję...