Author Topic: RadioDJ web export  (Read 487 times)

Marcel

  • New User

  • Offline
  • *
  • 47
RadioDJ web export
« on: December 28, 2018, 12:34:27 PM »
Goedemiddag,

Ik wilde gaan testen met de web export functie van RadioDJ. Ik gebruik RadioDJ v2.0.0.3. en heb de code gebruikt zoals Marius hem in zijn uitleg heeft gegeven. Netjes een .php file gemaakt en in dezelfde map een tekstbestand in mijn hostingpakket. Van het schrijven van php files heb ik geen kaas gegeten, maar heb het wachtwoord aangepast in de .php file en ingevoerd bij radio dj. Nu blijft het tekstbestand gewoon leeg.

Moet ik nog wat aanpassen in de .php, of moet deze gewoon werkend zijn?

Code: (php) [Select]
<?php

If ((isset($_POST["xpwd"])) && (isset($_POST["title"]))) {
   $xpwd= stripcslashes($_POST["xpwd"]);
   if ($xpwd== 'changeme') {
      $data = stripcslashes($_POST["title"]);

      $Handle = fopen("data.txt", 'w');
      fwrite($Handle, $data);
      fclose($Handle);
   }
} Else {
   echo "Go away!";
}

?>



Jhonny

  • Moderator
  • Hero Member

  • Offline
  • *****
  • 3455
  • Personal Text
    Peace, enjoy life.it's over before you've lived it
    • Jhonny's RadioDJ tutorials.
Re: RadioDJ web export
« Reply #1 on: December 28, 2018, 02:00:06 PM »
Een lange uitleg in het verschiet  :hihi:
In welke file naam wil je de gegevens laten zien? (index.php, nu speeld.php, wat makelijker voor de uitleg)
R.T.F.M. means to me, Read The Fantastic Messages.
Make things simple, but don't make simple things simpler!
I don't do drugs, I do tuts. ( ͡° ͜ʖ ͡°) visit https://radiodj.info

Testing RadioDJ v2.0.1.6 Beta

Marcel

  • New User

  • Offline
  • *
  • 47
Re: RadioDJ web export
« Reply #2 on: December 28, 2018, 02:47:36 PM »
Haha, ik hoop niet te lang.

Heb een nowplaying.php file aangemaakt.

Jhonny

  • Moderator
  • Hero Member

  • Offline
  • *****
  • 3455
  • Personal Text
    Peace, enjoy life.it's over before you've lived it
    • Jhonny's RadioDJ tutorials.
Re: RadioDJ web export
« Reply #3 on: December 28, 2018, 11:40:13 PM »
om de file welke de code bevat op te vragen doe ik dit met een java refresh.note ik heb een folder met de naam inc/ van daar dat dit in de refresh staat.

in de file  nowplaying.php plaats je de onderstaande code ergens tussen de <head> en </head> tags.
op de plaats in de  file  nowplaying.php plaats je waar het moet toonen wat er speeld <div id="liveshow-container"></div> elke 10 sec. word deze geupdate.

Code: [Select]
<script>
 $(document).ready(function() {
     $("#liveshow-container").load("inc/song_update.php");
   var refreshId = setInterval(function() {
    $("#liveshow-container").load('inc/song_update.php);
    }, 10000); //set refresh time 10.000 = 10 sec
   $.ajaxSetup({ cache: false });
});
</script>
Mijn song_update.php is anders als welke jij hebt.ik wil ook laten zien als het een request track is.
Code: [Select]
<?php
include_once('comm.php');
include_once(
'conn.php');
include_once(
'lang.php');
date_default_timezone_set($timezone);
$datafile "data.txt";
$lines2display 1;

function 
tailCustom($filepath$lines 1$adaptive true) {
        
// Open file
        
$f = @fopen($filepath"rb");
        if (
$f === false) return false;

        
// Sets buffer size
        
if (!$adaptive$buffer 4096;
        else 
$buffer = ($lines 64 : ($lines 10 512 4096));

        
// Jump to last character
        
fseek($f, -1SEEK_END);

        
// Read it and adjust line number if necessary
        // (Otherwise the result would be wrong if file doesn't end with a blank line)
        
if (fread($f1) != "\n"$lines -= 1;

        
// Start reading
        
$output '';
        
$chunk '';

        
// While we would like more
        
while (ftell($f) > && $lines >= 0) {
            
// Figure out how far back we should jump
            
$seek min(ftell($f), $buffer);
            
// Do the jump (backwards, relative to where we are)
            
fseek($f, -$seekSEEK_CUR);
            
// Read a chunk and prepend it to our output
            
$output = ($chunk fread($f$seek)) . $output;
            
// Jump back to where we started reading
            
fseek($f, -mb_strlen($chunk'8bit'), SEEK_CUR);
            
// Decrease our line counter
            
$lines -= substr_count($chunk"\n");
        }
        
// While we have too many lines
        // (Because of buffer size we might have read too many)
        
while ($lines++ < 0) {
            
// Find first newline and remove all text before that
            
$output substr($outputstrpos($output"\n") + 1);
        }

        
// Close file and return
        
fclose($f);
        return 
trim($output);
}

if ((isset(
$_POST["xpwd"])) && (isset($_POST["title"]))) {
   
$xpwdstripcslashes($_POST["xpwd"]);
   if (
$xpwd == $pswd) { //please change the password here and in now playing info plugin!
  
      
$data stripcslashes($_POST["title"]);

      
$data str_replace('\'(\'''<br /><br />'.$lang['REQUESTED_BY'].' '$data);
      
$data str_replace('\':\'''<br /> '.$lang['MESSAGE'].'.<br />'$data);
      
$data str_replace('\')\''''$data);
      
$data str_replace(' - ''<p><sub><span style="font-size: 11pt">'.$lang['PLAY_FROM_WITH'].'</span></sub></p>'$data);

// Select the track type.  $artist$ - $title$ '($request_username$: $request_message$)'
$con_check"SELECT *, history.duration-TIMESTAMPDIFF(SECOND, history.date_played, NOW()) AS remaining
FROM history, songs
WHERE songs.title = history.title AND songs.artist = history.artist
AND history.song_type = 0
ORDER BY history.date_played DESC
LIMIT 1"
;

$result mysqli_query($conn$con_check);

while(
$row mysqli_fetch_assoc($result)) {
$track_num $row['song_type'];
}

if (
$track_num == '0'){

      
$Handle fopen($datafile'w');
      
fwrite($Handle$data "\n");
      
fclose($Handle);
      }
   }
} Else {
?>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
 <meta charset="utf-8">
  </head>
  <body>
    <div id="main">
    <?php
        $str
tailCustom($datafile$lines2display);
        
$str nl2br($strtrue); // for XHMTL (in other words <br />). Use false for <br>. i.e $str = nl2br($str, false);
        
echo $str;
    
?>

    </div>
 
</body>
</html>

<?php
}

?>
dit stukje:
include_once('comm.php');
include_once(
'conn.php');
include_once(
'lang.php');
date_default_timezone_set($timezone);

is alleen maar dat ik ook een conetion kan maken met de database, kan ik later wel uitleggen.

ik heb in de file wat keys geplaatst als:

[/color]
Code: [Select]
if ((isset($_POST["xpwd"])) && (isset($_POST["title"]))) {
   $xpwd= stripcslashes($_POST["xpwd"]);
   if ($xpwd == $pswd) { //please change the password here and in now playing info plugin!

      $data = stripcslashes($_POST["title"]);

      $data = str_replace('\'(\'', '<br /><br />'.$lang['REQUESTED_BY'].' ', $data);
      $data = str_replace('\':\'', '<br /> '.$lang['MESSAGE'].'.<br />', $data);
      $data = str_replace('\')\'', '', $data);
      $data = str_replace(' - ', '<p><sub><span style="font-size: 11pt">'.$lang['PLAY_FROM_WITH'].'</span></sub></p>', $data);

Dit stukje haal de code uit de stream titles van rdj.



op de lijn staat $artist$ - $title$ '('$request_username$':' $request_message$')'

Om deze gegevens te ver sturen staat in de web exsporter.



meer uitleg of aanpassen van jou script laat maar weten.

R.T.F.M. means to me, Read The Fantastic Messages.
Make things simple, but don't make simple things simpler!
I don't do drugs, I do tuts. ( ͡° ͜ʖ ͡°) visit https://radiodj.info

Testing RadioDJ v2.0.1.6 Beta

Marcel

  • New User

  • Offline
  • *
  • 47
Re: RadioDJ web export
« Reply #4 on: December 29, 2018, 12:28:34 AM »
Ik heb geprobeerd dit zo goed mogelijk te begrijpen en in te voeren  ;D.
Ik heb het eerste stukje tussen de <head> en de </head> ingevoerd in de nowplaying.php. Ik heb het stukje tussen <?php en ?> voor het gemak maar even gelaten zoals ik het had.

Onderstaand het bestand zoals hij nu is.

Code: [Select]
<head>

<script>
 $(document).ready(function() {
     $("#liveshow-container").load("inc/song_update.php");
   var refreshId = setInterval(function() {
    $("#liveshow-container").load('inc/song_update.php);
    }, 10000); //set refresh time 10.000 = 10 sec
   $.ajaxSetup({ cache: false });
});
</script>

</head>

<div id="liveshow-container"></div>

<?php

If ((isset($_POST["xpwd"])) && (isset($_POST["title"]))) {
$xpwdstripcslashes($_POST["xpwd"]);
if ($xpwd== &#39;changeme&#39;) {
$data stripcslashes($_POST["title"]);

$Handle fopen("data.txt", &#39;w&#39;);
fwrite($Handle$data); 
fclose($Handle);
}
} Else {
echo "Go away!";
}

?>


Klopt dit bestand op deze manier wel? Ik heb een data.txt in hetzelfde mapje op de server gezet waar hij naartoe kan schrijven. Heb nog steeds een leeg bestandje  ::)

Jhonny

  • Moderator
  • Hero Member

  • Offline
  • *****
  • 3455
  • Personal Text
    Peace, enjoy life.it's over before you've lived it
    • Jhonny's RadioDJ tutorials.
Re: RadioDJ web export
« Reply #5 on: December 29, 2018, 09:53:38 PM »
De bedoeling is dat de file
song_update.php

in de data.txt file schijft. wat er gespeeld word en in mijn script wie een verzoekje heeft aangevraagt.

het laatste dat bij mij naar de file geschreven is.

Vincent Bell<p><sub><span style="font-size: 11pt">Track title:</span></sub></p>Airport Love Theme, dit is de standaard.

01 Metallica<p><sub><span style="font-size: 11pt">Track title:</span></sub></p>Hit The Lights <br /><br />Requested by Jhonny<br /> With the massage.<br /> No message left. bij een request.



R.T.F.M. means to me, Read The Fantastic Messages.
Make things simple, but don't make simple things simpler!
I don't do drugs, I do tuts. ( ͡° ͜ʖ ͡°) visit https://radiodj.info

Testing RadioDJ v2.0.1.6 Beta

Marcel

  • New User

  • Offline
  • *
  • 47
Re: RadioDJ web export
« Reply #6 on: December 30, 2018, 11:14:37 AM »
Hallo Jhonny,

Dat snap ik, daarom heb ik dat data.txt bestandje ook in dezelfde map gezet als de php file.
Nu heb ik de nowplaying.php gemaakt zoals hierboven staat, maar komt er niks in de data.txt file te staan.
Is de php file op deze manier wel goed vraag ik me af?

Jhonny

  • Moderator
  • Hero Member

  • Offline
  • *****
  • 3455
  • Personal Text
    Peace, enjoy life.it's over before you've lived it
    • Jhonny's RadioDJ tutorials.
Re: RadioDJ web export
« Reply #7 on: December 30, 2018, 12:50:12 PM »
Voor zover ik kan zien worden er geen gegevens ontvangen van rdj.
In de folder c:\RadioDJv2\Docs\Now Playing Plugin Help\PHP Script\song_update1.php
Ik neem aan dat je deze gebruikt?
Er is ook een uitleg pdf bij hoe het werkt (manual.pdf).
Ik heb de file song_update1.php voor mij zelf aangepast.
R.T.F.M. means to me, Read The Fantastic Messages.
Make things simple, but don't make simple things simpler!
I don't do drugs, I do tuts. ( ͡° ͜ʖ ͡°) visit https://radiodj.info

Testing RadioDJ v2.0.1.6 Beta

Marcel

  • New User

  • Offline
  • *
  • 47
Re: RadioDJ web export
« Reply #8 on: December 30, 2018, 03:08:16 PM »
Die gebruik ik nu  :). Alleen als ik hem upload naar mijn website, maakt het dan nog uit waar ik hem neer zet? Als ik namelijk de url invoer zie ik dat hij de pagina niet kan vinden.

Jhonny

  • Moderator
  • Hero Member

  • Offline
  • *****
  • 3455
  • Personal Text
    Peace, enjoy life.it's over before you've lived it
    • Jhonny's RadioDJ tutorials.
Re: RadioDJ web export
« Reply #9 on: December 30, 2018, 06:23:17 PM »
http://mynwebsite/song_update1.php werkt niet je krijgt een leeg scherm of een fout melding.
R.T.F.M. means to me, Read The Fantastic Messages.
Make things simple, but don't make simple things simpler!
I don't do drugs, I do tuts. ( ͡° ͜ʖ ͡°) visit https://radiodj.info

Testing RadioDJ v2.0.1.6 Beta

Marcel

  • New User

  • Offline
  • *
  • 47
Re: RadioDJ web export
« Reply #10 on: January 02, 2019, 10:26:08 AM »
Oke, werkt de nummer 2 wel dan?
Nu krijg ik enkel een leeg bestandje.

Jhonny

  • Moderator
  • Hero Member

  • Offline
  • *****
  • 3455
  • Personal Text
    Peace, enjoy life.it's over before you've lived it
    • Jhonny's RadioDJ tutorials.
Re: RadioDJ web export
« Reply #11 on: January 02, 2019, 10:46:03 AM »
beide werken
R.T.F.M. means to me, Read The Fantastic Messages.
Make things simple, but don't make simple things simpler!
I don't do drugs, I do tuts. ( ͡° ͜ʖ ͡°) visit https://radiodj.info

Testing RadioDJ v2.0.1.6 Beta

Marcel

  • New User

  • Offline
  • *
  • 47
Re: RadioDJ web export
« Reply #12 on: January 02, 2019, 04:50:00 PM »
Oke, ik heb hem veel verder staan. In de content map van mijn theme heb ik een nowplaying mapje aangemaakt en de song_update1.php daarin gezet. Of zal dit ook niet werken?

CorH

  • New User

  • Offline
  • *
  • 5
Re: RadioDJ web export
« Reply #13 on: January 02, 2019, 09:10:56 PM »
Hoi Marcel,

Heeft jouw txt bestandje op de webserver wel schrijfrechten?
Mogelijk moet je dit aanpassen door hier een chmod 777 van te maken?