Hallo,
ich habe folgendes Problem:
Ich versuche das Chatsystem etwas umzuschreiben, so das es einen refresh gibt. (Mal wieder

)
Nunja.. nur kommt schon der erste Fehler in der neuen addcommentary Funktion... Fwrite(); beschreibt die angegebene Datei nicht.
Erster Part: ./commentary/comments_section_$section.txt! In diesem Fall: ./commentary/comments_section_village.txt
Zweiter Part (Da erster Part nicht ging): comments_section_$section.txt! In diesem Fall: comments_section_village.txt
Das Dir und die Datei haben CHMOD-Rechte "777" - Beschreibbar.
Ich wundere mich, warum fwrite nicht funktioniert. Daher es in anderen projekten, die mit *.txt Dateien zutun hatten, immer ging.
Hier mal die addcommentary:
$this->bbcode_second_pass_code('', 'function addcommentary()
{
global $_GET,$_POST,$session,$REQUEST_URI,$doublepost;
$doublepost = 0;
$section = $_POST['section'];
$talkline = $_POST['talkline'];
if ($_POST['insert'][$section] !== NULL && trim($_POST['insert'][$section]) != '') :
$commentary = str_replace('`n','',soap($_POST['insert'][$section]));
$y = strlen($commentary);
for ($x=0;$x<$y;$x++) :
if (substr($commentary,$x,1)) :
$cc++;
if ($cc > getsetting('maxcolors',10)) :
$commentary = substr($commentary,0,$x).preg_replace('"[`]."','',substr($commentary,$x));
$x = $y;
endif;
endif;
endfor;
$mysql_emote = false;
if ($mysql_emote == true) :
if ((substr($commentary,0,4) == '/afk') || (substr($commentary,0,5) == '/away')) :
$skip = explode(' ',$commentary,2);
if ($skip[1] > '') :
$row = '(`^'.$skip[1].'`&)';
endif;
switch (e_rand(1,3)) :
case 1:
$commentary = '/me `&ist kurz beschäftigt. '.$row;
break;
case 2:
$commentary = '/me `&besucht mal kurz das Plumpsklo im Wald! '.$row;
break;
case 3:
$commentary = '/me `&verspürt einen tiefen Schmerz in der Magengegend! '.$row;
break;
endswitch;
endif;
if ((substr($commentary,0,5) == '/kiss')) :
$skip = explode(' ',$commentary,2);
if ($skip[1] == '') :
return false;
elseif ((strtoupper($skip[1]) == $session['user']['login']) ||
(strtolower($skip[1]) == $session['user']['login']) ||
(ucfirst(strtolower($skip[1])) == $session['user']['login'])) :
debuglog('`& Hat versucht sich selbst zu küssen!');
else:
$query = db_query('SELECT kiss FROM accounts WHERE login = "'.$skip[1].'"');
$row = db_fetch_assoc($query);
$row['kiss']++;
db_query('UPDATE accounts SET kiss = '.$row['kiss'].' WHERE login = "'.$skip[1].'"');
$commentary = '/me `3küsst '.$skip[1].'`! ganz herzlich!';
endif;
endif;
endif;
Commentary();
$commentary = preg_replace('"([^[:space:]]{45,45})([^[:space:]])"','\\1 \\2',$commentary);
if ($session['user']['drunkenness']>50) $talkline = 'lallt';
$talkline = translate($talkline);
if ($talkline != 'sagt'
&& substr($commentary,0,1)!=':'
&& substr($commentary,0,2)!='::'
&& substr($commentary,0,3)!='/me')
$commentary = ':`3'.$talkline.': \\\"`#'.$commentary.'`3\\\"';
$data = fopen('comments_section_'.$section.'.txt', 'w+');
if (!$data) :
output('`iDie Datei verfügt über keinerlei Schreibrechte! CHMOD bitte auf 777!`i`n`n');
else :
fwrite($data, $section,$commentary);
fclose($data);
endif;
endif;
}
# Noch nicht ganz fertig ;) ')
Ich überprüfte selbstverständlich auch, ob es überhaupt bis zum Beschreiben der Datei kommt. Dies tat ich mit einem Output. Dieser Outputinhalt wurde mir wie zu erwarten
angezeigt ! Also wird wohl irgendwas mit der Verbindung nicht stimmen.. Google hat mir leider nicht weiter geholfen.
Hoffe Ihr könnt mir helfen..
Lg,
MySQL.