2013-08-26 2 views
0

CSS Refresh을 사용하여 친구가 PHP 및 'fopen'을 사용하여 div 태그를 원격으로 표시하거나 숨길 수있게했습니다. 그는 휴가 중이며 현재 연락 할 수 없습니다. 아이디어는 버튼을 눌렀을 때 CSS 파일을 변경한다는 것이 었습니다.div 태그를 원격으로 표시하고 숨기기

이 기능의 목적은 온라인 미팅을 위해 명령을 사용하여 PDF로 iframe을 원격으로 표시하는 것입니다. 내가 TeamViewer Meeting이나 뭔가 simular를 사용하지 않는 이유는 내가 사용해야하는 인터넷 연결이 지루하기 때문입니다. div 태그에서 PDF를로드하면 다운로드하고 CSS 파일이 표시되도록 변경할 준비가 된 것 같습니다.

나는 이전 슬라이드 버튼을 추가하는 시도하기 전에 그것은 (단지 다음 슬라이드 버튼) 작업을했다

: 내가 직접 변경 되었기 때문에 나는 그것이 작동 할 때 얼마나 다시 얻을 수

<?php 
if(isset($_POST['submit'], $_POST['next'])) 
{ 
$slide = $_POST['next']; 
$slide = $_POST['previous']; 
$slide_next = $slide + 1; 
$slide_previous = $slide - 1; 
$slide_current = $slide; 
header("Location: next.php?slide=".$slide_next.""); 



} else { 
if(isset($_GET['slide'])) 
{ 
$slide_next = $_GET['slide']; 
} 
else 
{ 
$slide_next = "2"; 
} 
echo (' 
<form action="" method="post"> 
<input type="hidden" name="next" value="'.$slide_next.'" /> 
<input type="submit" name="submit" value="Go to Slide '.$slide_next.'" /> 
</form> 
'); 
} 
$myFile = "../css/changer.css."; 
$fh = fopen($myFile, 'w') or die("Can't open zee file - error woo woo error"); 
$stringData = "#content$slide_current {\n"; 
fwrite($fh, $stringData); 
$stringData = " visibility: visible;\n"; 
fwrite($fh, $stringData); 
$stringData = "}\n"; 
fwrite($fh, $stringData); 
$stringData = ".content:not(#content$slide_next) {\n"; 
fwrite($fh, $stringData); 
$stringData = " visibility: hidden;\n"; 
fwrite($fh, $stringData); 
$stringData = " height: 0px;\n"; 
fwrite($fh, $stringData); 
$stringData = "}\n"; 
fwrite($fh, $stringData); 
fclose($fh); 
?> 

을 FTP를 어디에 내 친구에 의해 백업을 저장하고 그들은 나에게 즉시 액세스 할 수 없습니다.

도움을 주시면 감사하겠습니다. 감사.

+0

시작하거나 당신의 $ 슬라이드 = $ _POST [ '다음'] 또는 $ 슬라이드 = $ _POST [ '이전'], 당신은 그것을 단지에서 값을 가지고이 길을 떠날 경우 $ _POST [ 'previous'] 다른 하나를 덮어 쓰기 때문에 – Jim

+0

현재 어떻게 작동합니까? 그것들 중 어떤 것이 작동하고 있습니까? header ("Location : next.php? slide =". $ slide_next. "");'to – Vector

답변

0

당신을 이해했다면, 사이트를 열어 놓은 모든 브라우저에서 div 요소의 가시성을 변경해야합니다. 당신이 선택한 방식은 매우 이상합니다. jQuery의 ajax와 setInterval을 사용할 수 있습니다. 사용자를위한

PHP :

<?php 
$curSlide = file_get_contents("/tmp/slidenumber.txt");//Get current active slide 
if (!isset($_POST['testSlideChange'])): 
//If there are no POST var, saying that this is an ajax update request, output the HTML page to browser: 
?>  
<div id="slide-1" class="slide <?php if($curSlide==1) echo 'visible'?>">Content of slide1</div> 
<div id="slide-2" class="slide <?php if($curSlide==2) echo 'visible'?>">Content of slide2</div> 
<div id="slide-3" class="slide <?php if($curSlide==3) echo 'visible'?>">Content of slide3</div> 
<div id="slide-4" class="slide <?php if($curSlide==4) echo 'visible'?>">Content of slide4</div> 
<?php else: //else, if we have POST-var, just return current slide as a number 
echo $curSlide; 
endif; ?> 

CSS :

slide 
{ display:none; } 

slide.visible 
{ display:block; } 

JS :

$(document).ready(function(){ 
    //test for slide change every 1 second 
    setInterval(testSlideChange,1000); 
}); 

function testSlideChange() 
{ 
    //make post ajax request 
    $.post('http://my.web.site.com/this_page.php', {'testSlideChange' : 1} , function(data) { 
     //if result slide hasn't got class "visible", lets take it from the visible one, and give to a new one. 
     if (!$('#slide-' + data).hasClass('visible') 
     { 
     $('.slide.visible').removeClass('visible'); 
     $('#slide-' + data).addClass('visible'); 
     } 
    } 
} 

방금 ​​또 다른 번호를 기입 한 서버 측에서 슬라이드를 변경하려면 예를 들어 /tmp/slidenumber.txt 파일은 간단한 서버 PHP 스크립트 또는 수동으로 수행 할 수 있습니다.


어떻게 작동하는지 예를 만들었습니다. 실례!

사용자 페이지 : http://kovka54.ru/test/index.php (사용자는 여기에 슬라이드를 볼 수 있습니다)
의 관리 페이지 : http://kovka54.ru/test/admin.php
열기 (두 브라우저에서 예를 들어,) 별도의 창에서이 페이지 (관리자가 여기 활성 슬라이드를 설정할 수 있습니다) 및 시청 방법 관리자 측에서 슬라이드를 변경하면 사용자의 슬라이드가 변경됩니다.
예제는 index.php, admin.php 및 slidenumber.txt의 세 파일로 구성되어 있습니다 (처음에는 단일 숫자 만 포함하고 따옴표없이 "1"입니다). index.php의 내용 : http://pastebin.com/zge3MbAQ, 내용 if admin.php : 이름을 변경하여 http://pastebin.com/J5eDEbSe

+0

나는 이것을 모두 모아서 보여 주었고 모든 div를 보여 주었다. txt에서 pecified. http://86.13.162.21/new_meeting/ – JosephFTaylor

+0