ilch Forum » Allgemein » HTML, PHP, SQL,... » Shoutbox Tabellen Problem

Geschlossen
  1. #1
    User Pic
    Herder Mitglied
    Registriert seit
    09.10.2009
    Beiträge
    10
    Beitragswertungen
    0 Beitragspunkte
    Hallo zusammen.

    Ich habe ein kleines, jedoch mich zum Haareraufen bringendes Problem.

    Ich habe die Safeshoutbox von hier runtergeladen und installiert. Ebenso das Sacred Design. Leider habe ich ein kleines Anzeigeproblem bei der Shoutbox.

    Wenn man angemeldet ist, so wird die Tabelle mit den Einträgen ganz normal in 100% angezeigt. Wenn man jedoch nicht angemeldet ist, so wird sie leider verengt angezeigt. Sowohl im Firefox als auch im Internet Explorer.

    Angemeldet: gesperrtes Bild Gast: gesperrtes Bild

    Hier mal der Code der shoutbox.php. Eventuell seh ich ja einfach nur den Wald vor lauter Bäumen nicht.

    <center>
    <?php 
    
    #   Copyright by Manuel Staechele
    #   Support www.ilch.de
    #
    #	Modul by Daniel Müller (DeutscheMark)
    #	Support www.Ctf-Clan-Gaming.de
    
    defined ('main') or die ( 'no direct access' );
    
    $shoutbox_VALUE_name = getenv("REMOTE_ADDR");
    $datum=date(" | j.n.Y");
    
    if ( $_SESSION['authright'] <= -1 ) {
      // registrierte User
      if ( loggedin() ) {
        $shoutbox_VALUE_name = $_SESSION['authname'];
      } else {
        $shoutbox_VALUE_name = 'Nickname';
      }
      if ( !empty($_POST['shoutbox_submit']) ) {
    		$shoutbox_nickname = escape($_POST['shoutbox_nickname'],'string');
        $shoutbox_nickname = substr($shoutbox_nickname, 0, 15);
    	  $shoutbox_textarea = escape($_POST['shoutbox_textarea'],'textarea');
    		$shoutbox_textarea = preg_replace("/\[.?(url|b|i|u|img|code|quote)[^\]]*?\]/i","",$shoutbox_textarea);
    		$shoutbox_textarea = strip_tags($shoutbox_textarea);
        if ( !empty($shoutbox_nickname) AND !empty($shoutbox_textarea) ) {
    	    db_query('INSERT INTO `prefix_shoutbox` VALUES ( "" , "'.$shoutbox_nickname.''.$zeit.''.$datum.'" , "'.$shoutbox_textarea.'"  ) ' );
    	  }
      }
      echo '<form action="index.php" method="POST">';
      echo '<input type="text" size="15" name="shoutbox_nickname" value="'.$shoutbox_VALUE_name.'" onFocus="if (value == \''.$shoutbox_VALUE_name.'\') {value = \'\'}" onBlur="if (value == \'\') {value = \''.$shoutbox_VALUE_name.'\'}" maxlength="15">';
      echo '<br /><textarea cols="15" rows="2" name="shoutbox_textarea"></textarea><br />';
      echo '<input type="submit" value="'.$lang['formsub'].'" name="shoutbox_submit">';
      }
      
      else { 
      //Gaeste
      echo "<font color=#FFFFFF><b><br>Zum Posten<br>Bitte Einloggen!<p></p></b></font>";
      echo "Deine IP:<br><b>$shoutbox_VALUE_name</b><br><br>";
      echo '</form><table width="100%" class="border" cellpadding="1" cellspacing="1" border="0">';
      }
      
      echo '</form><table width="100%" class="border" cellpadding="1" cellspacing="1" border="0">';
      $erg = db_query('SELECT * FROM `prefix_shoutbox` ORDER BY id DESC LIMIT 5');
    	$class = 'Cnorm';
      while ($row = db_fetch_object($erg) ) { 
    	  $class = ( $class == 'Cmite' ? 'Cnorm' : 'Cmite' );
        echo '<tr class="'.$class.'"><td><b>'.$row->nickname.':</b> '.preg_replace( '/([^\s]{10})(?=[^\s])/', "$1\n", $row->textarea).'</td></tr>';
      }
      echo '</table><a class="box" href="index.php?shoutbox">'.$lang['archiv'].'</a>';
    
    ?>
    </center>


    Habe bereits die Tabellengröße als Gast auf 100% gesetzt, trotzdem weiterhin diese verschiedene Anzeige.

    Mag mir jemand helfen? traurig
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    <center>
    <?php
     
    #   Copyright by Manuel Staechele
    #   Support www.ilch.de
    #
    #   Modul by Daniel Müller (DeutscheMark)
    #   Support www.Ctf-Clan-Gaming.de
     
    defined ('main') or die ( 'no direct access' );
     
    $shoutbox_VALUE_name = getenv("REMOTE_ADDR");
    $datum=date(" | j.n.Y");
     
    if ( $_SESSION['authright'] <= -1 ) {
    	// registrierte User
    	if ( loggedin() ) {
    		$shoutbox_VALUE_name = $_SESSION['authname'];
    	} else {
    		$shoutbox_VALUE_name = 'Nickname';
    	}
    	if ( !empty($_POST['shoutbox_submit']) ) {
    		$shoutbox_nickname = escape($_POST['shoutbox_nickname'],'string');
    		$shoutbox_nickname = substr($shoutbox_nickname, 0, 15);
    		$shoutbox_textarea = escape($_POST['shoutbox_textarea'],'textarea');
    		$shoutbox_textarea = preg_replace("/\[.?(url|b|i|u|img|code|quote)[^\]]*?\]/i","",$shoutbox_textarea);
    		$shoutbox_textarea = strip_tags($shoutbox_textarea);
    		if ( !empty($shoutbox_nickname) AND !empty($shoutbox_textarea) ) {
    			db_query('INSERT INTO `prefix_shoutbox` VALUES ( "" , "'.$shoutbox_nickname.''.$zeit.''.$datum.'" , "'.$shoutbox_textarea.'"  ) ' );
    		}
    	}
    	echo '<form action="index.php" method="POST">';
    	echo '<input type="text" size="15" name="shoutbox_nickname" value="'.$shoutbox_VALUE_name.'" onFocus="if (value == \''.$shoutbox_VALUE_name.'\') {value = \'\'}" onBlur="if (value == \'\') {value = \''.$shoutbox_VALUE_name.'\'}" maxlength="15">';
    	echo '<br /><textarea cols="15" rows="2" name="shoutbox_textarea"></textarea><br />';
    	echo '<input type="submit" value="'.$lang['formsub'].'" name="shoutbox_submit">';
    	echo '</form>';
    } else {
    	//Gaeste
    	echo "<font color=#FFFFFF><b><br>Zum Posten<br>Bitte Einloggen!</b></font>";
    	echo "Deine IP:<br><b>$shoutbox_VALUE_name</b><br><br>";
    }
     
    echo '<table width="100%" class="border" cellpadding="1" cellspacing="1" border="0">';
    $erg = db_query('SELECT * FROM `prefix_shoutbox` ORDER BY id DESC LIMIT 5');
    $class = 'Cnorm';
    while ($row = db_fetch_object($erg) ) {
    	$class = ( $class == 'Cmite' ? 'Cnorm' : 'Cmite' );
    	echo '<tr class="'.$class.'"><td><b>'.$row->nickname.':</b> '.preg_replace( '/([^\s]{10})(?=[^\s])/', "$1\n", $row->textarea).'</td></tr>';
    }
    echo '</table><a class="box" href="index.php?shoutbox">'.$lang['archiv'].'</a>';
     
    ?>
    </center>


    Ich denke so sollte es passen.


    Zuletzt modifiziert von Mairu am 29.10.2009 - 17:14:59
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    Herder Mitglied
    Registriert seit
    09.10.2009
    Beiträge
    10
    Beitragswertungen
    0 Beitragspunkte
    Hallo Mairu,

    danke Dir für die schnelle Antwort.
    Ich habe deinen Vorschlag hochgeladen, jedoch ohne erkennbaren Erfolg. Die Tabellenstruktur wird weiterhin so angezeigt wie auf den Beispielfotos. Er übernimmt also nicht die Tabellenweite von der Standardanzeige wenn man eingeloggt ist.

    Hat vielleicht noch jemand eine Idee? Es ist ja fast so aus, als ob bei der Anzeige als Gast eine zusätzliche Reihe angezeigt wird am rechten Rand. Aber ich finde den Eintrag nirgends traurig
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Ja eben bei deinem Code ist table halt doppelt, hab ich rausgenommen, gibt kein Grund warum der Fehler noch kommen sollte.
    Link zu deiner Seite wäre schon nicht verkehrt, btw. Bilder sind immer so ne Sache, aber irgendwie nehme ich an, dass du die Datei nicht richtig ersetzt hast.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    Herder Mitglied
    Registriert seit
    09.10.2009
    Beiträge
    10
    Beitragswertungen
    0 Beitragspunkte
    Hallo nochmal lächeln

    ich habe eben die shoutbox.php von meinem Server gelöscht und habe eine neue shoutbox.php erstellt mit deinem Code, diese php Datei nun hochgeladen und selbe Problem bei mir.



    Danke Dir schon mal fürs Helfen.


    Zuletzt modifiziert von Herder am 29.10.2009 - 19:44:40
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Ok also dann liegt nur daran, dass die textarea die Box breiter macht, als sie eigentlich sein sollte, im Design (index.htm) steht halt width="122" also solltest du denke ich dort ansetzen, ansonsten kannst du auch die Breite von der Tabelle (Zeile 43) fest setzen, also statt width="100%" einfach width="138" dann sollte es glaube ich funktionieren.


    Zuletzt modifiziert von Mairu am 29.10.2009 - 18:45:28
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    Herder Mitglied
    Registriert seit
    09.10.2009
    Beiträge
    10
    Beitragswertungen
    0 Beitragspunkte
    Hallo Mairu,

    also in meiner index.htm im design finde ich nirgends die 122 Weite. Muss wohl irgendwo anders definiert sein. Deshalb habe ich die shoutbox tabelle nun auf 140 gesetzt und nicht mehr auf 100%. Und siehe da, es klappt.

    Ich danke dir vielmals für den Tipp und die schnelle Hilfe.
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu HTML, PHP, SQL,...

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten