Code problem

Dusty00

Mitglied
Hy,

Ich bin gerade dabei in meinem phpbb forum ne newsbox zu integrieren, die sich über das admin panel updaten lässt (neuen text eingeben)! Jetzt hab ich folgendes problem, jedesmal wenn ich im admin panel auf den link zur newsbox site klicke, wird der inhalt meiner datenbank auf "" gesetzt und meine news sind weg und ich kann somit nichts mehr ergänzen! Da hab ich 100% ein Verbrechen im Code begangen, bin noch neu auf diesem Sektor! :) Ich hoffe ihr könnt mir helfen!

Hier der Code:

PHP:
<?php 

define('IN_PHPBB', 1);

//
// Load default header
//
$no_page_header = TRUE;
$phpbb_root_path = './../';
require($phpbb_root_path . 'extension.inc');
require('./pagestart.' . $phpEx);

$dbms = 'mysql';

$dbhost = 'host';
$dbname = 'dbname';
$dbuser = 'user';
$dbpasswd = 'passwort';


{ 
    $db=mysql_connect($dbhost,$dbuser,$dbpasswd) or die(mysql_error()); 
     mysql_select_db($dbname,$db) or die(mysql_error()); 
}
 

    $query = " 
        SELECT 
                `Newstxt` 
          FROM 
                `phpbb_Newstext` 
          LIMIT 
                1 
        "; 
    $result = mysql_query($query) or die('<p>Abfrage schlug fehl: '.htmlentities(mysql_error()).'<pre>'.htmlentities($query).'</pre></p>'); 
    $row = mysql_fetch_array($result, MYSQL_ASSOC); 


	mysql_close


?>

<style type="text/css">
<!--
body {
	background-color: #e5e5e5;
}
-->
</style>

<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>

    <div align="center">
	
		  <form action="<?php		$Ntext = $_POST['message']; 
		  			
		   mysql_query("UPDATE phpbb_Newstext SET Newstxt= '$Ntext'");?>" method="POST"> 
      <p>
        <textarea name="message" cols="80" rows="15"><?php echo htmlentities($row['Newstxt']); ?></textarea> 
      </p>
      <p>
        <input type="submit" name="submit" value="Abschicken !"> 
          </p>
  </div>
</form> 

<div align="center"></div>

mfg

dust
 
Du solltest die Variable $_POST['message'] erst auf Inhalt überprüfen, weil sie sonst jedesmal in die DB geschrieben wird, auch wenn sie leer ist.
Am besten überprüfst du sie mit [phpf]empty[/phpf] und [phpf]isset[/phpf]!

Und noch was...wieso hast du den Query in der <form> stehen?
Versteh ich nicht...

greetz
daddz
 
Vielen Dank für eure Antworten! Hab das ganze so gelöst:

PHP:
$Ntext = $_POST['message'];
		  
		  if (empty($Ntext)) {
		  
		  			$Ntext= ($row['Newstxt']);
		    }

mfg

dust
 
Zurück