Steven Kronbach: PHP Variable in JavaTicker ??

Hy..

ich hab ein Problem in meinem Script...
und zwar hab ich eine PHP-Datei erstellt..
das Script arbeitet einwandfrei ..
aber jetzt möchte ich die Variablen in einem JavaTicker ausgeben ..

und irgendwie bekomm ich das nicht gebacken ...
ich zeig Euch meine Bis jetzt erstellte datei...
Ich habe in der Datei selber nochmal auskommentiert wo mein Problem liegt... also bitte auf die auskommentierungen und inhalte achten...

#################Code Beginn####################
<?
$host   = "xxx.xx.xx.xxx";

$port   = "xxxx";

$password  = "xxxxxxxx";

// Bitte weiter unten bei der echo ausgabe weiterlesen ;-)

$fp = fsockopen("$host", $port, &$errno, &$errstr, 30);
 if(!$fp) {
  $success2=2;
 }
if($success2!=2){
 fputs($fp,"GET /admin.cgi?pass=$password&mode=viewxml HTTP/1.0\r\nUser-Agent: XML Getter (Mozilla Compatible)\r\n\r\n");
 while(!feof($fp)) {
  $page_ .= fgets($fp, 1000);
 }
 $loop = array("SONGTITLE", "PLAYED", "CURRENTLISTENERS", "PEAKLISTENERS", "MAXLISTENERS", "AVERAGETIME", "BITRATE", "SERVERTITLE","SERVERGENRE","STREAMSTATUS","PLAYEDAT");
 $y=0;
 while($loop[$y]!=''){

$pageed = ereg_replace(".*<$loop[$y]>", "", $page_);
  $phpname = strtolower($loop[$y]);
  $$phpname = ereg_replace("</$loop[$y]>.*", "", $pageed);
  if($loop[$y]==SERVERGENRE || $loop[$y]==SERVERTITLE || $loop[$y]==SONGTITLE)
   $$phpname = urldecode($$phpname);

$y++;
 }
 $songatime = explode("<SONG>", $pageed);
 $r=1;
 while($songatime[$r]!=""){
  $t=$r-1;
  $playedat[$t] = ereg_replace(".*<PLAYEDAT>", "", $songatime[$r]);
  $playedat[$t] = ereg_replace("</PLAYEDAT>.*", "", $playedat[$t]);
  $song[$t] = ereg_replace(".*<TITLE>", "", $songatime[$r]);
  $song[$t] = ereg_replace("</TITLE>.*", "", $song[$t]);
  $song[$t] = urldecode($song[$t]);
  $r++;
 }
 fclose($fp);
}
/* So und hier ist das Problem ....
 * Hier in dieser echo ausgabe möchte ich meinen Ticker haben der quasi die Variablen von oben ausgibt...
 * bis jetzt ist es mir nicht gelungen und ich hoffe Ihr könnt mir helfen
 **********************************************************************/
 echo("<html>
<head>
<script language="javascript">
<!--
var delay=18;
var nextm=0;
var msg=new Array
(
        'HIER KOMMT TEXT1',
'Hier zb. die Variable $servergenre',
'HIER KOMMT TEXT2',
'HIER KOMMT TEXT3'
);

function start_ticker()
{
        do_ticker(msg[0], 0, 1);
}

function do_ticker(text, pos, dir)
{
        var out='<font face="Arial, Helvetica" color=darkyellow>[&nbsp;<font color=#000000><strong><font size=-1>'+text.substring(0, pos)+'</font></font></strong>&nbsp;]</font>';

if(navigator.appName=="Netscape")
                with(document.ticker.document)
                {
                        open(); write(out); close();
                }
        else
                ticker.innerHTML=out;

pos+=dir;

if(pos>text.length)
                setTimeout('do_ticker("'+text+'",'+pos+','+(-dir)+')', delay*45);
        else
        {
                if(pos<0)
                {
                        if(++nextm>=msg.length)
                                nextm=0;
                        text=msg[nextm];
                        dir=-dir;
                }

setTimeout('do_ticker("'+text+'",'+pos+','+dir+')', delay);
        }
}

// -->

</script>
</head>

<body bgcolor="#FFFFFF" text="#000000" onload="start_ticker()">
<div id="ticker" style="position: absolute; top: 50%; left: 44%;"></div>
</body>
</html>");

?>
#################Code Ende##################

schonmal vielen Dank für die Hilfe...

gruss Steven

  1. Hallo,

    aber jetzt möchte ich die Variablen in einem JavaTicker ausgeben ..

    So würde ich bei der Fehlersuche vorgehen:

    1. Mir die Ausgabe des PHP-Skripts ausgeben lassen und sie abspeichern
    2. Den Output des PHP-Skriptes auf Fehler absuchen (zuerst mit einem (JavaScript-)Debugger dann "von Hand").
    3. Alle Fehler beseitigen
    4. Den funktionierenden statischen Code mit dem von PHP generierten vergleichen
    5. Im von PHP generierten Code alle Fehler beseitigen

    Gruß,
    Severin

    --
    They that can give up essential liberty to obtain a little temporary safty deserve neither liberty nor safty.
    -- Benjamin Franklin
    1. hm.. Halo Severin,
      erstma Danke für die Hilfe..
      aber ich glaube du verstehst es nicht :)
      der Code beinhaltet keine Fehler...
      ich brauch nur ne Info wie man eine PHP Variable an einen Java Ticker weitergibt..
      der Code arbeitet einwandfrei... bei der ausgabe wird anstelle der Variable einfach nichts angezeigt ansonsten geht alles...

      also bitte ich da nochmal hinzugucken..

      vielen Dank

      Steve

      Hallo,

      aber jetzt möchte ich die Variablen in einem JavaTicker ausgeben ..

      So würde ich bei der Fehlersuche vorgehen:

      1. Mir die Ausgabe des PHP-Skripts ausgeben lassen und sie abspeichern
      2. Den Output des PHP-Skriptes auf Fehler absuchen (zuerst mit einem (JavaScript-)Debugger dann "von Hand").
      3. Alle Fehler beseitigen
      4. Den funktionierenden statischen Code mit dem von PHP generierten vergleichen
      5. Im von PHP generierten Code alle Fehler beseitigen

      Gruß,
      Severin

      1. Hallo,

        der Code arbeitet einwandfrei... bei der ausgabe wird anstelle der Variable einfach nichts angezeigt ansonsten geht alles...

        Helfen folgende Beispiele:
        <?php
        $foo = "Hallo Welt";
        echo "<html><head></head><body>".$foo."</body></html>";
        ?>
        <?php
        $foo = "Hallo Welt";
        echo "<html><head><script type="text/javascript"><!--
        alert('".$foo."');
        //--></javascript></head><body></body></html>";
        ?>

        Beim ersten wird einfach nur "Hallo Welt" in einfachen HTML ausgegben, beim zweiten als JavaScript alert. Verstehst du das Prinzip? Du schreibst mit PHP einfach den JavaScriptcode.

        Gruß,
        Severin

        --
        They that can give up essential liberty to obtain a little temporary safty deserve neither liberty nor safty.
        -- Benjamin Franklin
        1. Vielen Dank hat geholfen ... die lösung war das man die eigentliche variable einfach nur in ". setzen muss ".DIE VARIABLE." zu setzen ;)

          Beim ersten wird einfach nur "Hallo Welt" in einfachen HTML ausgegben, beim zweiten als JavaScript alert. Verstehst du das Prinzip? Du schreibst mit PHP einfach den JavaScriptcode.

          Gruß,
          Severin