1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

PHP Shoutbox -.-

Discussion in 'Programmieren' started by Auron, Feb 23, 2005.

Thread Status:
Not open for further replies.
  1. Auron

    Auron Byte

    salve
    hab ein problem mit einer shoutbox auf php basis, ich will einfach nur die schriftfarbe der einträge von schwarz auf weiß ändern nur will das nich hinhaun bin am verzweifeln und suche hilfe, hier der code

    Code:
    <p align="left"><body bgcolor="#530000">
    <?php
    
    
    
       /////////////////////////////////////////////
       //VarbiabLen
       //
       //Text Datenbank
       $text_file     = "daten.txt";
     
       //Komplette URL zur "shout.php
       $shoutbox_url  = "http://tobireaper.to.funpic.de/shout.php";
         
         //Url zu der nach dem Eintrag in die Shoutbox geleitet wird
       $referer_url   = "http://tobireaper.to.funpic.de/shout.php";
       //
       /////////////////////////////////////////////   
    
       /////////////////////////////////////////////
       //Eintrag in die Text-Datenbank vornehmen
       //
       if( isset($_GET['action']) && $_GET['action'] == "add" )
       {
          if( $_POST['email'] == "Email" )
             $_POST['email'] = "";
          $new_line = $_POST['name']."|".$_POST['email']."|".date("Y/m/d H:i")."|".stripslashes(htmlspecialchars($_POST['message'])) . "\n";
          if( ! $fp = fopen($text_file,"a") )
             echo "Cannot open " . $text_file . "! Check the file rights.";
          if( flock( $fp, LOCK_EX ) )
          {
             fwrite( $fp,$new_line );
             flock( $fp, LOCK_UN );
          } else {
             echo "Couldn't lock the file " . $text_file . "!";
          }
          header("Location: " . $referer_url );
       }
       
       function show_shoutbox($height = 500,$width = 50,$per_page = 5, $font_family="verdana",$font_size=11 )
       {
          
          if( isset( $_GET['shoutbox_page'] ) )
             $shoutbox_page = $_GET['shoutbox_page'];
             
       
          if( empty( $_GET['shoutbox_page'] ) )
             $shoutbox_page = 1;
    
          
          $file = $GLOBALS['text_file'];
          
          
          if( ! $fp = @fopen( $file, "r" ) )
          {
             echo "Text-Datenbank für die Shoutbox kann nicht geöffnet werden!";
             exit;
          }
          
          
          $output_buffer = "";
          $shouts = array();
          
          
          if( filesize($file) )
          {
             
             $fp            = fread( $fp, filesize( $file ) );
             
             $shouts        = explode("\n",$fp);
             
             $total_shouts  = count($shouts);
             
             $total_pages   = ceil($total_shouts/$per_page);
             
             $shout_pointer = (($total_shouts  - ($shoutbox_page * $per_page))+$per_page)-1;
    
             
             if( $shoutbox_page > $total_pages )
                $shoutbox_page = 1;
    
             
             $output_buffer .= page_numbers( $total_pages , $shoutbox_page );
          }
       
          else
          {
             $shouts         = 0;
             $total_shouts   = 0;
             $shout_pointer  = 0;
             $output_buffer .= page_numbers( 1 , 1 );
          }
    
          
          for( $i = $shout_pointer ; $i > ($shout_pointer-$per_page); $i-- )
          {
             
             if( $i > -1 )
             {
                
                if( $shouts[$i] )
                   list( $name, $email, $date, $shout ) = explode("|",$shouts[$i]);
                   
                
                if( !empty( $name ) )
                {
                   
                   $email_start = "";
                   $email_end   = "";
                   
                   if( ! empty( $email ) )
                   {
                      $email_start = "<a href=\"mailto:" . $email . "\">";
                      $email_end   = "</a>";
                   }
                   
                   $output_buffer  .= "<strong>" . $email_start . $name . $email_end . "</strong>\n<br />" . str_wrap( $shout, 6, '- ' ) . "<br /><br />";
                }
             }
          }
          ?>
             <table style="width:<?=$width;?>;">
                <form method="post" action="<?=$GLOBALS['shoutbox_url'];?>?action=add">
                <tr><td align="center" style="font-family:<?=$font_family;?>; font-size:<?=$font_size;?>px;"></td></tr>
                <tr>
                   <td>
                      <div style="<?=$border;?> font-family:<?=$font_family;?>; font-size:<?=$font_size;?>px; height:<?=$height;?>; overflow:auto; padding:3px; width:100%;">
                         <?=$output_buffer;?>
                      </div>
                   </td>
                </tr>
                <tr>
                   <td>
                      <input type="text" name="name" value="Name" style="<?=$border;?> font-family:<?=$font_family;?>; font-size:<?=$font_size;?>px; width:100%;" onfocus="this.select();"><br />
                      <input type="text" name="message" value="Text" style="<?=$border;?> font-family:<?=$font_family;?>; font-size:<?=$font_size;?>px;   width:100%;" onfocus="this.select();"><br />
                   </td>
                </tr>
                <tr>
                   <td align="center">
                      <input type="submit" value="Send!" style="<?=$border;?> font-family:<?=$font_family;?>; font-size:<?=$font_size;?>px;"><br />
                     
                   </td>
                </tr>
             </table>
          <?php
       }
       
       function page_numbers($total_pages,$current = 1)
       {
          
          $url_bar = $_SERVER['PHP_SELF']. "?" . $_SERVER['QUERY_STRING'];
          
          
          $url_bar = preg_replace( "/(&shoutbox_page=[1-9]+)/","", $url_bar );
          
          
          $buffer  = "<div align=\"center\"><select onchange=\"javascript: location.href='" . $url_bar . "&amp;shoutbox_page='+this.value;\" style=\"font-family: verdana; font-size: 10px;\">\n";
          
       
          for( $i = 1 ; $i <=   $total_pages ; $i++ )
          {
             
             $selected = "";
             
             if( $current == $i )
                $selected = "selected=\"selected\"";
             
             $buffer .= "<option value=\"".$i."\"" . $selected . ">".$i."</option>\n";
          }
          
          $buffer .= "</select></div>\n";
          
       
          return $buffer;
       }
       
       function str_wrap ( $text, $maxlenght, $char = '-' )
    {    
        $char_count = 0;
        $new_text   = '';
        
        for ( $i = 0; $i < strlen( $text ); $i++ )
        {
            $char_count++;
            $new_text .= $text[$i];
    
            if ( ( $text[$i] == ' ') || ( isset( $text[$i + 1] ) && $text[$i + 1] == ' ' ) )
            {
                $char_count = 0;
            }
            
            if ( $char_count == $maxlenght )
            {
                $new_text .= $char;
                $char_count = 0;
            }
        }
        return $new_text;
    } 
       show_shoutbox();
    ?></p>
    
    danke
    Auron :)
     
  2. kalweit

    kalweit Hüter der Glaskugel

    Also wenn meine Suchfunktion das richtig überflogen hat, ist die Änderung der Schriftfarbe durch den Autor nicht vorgesehen. Wird dir nichts anderes übrig bleiben, als die passenden "style" Angaben um die gewünschte Textfarbe zu erweitern.

    Gruss, Matthias
     
  3. Auron

    Auron Byte

    eben aber durch welche? $font_color oder wie? und dann in :white oder #ffffff oder ffffff? weiß einer genaueres oder kann mir das schon in den code schreiben? :aua:
     
  4. kalweit

    kalweit Hüter der Glaskugel

  5. Auron

    Auron Byte

    is ja kein html, habs aber jetz rausgefunden
     
  6. kalweit

    kalweit Hüter der Glaskugel

    Selbstverständlich ist das HTML - nur weil es mit dem PHP-Script dynamisch generiert wird, ändert das doch nichts an dem, was der Browser letztendlich bekommt - und nur an der Stelle lässt sich die Textfarbe ändern. Das hat mit PHP (außer das ein String verarbeitet wird) nichts zu tun.

    Gruss, Matthias
     
Thread Status:
Not open for further replies.

Share This Page