Ankündigung

Einklappen
Keine Ankündigung bisher.

Wie bekomme ich die Bildanzeige richtig dargestellt?

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Wie bekomme ich die Bildanzeige richtig dargestellt?

    Hallo
    Ich möchte für unser Radio eine Statusanzeige mit Bild von dem aktuell sendenden DJ einbinden.
    Habe das Script auch soweit hinbekommen. Nun habe ich aber das Problem das mir nicht nur der aktuelle DJ alleine anezeigt wird, sondern die Bilder von allen DJs.

    Was muss ich im Code ändern damit mir nur das jeweils aktuelle Bild angezeigt wird ?

    Ich weiss das die Optik von dem ganzen auch noch nicht stimmt, mir gehts aber auch erstmal um fehlerfreie Funktion habe das ganze auch noch nicht in unsere Homepage eingebunden sondern benutze dafür eine Testseite

    PHP-Code:
    <html>
    <head>
    <title>Friends-4-me Status</title>
    </head>
    <body>

    <?php

    $attr
    =array(

      
    'Stream Status'=>0,
      
    'Listener Peak'=>0,
      
    'Average Listen Time'=>0,
      
    'Stream Title'=>1,
      
    'Content Type'=>0,
      
    'Stream Genre'=>0,
      
    'Stream URL'=>0,
      
    'Stream ICQ'=>0,
      
    'Stream AIM'=>0,
      
    'Stream IRC'=>0,
      
    'Current Song'=>1
    );

    $host '00.00.00.00';
    $port '1234';
    $fp = @fsockopen($host$port$errno$errstr01);

    if(!
    $fp)
      {
        
    $status "Offline";
      }
    else
      {
      
    $page='';
      
    $status "Online";
      
    fputs($fp,"GET /index.html HTTP/1.0\r\nUser-Agent: Stern-Recorder@DM (Mozilla Compatible)\r\n\r\n");
      while(!
    feof($fp))
        {
          
    $page .= fgets($fp1000);
        }
      
    fclose($fp);

      
    preg_match_all('|<table[^>]*align=center><tr>(.*)</tr></table>|s',$page,$page);
      
    preg_match_all('#<tr><td[^>]*>.*('.implode('|',array_keys($attr)).').*</td><td[^>]*>(.*)</td></tr>#Us',$page[0][0],$rows,PREG_SET_ORDER);
      }



    ?>

      <table border="0" cellpadding="3" align="center">
        <?php
          
    if($status=='Online')
          {
            foreach(
    $rows as $row)
              {
                if(!
    $attr[$row[1]])continue;
                echo 
    '<tr><td align="right">'.$row[1].':</td><td>'.$row[2].'</td></tr>';
              }
          }
          else
          {
              
    ?>
              <tr><td colspan="2">Server ist Offline</td></tr>
              <?
          }
        ?>

      </table>
        <?php
      
    if('Stream AIM'=="DJ Kruemmel")
        {
        echo 
    "Live on Air <img src=\"kruemmel-k.jpg\" alt=\"bild\">DJ Kruemmel";
        }
      else
        {
        echo 
    "Live on Air<br> <img src=\"kruemmel-k.jpg\" alt=\"bild\">DJ Kruemmel";
        }
      
    ?>
      <?php
      
    if('Stream AIM'=="Autostream")
        {
        echo 
    "Live on Air <img src=\"stream.png\" alt=\"bild\">Autostream";
        }
      else
        {
        echo 
    "Live on Air<br> <img src=\"stream.png\" alt=\"bild\">Autostream";
        }
      
    ?>
    </body>
    </html>
    Bitte nur ernstgemeinte Antworten, da mir so Sprüche wie Frag mal Google usw nicht weiterhelfen.

    Ich bedanke mich jetzt schon mal für eure Tipps


  • #2
    Irgendwie wenig verwunderlich, wenn Deine if und else-Zweige gleiche Ausgaben erzeugen. Ausserdem werden sie nacheinander ausgeführt.

    Schau dir mal switch/case an.
    --

    „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
    Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


    --

    Kommentar


    • #3
      Wie soll der folgende Vergleich jemals 'wahr' werden?
      PHP-Code:
       if('Stream AIM'=="DJ Kruemmel"
      Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

      Kommentar


      • #4
        Zitat von lstegelitz Beitrag anzeigen
        Wie soll der folgende Vergleich jemals 'wahr' werden?
        PHP-Code:
         if('Stream AIM'=="DJ Kruemmel"
        irgendwann... musst nur bissle warten. am besten noch

        PHP-Code:
        while(1){ //wiederhole bis es wahr wird :D
         
        if('Stream AIM'=="DJ Kruemmel"
        die();


        genug back @ topic.

        folgendes müsstest du machen: statt if usw

        PHP-Code:
        switch($attr['Stream AIM']){
        case 
        'DJ Kruemmel':{
         echo 
        "Live on Air <img src=\"kruemmel-k.jpg\" alt=\"bild\">DJ Kruemmel"
        break;
        }
        case 
        'Dj sonstwer':{
         echo 
        "Live on Air <img src=\"sonswer.jpg\" alt=\"bild\">DJ Kruemmel"
        break;
        }
        default:{
        //kein DJ
         
        echo "Live on Air <img src=\"stream.png\" alt=\"bild\">Autostream"
        }

        MFG
        apt-get install npm -> npm install -g bower -> bower install <package> YOLO https://www.paypal.me/BlackScorp | Mein Youtube PHP Kanal: https://www.youtube.com/witalimik

        Kommentar


        • #5
          OmG, LOL.
          --

          „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
          Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


          --

          Kommentar


          • #6
            Zitat von nikosch Beitrag anzeigen
            OmG, LOL.
            gut dass du es lusting fandst dachte wird noch geschlossen
            apt-get install npm -> npm install -g bower -> bower install <package> YOLO https://www.paypal.me/BlackScorp | Mein Youtube PHP Kanal: https://www.youtube.com/witalimik

            Kommentar


            • #7
              Danke für eure schnellen Antworten

              So als erstes möchte ich mich schon mal für die Tipps und Hilfen bedanken. Muss nämlich gestehen das ich was PHP angeht eine absolute Anfängerin bin und ich mir das ganze deutlich einfacher vorgestellt habe.

              Ich habe es nun mal mit dem Code von BlackScorp versucht und nun bekomme ich zwar nur eine Ausgabe angezeigt mit auch nur einem Bild aber leider wechselt das Ganze nicht auf den jeweiligen DJ sondern es bleibt das Bild vom Autostream. Die Anzeige von Stream Title und Current Song wird aber richtig dargestellt.

              Kann mir da evtl jemand sagen was ich da Falsch mache ????

              So sieht das ganze jetzt aus:
              PHP-Code:
              <html>
              <head>
              <title>Friends-4-me Status</title>
              </head>
              <body>

              <?php

              $attr
              =array(

                
              'Stream Status'=>0,
                
              'Listener Peak'=>0,
                
              'Average Listen Time'=>0,
                
              'Stream Title'=>1,
                
              'Content Type'=>0,
                
              'Stream Genre'=>0,
                
              'Stream URL'=>0,
                
              'Stream ICQ'=>0,
                
              'Stream AIM'=>0,
                
              'Stream IRC'=>0,
                
              'Current Song'=>1
              );

              $host '62.75.139.199';
              $port '8040';
              $fp = @fsockopen($host$port$errno$errstr01);

              if(!
              $fp)
                {
                  
              $status "Offline";
                }
              else
                {
                
              $page='';
                
              $status "Online";
                
              fputs($fp,"GET /index.html HTTP/1.0\r\nUser-Agent: Stern-Recorder@DM (Mozilla Compatible)\r\n\r\n");
                while(!
              feof($fp))
                  {
                    
              $page .= fgets($fp1000);
                  }
                
              fclose($fp);

                
              preg_match_all('|<table[^>]*align=center><tr>(.*)</tr></table>|s',$page,$page);
                
              preg_match_all('#<tr><td[^>]*>.*('.implode('|',array_keys($attr)).').*</td><td[^>]*>(.*)</td></tr>#Us',$page[0][0],$rows,PREG_SET_ORDER);
                }



              ?>

                <table border="0" cellpadding="3" align="center">
                  <?php
                    
              if($status=='Online')
                    {
                      foreach(
              $rows as $row)
                        {
                          if(!
              $attr[$row[1]])continue;
                          echo 
              '<tr><td align="right">'.$row[1].':</td><td>'.$row[2].'</td></tr>';
                        }
                    }
                    else
                    {
                        
              ?>
                        <tr><td colspan="2">Server ist Offline</td></tr>
                        <?
                    }
                  ?>

                </table>
                  <?php
                
              switch($attr['Stream AIM']){
              case 
              'Autostream':{
               echo 
              "Live on Air <img src=\"stream.png\" alt=\"bild\">Autostream";
              break;
              }
              case 
              'DJ Kruemmel':{
               echo 
              "Live on Air <img src=\"kruemmel-k.jpg\" alt=\"bild\">Autostream";
              break;
              }
              default:{
              //kein DJ
               
              echo "Live on Air <img src=\"stream.png\" alt=\"bild\">Autostream";
              }
              }

                
              ?>
              </body>
              </html>
              Für den Fall das ich mich jetzt etwas doof anstelle dürft ihr euch auch ruhig ein wenig drüber Lustig machen ...Kann Spass vertragen....
              Seit aber nicht alzu streng mit mir... Mit PHP beschäftige ich mich erst seit ca 14 Tagen und das ganze hier ist mein erster Versuch überhaupt ein PHP Script auf die Beine zu stellen. Ich arbeite normalerweise mit HTML und damit hab ich auch keine Probleme

              Kommentar


              • #8
                Hmm, $rows existiert in diesem Script nicht, scheint aber sehr wichtig für das Ergebnis zu sein..
                --

                „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                --

                Kommentar


                • #9
                  mach mal vor dem switch folgendes:

                  PHP-Code:
                  echo 'Stream AIM: '.$attr['Stream AIM'];
                  switch(
                  $attr['Stream AIM']){ 
                  //....

                  und sag mal was da raus kommt
                  apt-get install npm -> npm install -g bower -> bower install <package> YOLO https://www.paypal.me/BlackScorp | Mein Youtube PHP Kanal: https://www.youtube.com/witalimik

                  Kommentar


                  • #10
                    Zitat von nikosch Beitrag anzeigen
                    Hmm, $rows existiert in diesem Script nicht, scheint aber sehr wichtig für das Ergebnis zu sein..
                    Danke für den Hinweis... Kannst Du mir denn evtl auch verraten wie ich den Befehl $rows einsetzten muss ??? Wäre dir sehr Dankbar wenn Du mir da weiterhelfen könntest, da ich von PHP halt noch sehr wenig Ahnung habe, und nicht genau weiss wie ich das nun machen muss. Bin halt noch am lernen.

                    Kommentar


                    • #11
                      Zitat von BlackScorp Beitrag anzeigen
                      mach mal vor dem switch folgendes:

                      PHP-Code:
                      echo 'Stream AIM: '.$attr['Stream AIM'];
                      switch(
                      $attr['Stream AIM']){ 
                      //....

                      und sag mal was da raus kommt
                      Habe ich gemacht, leider hat sich nicht Viel verändert ausser das jetzt vor dem Bild noch zusätzlich Stream AIM: 0 steht. Naja wenn Du magst kannst Dir das ergebniss hier anschauen: Friends-4-me Status

                      Danke Dir aber schon jetzt einmal für deine Hilfe

                      Kommentar


                      • #12
                        noch zusätzlich Stream AIM: 0 steht.
                        Genau wie es oben zugewiesen wird..

                        $rows ist kein Befehl, sondern eine Variable.

                        [edit]
                        Ich sehe gerade, die kommt aus dem preg_match. Oder soll daher kommen. Keine Ahnung, ob das funktioniert.
                        --

                        „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                        Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                        --

                        Kommentar


                        • #13
                          So langsam glaub ich wirklich das ich bescheuert bin

                          Hallo Ihr lieben....
                          nun habe ich einfach mal ein bisschen gewerkelt und mich auch ein wenig im Bekanntenkreis rumgefragt aber wirklich helfen konnte mir da auch keiner.
                          Habe mit Hilfe von Google und weiteren Suchmaschinen nochmal ganz neu von vorne angefangen und nun bin ich schon mal soweit das mir der Titel und DJ Als Text angezeigt wird.

                          Nun habe ich aber das Problem wenn ich versuche ein Bild mit einzubauen folgende Fehlermeldung kommt:
                          Parse error: syntax error, unexpected T_ECHO in /var/www/vhosts/friends-4-me.de/httpdocs/downloads/streamstatus/streamstatus6.php on line 53

                          Was mache ich da evtl Falsch und wie bekomme ich die Bildausgabe hin ???

                          PHP-Code:
                          <?
                          //Configuration:
                          $server2 = "IP eintragen"; //IP des Shoutcast Servers
                          $server2port = "Port eintragen"; //Port des Shoutcast Server - Bsp.: 8000
                          $server2pass = "PW eintragen"; //Passwort des Shoutcast Servers

                          $dateix = fsockopen("$server2", $server2port, &$errno, &$errstr);
                          if( !$dateix )
                          {
                          echo "<font face='Verdana' size='2' color='black'><b>DOWN<b/></font><br>";
                          fclose($dateix);
                          }
                          else
                          {
                          fputs($dateix,"GET /admin.cgi?pass=$server2pass&mode=viewxml HTTP/1.0\r\nUser-Agent: Mozilla/4.0 (compatible; MSIE 4.01; Windows NT;)\r\n\r\n");
                          while (!(feof($dateix)))
                          {
                          $zeilex .= fgets($dateix, 4096);
                          }
                          fclose($dateix);
                          }
                          $tmpx = explode("<CURRENTLISTENERS>", $zeilex);
                          $tmpx = explode("</CURRENTLISTENERS>", $tmpx[1]);
                          $server2lauscher = $tmpx[0];
                          $pl2 = " ";
                          $tmpx = explode("<SERVERGENRE>", $tmpx[1]);
                          $tmpx = explode("</SERVERGENRE>", $tmpx[1]);
                          $tmp2x = explode("+", $tmpx[0]);
                          $nick2 = $tmp2x[0];

                          if(count($tmp2x) == 2)
                          $pl2 = $tmp2x[1];

                          $tmpx = explode("<SERVERTITLE>", $tmpx[1]);
                          $tmpx = explode("</SERVERTITLE>", $tmpx[1]);
                          $server2title = $tmpx[0];
                          $tmpx = explode("<SONGTITLE>", $tmpx[1]);
                          $tmpx = explode("</SONGTITLE>", $tmpx[1]);
                          $song2title = $tmpx[0];
                          $tmpx = explode("<STREAMSTATUS>", $tmpx[1]);
                          $tmpx = explode("</STREAMSTATUS>", $tmpx[1]);
                          $stream2status = $tmpx[0];

                          if ($stream2status == "1")
                          {
                          //OnAir? Dann das hier:
                          echo "<font face='Verdana' size='2' color='red'><b>OnAir</b></font><br>";
                          //Welcher Moderator?
                          echo "<font face='Verdana' size='2'><b>Es sendet</b>:<br> $nick2</font><br>";

                          // DJ BIld
                          if ($nick2 == "DJ OLI"
                          echo('<IMG SRC="oli-k.jpg">');
                          // DJ BILD ENDE

                          //Playlist vorhanden?
                          if ($pl2 =="")
                          {
                          echo "";
                          }
                          else
                          {
                          echo "<a href=\"";
                          echo "$pl2";
                          echo "\" target=\"_blank\"></a>";
                          }

                          //Was wird gespielt?
                          echo "<font face='Verdana' size='2'>aktueller Titel:<br>$song2title</font><br>";

                          }
                          //Offair? Dann hier das:
                          else
                          {
                          echo "<font face='Verdana' size='2' color='grey'><b>Offair</b></font>";
                          }
                          ?>
                          Bin über jede Hilfe Dankbar, da ich leider nicht weiterkomme....

                          Danke und schönen Sonntag an alle
                          Kruemmel

                          Kommentar


                          • #14
                            Sorry wenn ich so doof frage:
                            Wie kann ich hier einen Beitrag erstellen?
                            Vielen Dank für euer Verständnis.

                            Danke hab´s gefunden

                            Kommentar


                            • #15
                              Zitat von bratkartoffel Beitrag anzeigen
                              Sorry wenn ich so doof frage:
                              Wie kann ich hier einen Beitrag erstellen?
                              Vielen Dank für euer Verständnis.
                              Klicke einfach hier php.de - das Deutsche PHP-Forum suche deine Kategorie wo es reinpasst und dann auf Thema erstellen.

                              Wenn DU mir nun noch bei meinem Problem weiterhelfen kannst bin ich auch überglücklich

                              Kommentar

                              Lädt...
                              X