de error is dat de pagina niet word weergegeven en dat men programma aantal lijnen zoals dit als fout weergeeft idd is dit een oude php code geweest dat we aan het debuggen zijn naar mysqli


<?php

error_reporting(E_ALL);

if(!isset($config['paths']))
{
	$config['paths']['includes'] = '../private_html/';
	$config['paths']['contents'] = '';
}

include($config['paths']['includes'] . "_include-config.php");
if(!check_login()) {
	header("Location: /login.php");
	exit;
}
include($config['paths']['includes'] . "_include-ubb-codes.php");

if($data->clanlevel > 0) {
	$crew_ranks				= query("SELECT crew_ranks FROM ea_crews WHERE name='".$data->clan."' LIMIT 1", "fetch_row");
	$crewranks				= split("\n", $crew_ranks[0]);
	$crew_ranks				= array();
	foreach($crewranks as $key => $value) {
		$row					= split("::", $value);
		$crew_ranks[$row[0]]	= $row[2]; // ID = RIGHTS
		$crew_ranks_names[$row[0]]	= $row[1];
	}
	
	$data->clanlevel		= (isset($crew_ranks[$data->clanlevel])) ? $crew_ranks[$data->clanlevel] : 1;
}

$languages_a = array("EN", "NL");

$language		= (isset($data->lang) AND in_array($data->lang, $languages_a)) ? $data->lang : "EN";

if(!in_array($language, $languages_a))
	$language		= 'EN';

include("translations/".$language."/news.php");

if(isset($_GET['addreply']) AND is_numeric($_GET['addreply']))
	$head = "<script language=\"JavaScript\" type=\"text/javascript\" src=\"/reply.js\"></script>\n";
else
	$head = '';

$head .= "<script type=\"text/javascript\" src=\"/userinfo.js\"></script>";

$echo = "";

$data_1				= query("SELECT dateofbirth FROM ea_users_optional WHERE id=".$data->id." LIMIT 1", "fetch_row");
if($data_1) {
	$dateofbirth		= explode("-", $data_1[0]);
	
	if($dateofbirth[1] == myGMTtime($time, $data->GMT, "m") AND $dateofbirth[2] == myGMTtime($time, $data->GMT, "d"))
		echo "<div style=\"position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #202020; visibility: visible;\" id=\"hideThis\" onClick=\"document.getElementById('hideThis').style.visibility='hidden';\"><table width=\"100%\" height=\"100%\"><tr><td valign=\"middle\" align=\"center\"><img src=\"http://i161.photobucket.com/albums/t205/Inzult/EA-Birthday.gif\" alt=\"Happy birthday!\"></td></tr></table></div>";
}

if(isset($_GET['read'])) {
	top_layout("", $translations['title'], $head);
	if(is_numeric($_GET['read'])) {
		$read_article = query("SELECT id, login, date, title, text, votes_points, votes_amount, votes_users, change_by, change_date, crew FROM ea_area_off_topic WHERE id=".$_GET['read']." AND (crew='Any crew' OR crew='".$data->clan."') LIMIT 1", "fetch_assoc");
		if($read_article) {
			if(isset($_GET['delete_reply'])) {
				if($data->level >= 3 OR (checkpermissions($data->clanlevel, $config['crew_rights_reversed']['Moderate crew news']) AND $read_article['crew'] == $data->clan)) {
					if(is_numeric($_GET['delete_reply'])) {
						$excist					= query("SELECT id FROM ea_area_off_topic_replies WHERE id=".htmlspecialchars($_GET['delete_reply'])." LIMIT 1", "num_rows");
						if($excist == 1) {
							query("DELETE FROM ea_area_off_topic_replies WHERE id=".htmlspecialchars($_GET['delete_reply'])." LIMIT 1");
							echo $translations['reply_deleted'];
						} else
							echo "<font color=red>".$translations['reply_deleted']."</font>";
					} else
						echo "<font color=red>".$translations['invalid_id']."</font>";
				} else
					echo "<font color=red>".$translations['no_rights_delete_reply']."</font>";
			}

			$disabled		= (in_array($data->id, explode(",", $read_article['votes_users']))) ? " DISABLED" : "";

			if(isset($_POST['vote']) AND is_numeric($_POST['vote']) AND $_POST['vote'] >= 0 AND $_POST['vote'] <= 5) {
				if(isset($data, $data->id) AND is_numeric($data->id)) {
					if(!in_array($data->id, explode(",", $read_article['votes_users']))) {
						query("UPDATE ea_area_off_topic SET votes_amount=votes_amount+1, votes_points=votes_points+".$_POST['vote'].", votes_users='".$read_article['votes_users'].$data->id.",' WHERE id=".$_GET['read']." AND (crew='Any crew' OR crew='".$data->clan."') LIMIT 1");
						$read_article['votes_points']	+= $_POST['vote'];
						$read_article['votes_amount']++;
						$disabled						= " DISABLED";
					} else
						echo "<font color=red>".$translations['already_voted']."</font>";
				} else
					echo "<font color=red>".$translations['vote_login']."</font>";
			}

			$admin_tools	= ($data->level >= 3 OR (checkpermissions($data->rights, 4096) AND $read_article['login'] == $data->login) OR (checkpermissions($data->clanlevel, $config['crew_rights_reversed']['Moderate crew news']) AND $read_article['crew'] == $data->clan)) ? "<div style=\"float: right;\"><input type=\"button\" onClick=\"window.location='news.php?delete=".$read_article['id']."'\" value=\"".$translations['delete']."\" style=\"color: red;\"> - <input type=\"button\" onClick=\"window.location='news.php?action=edit&x=".$read_article['id']."'\" value=\"".$translations['edit']."\" style=\"color: red;\"></div>" : "";

			echo "<table width=\"80%\" align=\"center\" cellspacing=\"0\" cellPadding=\"2\" border=\"1\" borderColor=\"black\"><form method=\"post\">\n";
			echo "	<tr><td class=\"newSubTitle\"><b>".htmlspecialchars(stripslashes($read_article['title']), ENT_QUOTES)."</b></td></tr>\n";
			echo "	<tr><td class=\"mainTxt\">\n";
			$patterns[] = "/DO_NOT_TRANSLATE\[POSTED_BY\]/";
			$patterns[] = "/DO_NOT_TRANSLATE\[POSTED_AT\]/";
			$replacements[] = "<b><a href=\"/profile/".$read_article['login']."/\">".$read_article['login']."</a></b>";
			$replacements[] = "<b>".myGMTtime($read_article['date'], $data->GMT, $translations['date_format'], true)."</b>";
			echo "		<div style=\"float: left;\"><sub>".preg_replace($patterns, $replacements, $translations['posted_by_and_on'])."</sub></div>".$admin_tools."<br><br>\n";
			echo "		".ubb_code($read_article['text'])."<br><br>\n";
			$patterns[] = "/DO_NOT_TRANSLATE\[AMOUNT\]/";
			$replacements[] = "<b>".$read_article['votes_amount']."</b>";
			echo "		<center><img src=\"stars.php?points=".$read_article['votes_points']."&votes=".$read_article['votes_amount']."\"> - ".preg_replace($patterns, $replacements, $translations['people_already_voted'])." <select name=\"vote\" onblur=\"this.form.submit();\"$disabled><option value=\"\">".$translations['please_rate']."</option><option value=\"0\">0 (".$translations['terrible'].")</option><option value=\"1\">1 (".$translations['very_bad'].")</option><option value=\"2\">2 (".$translations['bad'].")</option><option value=\"3\">3 (".$translations['all_right'].")</option><option value=\"4\">4 (".$translations['good'].")</option><option value=\"5\">5 (".$translations['very_good'].")</option></select> <noscript><input type=\"submit\" value=\"".$translations['rate']."\"".$disabled."></noscript><br></center>";
			if($read_article['change_by'] != '') {
				$patterns[] = "/DO_NOT_TRANSLATE\[EDITED_BY\]/";
				$patterns[] = "/DO_NOT_TRANSLATE\[EDITED_AT\]/";
				$replacements[] = "<b><a href=\"profile/".$read_article['change_by']."/\">".$read_article['change_by']."</a></b>";
				$replacements[] = "<b>".myGMTtime($read_article['change_date'], $data->GMT, $translations['date_format'], true)."</b>";
				echo "		<sub>".preg_replace($patterns, $replacements, $translations['edited_by_and_on'])."</sub>\n";
			}
			echo "	</td></tr>\n";
			echo "</form></table><br>\n";

			$j				= 0;
			$dbres			= query("SELECT id, login, message, date FROM ea_area_off_topic_replies WHERE article=".$_GET['read']." ORDER BY date ASC");
			while($reply = mysql_fetch_row($dbres)) {
				if($j == 0) {
					echo "<table width=\"80%\" align=\"center\" cellspacing=\"0\" cellPadding=\"2\" border=\"1\" borderColor=\"black\">\n";
					echo "	<tr><td class=\"newSubTitle\"><a name=\"replies\"><b>".$translations['replies']."</b></a></td></tr>\n";
					$j = 1;
				}
				echo "	<tr><td class=\"mainTxt\">\n";
				$patterns	= array();
				$patterns[] = "/DO_NOT_TRANSLATE\[REPLY_POSTED_BY\]/";
				$patterns[] = "/DO_NOT_TRANSLATE\[REPLY_POSTED_AT\]/";
				$replacements	= array();
				$replacements[] = "<b><a href=\"profile/".$reply[1]."/\">".$reply[1]."</a></b>";
				$replacements[] = "<b>".myGMTtime($reply[3], $data->GMT, $translations['date_format'], true)."</b>";
				
				$admin_reply_tools			= ($data->level >= 3 OR (checkpermissions($data->clanlevel, $config['crew_rights_reversed']['Moderate crew news']) AND $read_article['crew'] == $data->clan)) ? "<div style=\"float: right;\"><input type=\"button\" onClick=\"window.location='news.php?read=".$_GET['read']."&delete_reply=".$reply[0]."'\" value=\"".$translations['delete']."\" style=\"color: red;\"></div>" : "";
				echo "		<div style=\"float: left;\"><a name=\"reply_".$reply[0]."\"><sub>".preg_replace($patterns, $replacements, $translations['reply_posted_by_and_on'])."</sub></a></div>".$admin_reply_tools."<br><br>\n";
				echo "		".ubb_code($reply[2])."\n";
				echo "	</td></tr>\n";
			}

			if($j == 1)
				echo "</table><br>\n";

			echo "<table width=\"80%\" align=\"center\">\n";
			echo "	<tr><td align=\"center\"><a href=\"news.php?addreply=".$_GET['read']."\"><img src=\"/images/icons/page_add.png\" border=\"0\" width=\"11\" height=\"11\"> ".$translations['write_new_reply']."</a><br><br><a href=\"news.php\"><img src=\"/images/icons/application_view_list.png\" border=\"0\" width=\"13\" height=\"11\"> ".$translations['back_to_article_overview']."</a></td></tr>\n";
			echo "</table>\n";

		} else
			echo "<font color=red>".$translations['invalid_id']."</font>";
	} else
		echo "<font color=red>".$translations['invalid_id']."</font>";
} elseif(isset($_GET['addreply'])) {
	if(is_numeric($_GET['addreply'])) {
		$article		= query("SELECT id, title, login FROM ea_area_off_topic WHERE id=".$_GET['addreply']." AND (crew='Any crew' OR crew='".$data->clan."') LIMIT 1", "fetch_row");
		if($article) {
			if(isset($_POST['message'])) {
				$message		= $_POST['message'];
				query("INSERT INTO ea_area_off_topic_replies (login, article, date, IP, message) VALUES('".$data->login."', '".$article[0]."', UNIX_TIMESTAMP(), '".$IP."', '".$message."')");
				$reply_id		= mysql_insert_id();
				header("Location: /news.php?read=".$article[0]."#reply_".$reply_id);
				top_layout("", $translations['title'], $head);
				echo $echo;
				echo "<a href=\"news.php?read=".$article[0]."#reply_".$reply_id."\">".$translations['being_redirected']."</a>";
				exit;
			}
			top_layout("", $translations['title'], $head);
			echo $echo;
			echo "				<DIV id=\"subcontent2\" style=\"position:absolute; display:none; border: 5px solid black; background-color: lightyellow; width: 200px; height: 100px; padding: 8px\">
			        <font color=black><center><sub><a href=\"javascript://\" onclick=\"replaceText(' :D ', document.form.message); return false;\"><img src=images/smilies/icon_biggrin.gif alt=\":D\" width=\"15\" height=\"15\" border=\"0\"></a>
			        <a href=\"javascript://\" onclick=\"replaceText(' :lol: ', document.form.message); return false;\"><img src=images/smilies/icon_lol.gif alt=\":lol:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :) ', document.form.message); return false;\"><img src=images/smilies/icon_smile.gif alt=\":)\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' ;) ', document.form.message); return false;\"><img src=images/smilies/icon_wink.gif alt=\";)\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :P ', document.form.message); return false;\"><img src=images/smilies/icon_razz.gif alt=\":P\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :strangegrin: ', document.form.message); return false;\"><img src=\"images/smilies/icon_strangegrin.gif\" alt=\":strangegrin:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :tooth: ', document.form.message); return false;\"><img src=\"images/smilies/icon_tooth.gif\" alt=\":tooth:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' 8) ', document.form.message); return false;\"><img src=images/smilies/icon_cool.gif alt=\"8)\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :o ', document.form.message); return false;\"><img src=images/smilies/icon_surprised.gif alt=\":o\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :rolleyes: ', document.form.message); return false;\"><img src=\"images/smilies/icon_rolleyes.gif\" alt=\":rolleyes:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' 8| ', document.form.message); return false;\"><img src=\"images/smilies/icon_eek.gif\" alt=\"8|\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :| ', document.form.message); return false;\"><img src=images/smilies/icon_neutral.gif alt=\":|\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :S ', document.form.message); return false;\"><img src=images/smilies/icon_confused.gif alt=\":S\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :( ', document.form.message); return false;\"><img src=\"images/smilies/icon_frown.gif\" alt=\":(\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :\'( ', document.form.message); return false;\"><img src=\"images/smilies/icon_cry.gif\" alt=\":'(\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :mad: ', document.form.message); return false;\"><img src=\"images/smilies/icon_mad.gif\" alt=\":mad:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :twisted: ', document.form.message); return false;\"><img src=\"images/smilies/icon_twisted.gif\" alt=\":twisted:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :evil: ', document.form.message); return false;\"><img src=\"images/smilies/icon_evil.gif\" alt=\":evil:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :redface: ', document.form.message); return false;\"><img src=\"images/smilies/icon_redface.gif\" alt=\":redface:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :hand: ', document.form.message); return false;\"><img src=\"images/smilies/icon_hand.gif\" alt=\":hand:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :sick: ', document.form.message); return false;\"><img src=\"images/smilies/icon_sick.gif\" alt=\":sick:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :shhh: ', document.form.message); return false;\"><img src=\"images/smilies/icon_shhh.gif\" alt=\":shhh:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :?: ', document.form.message); return false;\"><img src=\"images/smilies/icon_question.gif\" alt=\":?:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :tdn: ', document.form.message); return false;\"><img src=\"images/smilies/icon_tdn.gif\" alt=\":tdn:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :tup: ', document.form.message); return false;\"><img src=\"images/smilies/icon_tup.gif\" alt=\":tup:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' ^o) ', document.form.message); return false;\"><img src=\"images/smilies/icon_yeah.gif\" alt=\"^o)\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :eh: ', document.form.message); return false;\"><img src=\"images/smilies/icon_eh.gif\" alt=\":eh:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :grrr: ', document.form.message); return false;\"><img src=\"images/smilies/icon_grrr.gif\" alt=\":grrr:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' -.- ', document.form.message); return false;\"><img src=\"images/smilies/icon_idiot.gif\" alt=\"-.-\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' (a) ', document.form.message); return false;\"><img src=\"images/smilies/icon_angel.gif\" alt=\"(a)\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :silence: ', document.form.message); return false;\"><img src=\"images/smilies/icon_silence.gif\" alt=\":silence:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :coffee: ', document.form.message); return false;\"><img src=\"images/smilies/icon_coffee.gif\" alt=\":coffee:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' +.+ ', document.form.message); return false;\"><img src=\"images/smilies/icon_hit.gif\" alt=\"+.+\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :box: ', document.form.message); return false;\"><img src=\"images/smilies/icon_boxing.gif\" alt=\":box:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :dance: ', document.form.message); return false;\"><img src=\"images/smilies/icon_dance.gif\" alt=\":dance:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :rambo: ', document.form.message); return false;\"><img src=\"images/smilies/icon_rambo.gif\" alt=\":rambo:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :clap: ', document.form.message); return false;\"><img src=\"images/smilies/icon_clap.gif\" alt=\":clap:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :liar: ', document.form.message); return false;\"><img src=\"images/smilies/icon_liar.gif\" alt=\":liar:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :shifty: ', document.form.message); return false;\"><img src=\"images/smilies/icon_shifty.gif\" alt=\":shifty:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :think: ', document.form.message); return false;\"><img src=\"images/smilies/icon_think.gif\" alt=\":think:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :stupid: ', document.form.message); return false;\"><img src=\"images/smilies/icon_stupid.gif\" alt=\":stupid:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :study: ', document.form.message); return false;\"><img src=\"images/smilies/icon_study.gif\" alt=\":study:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :moustache: ', document.form.message); return false;\"><img src=\"images/smilies/icon_moustache.gif\" alt=\":moustache:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :snooty: ', document.form.message); return false;\"><img src=\"images/smilies/icon_snooty.gif\" alt=\":snooty:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :shhh: ', document.form.message); return false;\"><img src=\"images/smilies/icon_shhh.gif\" alt=\":shhh:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :pray: ', document.form.message); return false;\"><img src=\"images/smilies/icon_pray.gif\" alt=\":pray:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :idea: ', document.form.message); return false;\"><img src=\"images/smilies/icon_idea.gif\" alt=\":idea:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :arrow: ', document.form.message); return false;\"><img src=\"images/smilies/icon_arrow.gif\" alt=\":arrow:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :dancing: ', document.form.message); return false;\"><img src=\"images/smilies/icon_dancing.gif\" alt=\":dancing:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :drool: ', document.form.message); return false;\"><img src=\"images/smilies/icon_drool.gif\" alt=\":drool:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :whistle: ', document.form.message); return false;\"><img src=\"images/smilies/icon_whistle.gif\" alt=\":whistle:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :wall: ', document.form.message); return false;\"><img src=\"images/smilies/icon_wall.gif\" alt=\":wall:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :naughty: ', document.form.message); return false;\"><img src=\"images/smilies/icon_naughty.gif\" alt=\":naughty:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :shoot: ', document.form.message); return false;\"><img src=\"images/smilies/icon_shoot.gif\" alt=\":shoot:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :comp: ', document.form.message); return false;\"><img src=\"images/smilies/icon_comp.gif\" alt=\":comp:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :censored: ', document.form.message); return false;\"><img src=\"images/smilies/icon_censored.gif\" alt=\":censored:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' (h) ', document.form.message); return false;\"><img src=\"images/smilies/icon_hard.gif\" alt=\"(h)\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :party: ', document.form.message); return false;\"><img src=\"images/smilies/icon_party.gif\" alt=\":party:\" border=\"0\"></a><br></sub>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[B]', '[/B]', document.form.message); return false;\" style=\"color: black\"><b>B</b></a>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[I]', '[/I]', document.form.message); return false;\" style=\"color: black\"><i>I</i></a>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[U]', '[/U]', document.form.message); return false;\" style=\"color: black\"><u>U</u></a>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[S]', '[/S]', document.form.message); return false;\" style=\"color: black\"><s>S</s></a>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[SCROLL]', '[/SCROLL]', document.form.message); return false;\" style=\"color: black\">SCROLL</a>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[CENTER]', '[/CENTER]', document.form.message); return false;\" style=\"color: black\">CENTER</a>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[IMG]', '[/IMG]', document.form.message); return false;\" style=\"color: black\">IMG</a>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[URL]', '[/URL]', document.form.message); return false;\" style=\"color: black\">URL</a>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[PRE]', '[/PRE]', document.form.message); return false;\" style=\"color: black\">PRE</a>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[SUB]', '[/SUB]', document.form.message); return false;\" style=\"color: black\">SUB</a>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[SUP]', '[/SUP]', document.form.message); return false;\" style=\"color: black\">SUP</a><br>
					<a href=\"javascript://\" onclick=\"replaceText('Affirmative!', document.form.message); return false;\"><font color=\"green\">Affirmative!</font></a>
					<a href=\"javascript://\" onclick=\"replaceText('Negative!', document.form.message); return false;\"><font color=\"red\">Negative!</font></a></center></font>
					<div align=\"right\"><a href=\"#\" onClick=\"overlayclose('subcontent2'); return false\" style=\"color: black\"><b>".$translations['close_box']."</b></a></div>
				</DIV>\n";
			echo "<table width=\"80%\" align=\"center\" cellspacing=\"0\" cellPadding=\"2\" border=\"1\" borderColor=\"black\"><form name=\"form\" method=\"POST\" onsubmit=\"submitDis('submit')\">\n";
			$patterns[] = "/DO_NOT_TRANSLATE\[REPLY_AT\]/";
			$replacements[] = "<i>".$article[1]."</i>";
			echo "	<tr><td class=\"newSubTitle\" colspan=2><b>".preg_replace($patterns, $replacements, $translations['replying_at_'])."</b></td></tr>";
			echo "	<tr><td width=10% valign=\"top\" class=\"mainTxt\">".$translations['login'].":</td><td class=\"mainTxt\">".$data->login."</td></tr>\n";
			echo "	<tr><td width=10% valign=\"top\" class=\"mainTxt\">".$translations['reply_at'].":</td><td class=\"mainTxt\"><a href=\"news.php?read=".$article[0]."\"><b>".$article[1]."</b></a> ".$translations['by']." <a href=\"profile/".$article[2]."/\"><b>".$article[2]."</b></a>.</td></tr>\n";
			echo "	<tr><td width=10% valign=\"top\" class=\"mainTxt\">".$translations['message'].":</td><td class=\"mainTxt\" width=\"90%\" align=\"center\">\n";
			$message	= (isset($_POST['message'])) ? $_POST['message'] : '';
			echo "		<textarea onselect=\"storeCaret(this);\" onclick=\"storeCaret(this);\" onchange=\"storeCaret(this);\" name=\"message\" cols='' style='width: 100%; height: 150px'>".$message."</textarea><br>\n";
			echo "		<a onClick=\"return overlay(this, 'subcontent2', 'bottomcenter')\"><b>".$translations['show_or_hide_codes']."</b></a><br>\n";
			echo "	</td></tr>\n";
			echo "	<tr><td class=\"mainTxt\" colspan=\"2\" align=\"center\"><input type=\"submit\" name=\"submit\" style=\"width: 100px;\" value=\"".$translations['reply']."\"></td></tr>\n";
			echo "</table><br>\n";
			echo "<table width=\"80%\" align=\"center\" cellspacing=\"0\" cellPadding=\"2\" border=\"0\">\n";
			echo "	<tr><td align=\"center\"><a href=\"news.php?read=".$article[0]."\"><img src=\"/images/icons/page.png\" border=\"0\"> ".$translations['go_back_to_article']."</a><br><br><a href=\"news.php\"><img src=\"/images/icons/application_view_list.png\" border=\"0\" width=\"13\" height=\"11\"> ".$translations['back_to_article_overview']."</a></td></tr>";
			echo "</table>";
		} else
			echo "<font color=red>".$translations['invalid_id']."</font>";
	} else
		echo "<font color=red>".$translations['invalid_id']."</font>";
} elseif(isset($_GET['action']) AND ($_GET['action'] == 'newarticle' OR $_GET['action'] == 'edit')) {
	if($data->level >= 3 OR checkpermissions($data->rights, 4096) OR checkpermissions($data->clanlevel, $config['crew_rights_reversed']['Moderate crew news'])) {
		$title			= '';
		$message		= '';
		$category		= '';
		if($_GET['action'] == 'edit')
		{
			if(isset($_GET['x']) && is_numeric($_GET['x']))
			{
				$edit_article		= query("SELECT title, text, crew, login, category FROM ea_area_off_topic WHERE id=".$_GET['x']." AND (crew='Any crew' OR crew='".$data->clan."') LIMIT 1", "fetch_assoc");
				if($edit_article && ($data->level >= 3 || (checkpermissions($data->rights, 4096) && $edit_article['login'] == $data->login) || (checkpermissions($data->clanlevel, $config['crew_rights_reversed']['Moderate crew news']) && $edit_article['crew'] == $data->clan)))
				{
					$title			= $edit_article['title'];
					$message		= $edit_article['text'];
					$category		= $edit_article['category'];
				}
				else
				{
					top_layout("", $translations['title'], $head);
					echo $echo;
					echo "<font color=red>".$translations['invalid_id']."</font><br><br><a href=\"news.php\">".$translations['back_to_article_overview']."</a>";
					exit;
				}
			}
			else
			{
				top_layout("", $translations['title'], $head);
				echo $echo;
				echo "<font color=red>".$translations['invalid_id']."</font><br><br><a href=\"news.php\">".$translations['back_to_article_overview']."</a>";
				exit;
			}
		}
		if(isset($_POST['message'], $_POST['title'], $_POST['cat']) && (($_POST['cat'] == 'Staff' && $data->level >= 3) || ($_POST['cat'] == 'Elite Times' && checkpermissions($data->rights, 4096)) || $_POST['cat'] == 'Other')) {
			$title			= htmlspecialchars($_POST['title'], ENT_QUOTES);
			$message		= $_POST['message'];
			$category		= $_POST['cat'];
			if(!isset($_POST['submit'])) {
				if($_POST['title'] != '' AND $_POST['message'] != '') {
						top_layout("", $translations['title'], $head);
						echo $echo;

						echo "<table width=\"80%\" align=\"center\" cellspacing=\"0\" cellPadding=\"2\" border=\"1\" borderColor=\"black\">\n";
						echo "	<tr><td class=\"newSubTitle1\"><b>".stripslashes(stripslashes($title))."</b></td></tr>\n";
						$patterns	= array();
						$patterns[] = "/DO_NOT_TRANSLATE\[POSTED_BY\]/";
						$patterns[] = "/DO_NOT_TRANSLATE\[POSTED_AT\]/";
						$replacements	= array();
						$replacements[] = "<a href=\"profile/".$data->login."/\"><b>".$data->login."</b></a>";
						$replacements[] = "<b>".myGMTtime($time, $data->GMT, $translations['date_format'], true)."</b>";
						echo "	<tr><td class=\"mainTxt\"><sub>".preg_replace($patterns, $replacements, $translations['posted_by_and_on'])."</sub><br><br>\n";
						echo "		".ubb_code(stripslashes($message))."<br><br>\n";
						$patterns	= array();
						$patterns[] = "/DO_NOT_TRANSLATE\[AMOUNT\]/";
						$replacements	= array();
						$replacements[] = "<b>1</b>";
						echo "		<center><img src=\"stars.php?points=5&votes=1\"> - ".preg_replace("/DO_NOT_TRANSLATE\[AMOUNT\]/", "<b>0</b>", $translations['people_already_voted'])." <select name=\"vote\"><option value=\"\">".$translations['please_rate']."</option><option value=\"0\">0 (".$translations['terrible'].")</option><option value=\"1\">1 (".$translations['very_bad'].")</option><option value=\"2\">2 (".$translations['bad'].")</option><option value=\"3\">3 (".$translations['all_right'].")</option><option value=\"4\">4 (".$translations['good'].")</option><option value=\"5\">5 (".$translations['very_good'].")</option></select> <noscript><input type=\"submit\" value=\"".$translations['rate']."\"></noscript></center>\n";
						if($_GET['action'] == 'edit') {
							$patterns	= array();
							$patterns[] = "/DO_NOT_TRANSLATE\[EDITED_BY\]/";
							$patterns[] = "/DO_NOT_TRANSLATE\[EDITED_AT\]/";
							$replacements	= array();
							$replacements[] = "<b><a href=\"profile/".$data->login."/\">".$data->login."</a></b>";
							$replacements[] = "<b>".myGMTtime($time, $data->GMT, $translations['date_format'], true).".</b>";
							echo "		<sub>".preg_replace($patterns, $replacements, $translations['edited_by_and_on'])."</sub>\n";
						}
						echo "	</td></tr>\n";
						echo "</table><br><br>\n";
				} else {
					top_layout("", $translations['title'], $head);
					echo $echo;
					echo "<font color=red>".$translations['invalid_title_image_message']."</font>";
				}
			} else {
				if($_POST['title'] != '' && $_POST['message'] != '')
				{
						if(isset($_GET['action'], $_GET['x']) && $_GET['action'] == 'edit' && is_numeric($_GET['x']))
						{
							$which_crew = ($data->level < 3 AND !checkpermissions($data->rights, 4096)) ? "crew='" . $data->clan . "'" : "crew='Any crew'";
							query("UPDATE ea_area_off_topic SET title='" . $_POST['title'] . "', text='" . $_POST['message'] . "', change_by='" . $data->login . "', change_date=UNIX_TIMESTAMP(), category='" . $_POST['cat'] . "' WHERE id=" . $_GET['x'] . " AND " . $which_crew . " LIMIT 1");
							header("Location: /news.php?read=" . $_GET['x']);
							top_layout("", $translations['title'], $head);
							echo $echo;
							echo "<a href=\"news.php?read=".$_GET['x']."\">".$translations['being_redirected']."</a>";
							exit;
						}
						else
						{
							if($data->level < 3 AND !checkpermissions($data->rights, 4096) AND $data->clan != "" AND checkpermissions($data->clanlevel, $config['crew_rights_reversed']['Moderate crew news']))
								query("INSERT INTO ea_area_off_topic (login, date, IP, title, text, crew, category) VALUES('".$data->login."', UNIX_TIMESTAMP(), '".$IP."', '".$_POST['title']."', '".$_POST['message']."', '".$data->clan."', '" . $_POST['cat'] . "')");
							elseif($data->level >= 3 OR checkpermissions($data->rights, 4096))
								query("INSERT INTO ea_area_off_topic (login, date, IP, title, text, category) VALUES('".$data->login."', UNIX_TIMESTAMP(), '".$IP."', '".$_POST['title']."', '".$_POST['message']."', '" . $_POST['cat'] . "')");
							$article_id		= mysql_insert_id();
							header("Location: /news.php?read=".$article_id);
							top_layout("", $translations['title'], $head);
							echo $echo;
							echo "<a href=\"news.php?read=".$article_id."\">".$translations['being_redirected']."</a>";
							exit;
						}
				}
				else
				{
					top_layout("", $translations['title'], $head);
					echo $echo;
					echo "<font color=red>".$translations['invalid_title_image_message']."</font>";
				}
			}
		} else
			top_layout("", $translations['title'], $head);
			echo "				<DIV id=\"subcontent2\" style=\"position:absolute; display:none; border: 5px solid black; background-color: lightyellow; width: 200px; height: 100px; padding: 8px\">
			        <font color=black><center><sub><a href=\"javascript://\" onclick=\"replaceText(' :D ', document.form.message); return false;\"><img src=images/smilies/icon_biggrin.gif alt=\":D\" width=\"15\" height=\"15\" border=\"0\"></a>
			        <a href=\"javascript://\" onclick=\"replaceText(' :lol: ', document.form.message); return false;\"><img src=images/smilies/icon_lol.gif alt=\":lol:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :) ', document.form.message); return false;\"><img src=images/smilies/icon_smile.gif alt=\":)\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' ;) ', document.form.message); return false;\"><img src=images/smilies/icon_wink.gif alt=\";)\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :P ', document.form.message); return false;\"><img src=images/smilies/icon_razz.gif alt=\":P\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :strangegrin: ', document.form.message); return false;\"><img src=\"images/smilies/icon_strangegrin.gif\" alt=\":strangegrin:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :tooth: ', document.form.message); return false;\"><img src=\"images/smilies/icon_tooth.gif\" alt=\":tooth:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' 8) ', document.form.message); return false;\"><img src=images/smilies/icon_cool.gif alt=\"8)\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :o ', document.form.message); return false;\"><img src=images/smilies/icon_surprised.gif alt=\":o\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :rolleyes: ', document.form.message); return false;\"><img src=\"images/smilies/icon_rolleyes.gif\" alt=\":rolleyes:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' 8| ', document.form.message); return false;\"><img src=\"images/smilies/icon_eek.gif\" alt=\"8|\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :| ', document.form.message); return false;\"><img src=images/smilies/icon_neutral.gif alt=\":|\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :S ', document.form.message); return false;\"><img src=images/smilies/icon_confused.gif alt=\":S\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :( ', document.form.message); return false;\"><img src=\"images/smilies/icon_frown.gif\" alt=\":(\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :\'( ', document.form.message); return false;\"><img src=\"images/smilies/icon_cry.gif\" alt=\":'(\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :mad: ', document.form.message); return false;\"><img src=\"images/smilies/icon_mad.gif\" alt=\":mad:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :twisted: ', document.form.message); return false;\"><img src=\"images/smilies/icon_twisted.gif\" alt=\":twisted:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :evil: ', document.form.message); return false;\"><img src=\"images/smilies/icon_evil.gif\" alt=\":evil:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :redface: ', document.form.message); return false;\"><img src=\"images/smilies/icon_redface.gif\" alt=\":redface:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :hand: ', document.form.message); return false;\"><img src=\"images/smilies/icon_hand.gif\" alt=\":hand:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :sick: ', document.form.message); return false;\"><img src=\"images/smilies/icon_sick.gif\" alt=\":sick:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :shhh: ', document.form.message); return false;\"><img src=\"images/smilies/icon_shhh.gif\" alt=\":shhh:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :?: ', document.form.message); return false;\"><img src=\"images/smilies/icon_question.gif\" alt=\":?:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :tdn: ', document.form.message); return false;\"><img src=\"images/smilies/icon_tdn.gif\" alt=\":tdn:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :tup: ', document.form.message); return false;\"><img src=\"images/smilies/icon_tup.gif\" alt=\":tup:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' ^o) ', document.form.message); return false;\"><img src=\"images/smilies/icon_yeah.gif\" alt=\"^o)\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :eh: ', document.form.message); return false;\"><img src=\"images/smilies/icon_eh.gif\" alt=\":eh:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :grrr: ', document.form.message); return false;\"><img src=\"images/smilies/icon_grrr.gif\" alt=\":grrr:\" width=\"15\" height=\"15\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' -.- ', document.form.message); return false;\"><img src=\"images/smilies/icon_idiot.gif\" alt=\"-.-\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' (a) ', document.form.message); return false;\"><img src=\"images/smilies/icon_angel.gif\" alt=\"(a)\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :silence: ', document.form.message); return false;\"><img src=\"images/smilies/icon_silence.gif\" alt=\":silence:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :coffee: ', document.form.message); return false;\"><img src=\"images/smilies/icon_coffee.gif\" alt=\":coffee:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' +.+ ', document.form.message); return false;\"><img src=\"images/smilies/icon_hit.gif\" alt=\"+.+\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :box: ', document.form.message); return false;\"><img src=\"images/smilies/icon_boxing.gif\" alt=\":box:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :dance: ', document.form.message); return false;\"><img src=\"images/smilies/icon_dance.gif\" alt=\":dance:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :rambo: ', document.form.message); return false;\"><img src=\"images/smilies/icon_rambo.gif\" alt=\":rambo:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :clap: ', document.form.message); return false;\"><img src=\"images/smilies/icon_clap.gif\" alt=\":clap:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :liar: ', document.form.message); return false;\"><img src=\"images/smilies/icon_liar.gif\" alt=\":liar:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :shifty: ', document.form.message); return false;\"><img src=\"images/smilies/icon_shifty.gif\" alt=\":shifty:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :think: ', document.form.message); return false;\"><img src=\"images/smilies/icon_think.gif\" alt=\":think:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :stupid: ', document.form.message); return false;\"><img src=\"images/smilies/icon_stupid.gif\" alt=\":stupid:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :study: ', document.form.message); return false;\"><img src=\"images/smilies/icon_study.gif\" alt=\":study:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :moustache: ', document.form.message); return false;\"><img src=\"images/smilies/icon_moustache.gif\" alt=\":moustache:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :snooty: ', document.form.message); return false;\"><img src=\"images/smilies/icon_snooty.gif\" alt=\":snooty:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :shhh: ', document.form.message); return false;\"><img src=\"images/smilies/icon_shhh.gif\" alt=\":shhh:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :pray: ', document.form.message); return false;\"><img src=\"images/smilies/icon_pray.gif\" alt=\":pray:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :idea: ', document.form.message); return false;\"><img src=\"images/smilies/icon_idea.gif\" alt=\":idea:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :arrow: ', document.form.message); return false;\"><img src=\"images/smilies/icon_arrow.gif\" alt=\":arrow:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :dancing: ', document.form.message); return false;\"><img src=\"images/smilies/icon_dancing.gif\" alt=\":dancing:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :drool: ', document.form.message); return false;\"><img src=\"images/smilies/icon_drool.gif\" alt=\":drool:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :whistle: ', document.form.message); return false;\"><img src=\"images/smilies/icon_whistle.gif\" alt=\":whistle:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :wall: ', document.form.message); return false;\"><img src=\"images/smilies/icon_wall.gif\" alt=\":wall:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :naughty: ', document.form.message); return false;\"><img src=\"images/smilies/icon_naughty.gif\" alt=\":naughty:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :shoot: ', document.form.message); return false;\"><img src=\"images/smilies/icon_shoot.gif\" alt=\":shoot:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :comp: ', document.form.message); return false;\"><img src=\"images/smilies/icon_comp.gif\" alt=\":comp:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :censored: ', document.form.message); return false;\"><img src=\"images/smilies/icon_censored.gif\" alt=\":censored:\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' (h) ', document.form.message); return false;\"><img src=\"images/smilies/icon_hard.gif\" alt=\"(h)\" border=\"0\"></a>
					<a href=\"javascript://\" onclick=\"replaceText(' :party: ', document.form.message); return false;\"><img src=\"images/smilies/icon_party.gif\" alt=\":party:\" border=\"0\"></a><br></sub>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[B]', '[/B]', document.form.message); return false;\" style=\"color: black\"><b>B</b></a>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[I]', '[/I]', document.form.message); return false;\" style=\"color: black\"><i>I</i></a>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[U]', '[/U]', document.form.message); return false;\" style=\"color: black\"><u>U</u></a>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[S]', '[/S]', document.form.message); return false;\" style=\"color: black\"><s>S</s></a>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[SCROLL]', '[/SCROLL]', document.form.message); return false;\" style=\"color: black\">SCROLL</a>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[CENTER]', '[/CENTER]', document.form.message); return false;\" style=\"color: black\">CENTER</a>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[IMG]', '[/IMG]', document.form.message); return false;\" style=\"color: black\">IMG</a>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[URL]', '[/URL]', document.form.message); return false;\" style=\"color: black\">URL</a>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[PRE]', '[/PRE]', document.form.message); return false;\" style=\"color: black\">PRE</a>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[SUB]', '[/SUB]', document.form.message); return false;\" style=\"color: black\">SUB</a>
					<a href=\"javascript:void(0);\" onclick=\"surroundText('[SUP]', '[/SUP]', document.form.message); return false;\" style=\"color: black\">SUP</a><br>
					<a href=\"javascript://\" onclick=\"replaceText('Affirmative!', document.form.message); return false;\"><font color=\"green\">Affirmative!</font></a>
					<a href=\"javascript://\" onclick=\"replaceText('Negative!', document.form.message); return false;\"><font color=\"red\">Negative!</font></a></center></font>
					<div align=\"right\"><a href=\"#\" onClick=\"overlayclose('subcontent2'); return false\" style=\"color: black\"><b>".$translations['close_box']."</b></a></div>
				</DIV>\n";
			echo "<table width=\"80%\" align=\"center\" cellspacing=\"0\" cellPadding=\"2\" border=\"1\" borderColor=\"black\"><form name=\"form\" method=\"POST\" onsubmit=\"submitDis('submit')\">\n";
			if($_GET['action'] == 'edit')
				echo "	<tr><td class=\"newSubTitle\" colspan=2><b>".$translations['edit_article']."</b></td></tr>";
			else
				echo "	<tr><td class=\"newSubTitle\" colspan=2><b>".$translations['edit_article']."</b></td></tr>";
			echo "	<tr><td width=60 valign=\"top\" class=\"mainTxt\">Login:</td><td class=\"mainTxt\">".$data->login."</td></tr>\n";
			$writing_for_crew = ($data->level < 3 AND !checkpermissions($data->rights, 4096)) ? $data->clan : $translations['any_crew_HQ'];
			echo "	<tr><td width=60 valign=\"top\" class=\"mainTxt\">".$translations['crew'].":</td><td class=\"mainTxt\">".$writing_for_crew."</td></tr>\n";
			echo "<tr>";
				echo "<td width=60 valign=\"top\" class=\"mainTxt\">";
					echo "Category:";
				echo "</td>";
				echo "<td class=\"mainTxt\">";
					echo "<select name=\"cat\">";
						if($data->level >= 3)
						{
							if(empty($category) || $category == 'Staff')
								echo "<option value=\"Staff\" selected>Staff</option>";
							else
								echo "<option value=\"Staff\">Staff</option>";
						}
						if(checkpermissions($data->rights, 4096))
						{
							if((empty($category) && $data->level < 3) || $category == 'Elite Times')
								echo "<option value=\"Elite Times\" selected>Elite Times</option>";
							else
								echo "<option value=\"Elite Times\">Elite Times</option>";
						}
						if(!empty($category) && $category == 'Other')
							echo "<option value=\"Other\" selected>Other</option>";
						else
							echo "<option value=\"Other\">Other</option>";
					echo "</select>";
				echo "</td>";
			echo "</tr>";
			echo "	<tr><td width=60 valign=\"top\" class=\"mainTxt\">".$translations['newtitle'].":</td><td class=\"mainTxt\"><input type=\"text\" name=\"title\" maxlength=\"255\" style=\"width: 540\" value=\"".stripslashes(stripslashes($title))."\"><br>".$translations['title_description']."</td></tr>\n";
			echo "	<tr><td width=60 valign=\"top\" class=\"mainTxt\">".$translations['message'].":</td><td class=\"mainTxt\" width=\"90%\" align=\"center\">\n";
			echo "		<textarea onselect=\"storeCaret(this);\" onclick=\"storeCaret(this);\" onkeyup=\"storeCaret(this);\" onchange=\"storeCaret(this);\" name=\"message\" cols='' style='width: 100%; height: 150px'>".htmlspecialchars(stripslashes(stripslashes($message)), ENT_QUOTES)."</textarea><br>\n";
			echo "		<a onClick=\"return overlay(this, 'subcontent2', 'bottomcenter')\"><b>".$translations['show_or_hide_codes']."</b></a><br>\n";
			echo "	</td></tr>\n";
			if($_GET['action'] == 'edit')
				$previewed			= (isset($_POST['preview'])) ? "<br><br><input type=\"submit\" name=\"submit\" style=\"width: 110px;\" value=\"".$translations['edit_article']."\">" : "";
			else
				$previewed			= (isset($_POST['preview'])) ? "<br><br><input type=\"submit\" name=\"submit\" style=\"width: 110px;\" value=\"".$translations['add_article']."\">" : "";
			echo "	<tr><td class=\"mainTxt\" colspan=\"2\" align=\"center\"><input type=\"submit\" name=\"preview\" style=\"width: 130px;\" value=\"".$translations['preview_article']."\">".$previewed."</td></tr>\n";
			echo "</table><br>\n";
			echo "<table width=\"80%\" align=\"center\" cellspacing=\"0\" cellPadding=\"2\" border=\"0\">\n";
			echo "	<tr><td align=\"center\"><a href=\"news.php\"><img src=\"/images/icons/application_view_list.png\" border=\"0\" width=\"13\" height=\"11\"> ".$translations['back_to_article_overview']."</a></td></tr>";
			echo "</table>";
	} else {
		top_layout("", $translations['title'], $head);
		echo $echo;
		echo "<font color=red>".$translations['no_rights']."</font><br><br><a href=\"news.php\"><img src=\"/images/icons/application_view_list.png\" border=\"0\" width=\"13\" height=\"11\"> ".$translations['back_to_article_overview']."</a>";
	}
} elseif(isset($_GET['showall'])) {
	top_layout("", $translations['title'], $head);
	echo $echo;
	echo "<table width=\"80%\" align=\"center\" cellspacing=\"0\" cellPadding=\"2\" border=\"1\" borderColor=\"black\">\n";
	echo "	<tr><td class=\"newSubTitle\"><b>".$translations['older_articles']."</b></td></tr>\n";
	$dbres = query("SELECT id, login, date, title FROM ea_area_off_topic WHERE (crew='Any crew' OR crew='".$data->clan."') ORDER BY id DESC LIMIT 0,50");
	while($article = mysql_fetch_assoc($dbres)) {
		echo "	<tr><td class=\"mainTxt\">".myGMTtime($article['date'], $data->GMT, "d/m")." - <a href=\"news.php?read=".$article['id']."\">".$article['title']."</a> ".$translations['by']." <a href=\"profile/".$article['login']."/\"><b>".$article['login']."</b></a>.</td></tr>\n";
	}
	echo "</table><br>";
	echo "<table width=\"80%\" align=\"center\" cellspacing=\"0\" cellPadding=\"2\" border=\"0\">\n";
	echo "	<tr><td align=\"center\"><a href=\"news.php\"><img src=\"/images/icons/application_view_list.png\" border=\"0\" width=\"13\" height=\"11\"> ".$translations['back_to_article_overview']."</a></td></tr>";
	echo "</table>";
} else {
	top_layout("", $translations['title'], $head);
	
	if($data->level >= 4)
	{
		$errorLogLocation = ini_get("error_log");
		if(!empty($errorLogLocation))
		{
			function ErrorColorCoding($str)
			{
				$str = trim($str);
				$str = str_replace("PHP Warning", "<font color=orange>WARNING</font>", $str);
				$str = str_replace("PHP Fatal error", "<font color=red>FATAL ERROR</font>", $str);
				$str = str_replace("PHP Parse error", "<font color=red><b>PARSE ERROR</b></font>", $str);
				$str = str_replace("PHP Notice", "<font color=yellow>NOTICE</font>", $str);
				$str = preg_replace("/in ([a-zA-Z\/\.\-\_]+?) on line/i", "in <i>\\1</i> on line", $str);
				$str = preg_replace("/in \<i\>\/home\/eliteaveng\/domains\/eliteavengers\.org\/public_html\/([a-zA-Z\/\.\-\_]+?)\<\/i\> on line/i", "in <a href=\"\\1\" style=\"color: yellow;\"><i>\\1</i></a> on line", $str);
				
				return $str;
			}
			
			echo "<table width=\"80%\" align=\"center\" cellspacing=0 cellpadding=0>";
				echo "<tr>";
					echo "<td class=\"title\" style=\"padding: 2px;\">";
						echo "<b>Error Log</b>";
					echo "</td>";
				echo "</tr>";
				echo "<tr>";
					echo "<td class=\"text\">";
						echo "<table width=\"100%\" cellspacing=0 cellpadding=2>";
							$errors = file($errorLogLocation);
							$errors = array_reverse($errors);
							
							$start = (isset($_GET['errorstart']) && is_numeric($_GET['errorstart']) && $_GET['errorstart'] > 0) ? $_GET['errorstart'] : 0;
							$limit = 20;
							
							for($i = $start; $i < ( $limit + $start ); $i++)
							{
								if(isset($errors[$i]) && preg_match("/^\[(.+?)\](.+?)$/", $errors[$i], $matches))
								{
									if($i % 2 == 0)
										echo "<tr>";
									else
										echo "<tr style=\"background-color: #323232;\">";
										echo "<td width=\"150\">";
											echo myGMTtime($matches[1], $data->GMT, 'default');
										echo "</td>";
										echo "<td>";
											echo ErrorColorCoding($matches[2]);
										echo "</td>";
									echo "</tr>";
								}
							}
						echo "</table>";
						echo "<a href=\"?errorstart=" . ( $start + 20 ) . "\">View older errors...</a>";
					echo "</td>";
				echo "</tr>";
			echo "</table><br/>";
		}
	}
	
	// Crew news
	echo "<table width=\"80%\" align=\"center\" cellspacing=\"0\" cellPadding=\"2\" border=\"1\" borderColor=\"black\">\n";
	echo "	<tr><td class=\"newSubTitle\" style=\"valign: top\">\n";
	echo "Crew news:";
	echo "	</td></tr>";
	echo "</table>";
	
	$i = 0;
	$dbres = query("SELECT SQL_CACHE id,subject,message,poster FROM ea_crew_news WHERE crew='{$data->clan}' ORDER BY time DESC");
	while($news = mysql_fetch_row($dbres))
	{
		$subject		= (!isset($news[1]) OR $news[1] == '') ? "(No Subject)" : $news[1];
		$message		= ubb_code($news[2]);
		echo "<table width=\"80%\" align=\"center\" cellspacing=\"0\" cellPadding=\"2\" border=\"1\" borderColor=\"black\">\n";
		echo "	<tr><td class=\"subTitle\" style=\"valign: top\">\n";
		echo $subject;
		echo "	</td></tr>";
		echo "	<tr><td class=\"mainTxt\" style=\"valign: top\">\n";
		echo $message;
		echo "	</td></tr>";
		echo "	<tr><td class=\"mainTxt\" style=\"text-align: right; valign: top\">\n";
		echo "~<a href=\"profile/".$news[3]."/\"><b>".$news[3]."</b></a>";
		echo "	</td></tr>";
		echo "</table><br />\n";
		$i++;
	}
	
	if($i == 0)
	{
		// No crew news
		echo "<table width=\"80%\" align=\"center\" cellspacing=\"0\" cellPadding=\"2\" border=\"1\" borderColor=\"black\">\n";
		echo "	<tr><td class=\"mainTxt\" style=\"valign: top; text-align: center; color: red;\">\n";
		echo "There is no crew news!";
		echo "	</td></tr>";
		echo "</table><br />";
	}
	// End crew news
	
	echo $echo;
	if(isset($_GET['delete'])) {
		if($data->level >= 3 OR checkpermissions($data->rights, 4096) OR checkpermissions($data->clanlevel, $config['crew_rights_reversed']['Moderate crew news'])) {
			if(is_numeric($_GET['delete'])) {
				$which_crew			= ($data->level < 3) ? "crew='".$data->clan."'" : "crew='Any crew'";
				$excist				= query("SELECT title, login FROM ea_area_off_topic WHERE id=".htmlspecialchars($_GET['delete'])." AND ".$which_crew." LIMIT 1", "fetch_row");
				if($excist) {
					echo $translations['confirm_deletion']."<a href=\"news.php?read=".$_GET['delete']."\"><b>".htmlspecialchars($excist[0], ENT_QUOTES)."</b></a>".$translations['confirm_deletion_1']."<a href=\"profile/".$excist[1]."/\"><b>".$excist[1]."</b></a>?<br><br><a href=\"news.php?delete_confirmed=".htmlspecialchars($_GET['delete'])."\">".$translations['yes_delete_it']."</a>";
				} else
					echo "<font color=red>".$translations['invalid_id']."</font>";
			} else
				echo "<font color=red>".$translations['invalid_id']."</font>";
		} else
			echo "<font color=red>".$translations['no_deleting_rights']."</font>";
	} elseif(isset($_GET['delete_confirmed'])) {
		if($data->level >= 3 OR checkpermissions($data->rights, 4096) OR checkpermissions($data->clanlevel, $config['crew_rights_reversed']['Moderate crew news'])) {
			if(is_numeric($_GET['delete_confirmed'])) {
				$which_crew			= ($data->level < 3 AND !checkpermissions($data->rights, 4096)) ? "crew='".$data->clan."'" : "crew='Any crew'";
				$which_user			= ($data->level < 3 AND checkpermissions($data->rights, 4096)) ? " AND login='".$data->login."'" : "";
				$excist				= query("SELECT id FROM ea_area_off_topic WHERE id=".htmlspecialchars($_GET['delete_confirmed'])." AND ".$which_crew.$which_user." LIMIT 1", "num_rows");
				if($excist == 1) {
					query("DELETE FROM ea_area_off_topic WHERE id=".htmlspecialchars($_GET['delete_confirmed'])." AND (crew='Any crew' OR crew='".$data->clan."') LIMIT 1");
					query("DELETE FROM ea_area_off_topic_replies WHERE article=".htmlspecialchars($_GET['delete_confirmed'])."");
					echo $translations['article_deleted'];
				} else
					echo "<font color=red>".$translations['invalid_id']."</font>";
			} else
				echo "<font color=red>".$translations['invalid_id']."</font>";
		} else
			echo "<font color=red>".$translations['no_deleting_rights']."</font>";
	}

	$i = 0;
	$dbres = query("SELECT SQL_CACHE id, login, date, title, text, crew FROM ea_area_off_topic WHERE (crew='Any crew' OR crew='".$data->clan."') ORDER BY id DESC LIMIT 0,5");
	while($article = mysql_fetch_assoc($dbres)) {
		$align_at			= 1;
		$align_at1			= ($align_at) ? "right" : "left";
		$align_at2			= (!$align_at) ? "right" : "left";
		$align_at3			= ($align_at) ? "newSubTitle" : "newSubTitle1";
		$align_at4			= ($align_at) ? "" : "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
		$align_at5			= (!$align_at) ? "" : "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
		$admin_tools		= ($data->level >= 3 OR (checkpermissions($data->rights, 4096) AND $article['login'] == $data->login) OR (checkpermissions($data->clanlevel, $config['crew_rights_reversed']['Moderate crew news']) AND $article['crew'] == $data->clan)) ? "<div style=\"text-align: ".$align_at2."; float: ".$align_at2.";\"><input type=\"button\" onClick=\"window.location='news.php?delete=".$article['id']."'\" value=\"".$translations['delete']."\" style=\"color: red;\"> - <input type=\"button\" onClick=\"window.location='news.php?action=edit&x=".$article['id']."'\" value=\"".$translations['edit']."\" style=\"color: red;\"></div>" : "";
		echo "<table width=\"80%\" align=\"center\" cellspacing=\"0\" cellPadding=\"2\" border=\"1\" borderColor=\"black\">\n";
		echo "	<tr><td class=\"".$align_at3."\" colspan=\"2\" style=\"text-align: ".$align_at1."; valign: top\">\n";
		echo "		<div style=\"float: $align_at1;\"><b>".$align_at4.htmlspecialchars(stripslashes($article['title']), ENT_QUOTES).$align_at5."</b></div>".$admin_tools."\n";
		echo "	</td></tr>\n";
		echo "	<tr><td class=\"mainTxt\" valign=\"top\">\n";
		echo "		<table width=\"100%\" height=\"100%\">\n";
		echo "			<tr><td valign=\"top\">\n";
		echo "				".ubb_code($article['text'])."<br style=\"clear: both;\">\n";
		echo "				<div style=\"text-align: right; font-size: 12px;\"><a href=\"news.php?read=".$article['id']."\" style=\"color: #aaaaaa\"><b>Comments &gt;&gt;</b></a></div>\n";
		echo "			</td></tr>\n";
		echo "			<tr><td valign=\"bottom\">\n";
		$patterns	= array();
		$patterns[] = "/DO_NOT_TRANSLATE\[POSTED_BY\]/";
		$patterns[] = "/DO_NOT_TRANSLATE\[POSTED_AT\]/";
		$replacements	= array();
		$replacements[] = "<a href=\"profile/".$article['login']."/\"><b>".$article['login']."</b></a>";
		$replacements[] = "<b>".myGMTtime($article['date'], $data->GMT, $translations['date_format'], true)."</b>";
		echo "				".preg_replace($patterns, $replacements, $translations['posted_by_and_on'])."\n";
		echo "			</td></tr>\n";
		echo "		</table>";
		echo "	</td></tr>\n";
		echo "</table><br>\n\n";
		$i++;
	}

	echo "<table width=\"80%\" align=\"center\" cellspacing=\"0\" cellPadding=\"2\" border=\"1\" borderColor=\"black\">\n";
	echo "	<tr><td class=\"newSubTitle\"><b>".$translations['older_articles']."</b></td></tr>\n";
	$dbres = query("SELECT id, login, date, title FROM ea_area_off_topic WHERE (crew='Any crew' OR crew='".$data->clan."') ORDER BY id DESC LIMIT 5,25");
	while($article = mysql_fetch_assoc($dbres)) {
		echo "	<tr><td class=\"mainTxt\">".myGMTtime($article['date'], $data->GMT, "d/m")." - <a href=\"news.php?read=".$article['id']."\">".$article['title']."</a> by <a href=\"profile/".$article['login']."/\"><b>".$article['login']."</b></a>.</td></tr>\n";
	}
	echo "	<tr><td class=\"mainTxt\"><a href=\"news.php?showall=1\"><b>".$translations['show_all_articles']."</b></a></td></tr>\n";
	echo "</table>";
	if($data->level >= 3 OR checkpermissions($data->rights, 4096) OR checkpermissions($data->clanlevel, $config['crew_rights_reversed']['Moderate crew news']))
		echo "<center><br><a href=\"news.php?action=newarticle\"><img src=\"/images/icons/page_add.png\" border=\"0\" width=\"16\" height=\"16\"> ".$translations['write_new_article']."</a></center>";
}

bottom_layout(false);

?>



Willem vp op 06/09/2019 01:04:31
AND en OR zijn eigenlijk meer geschikt om iets flow control-achtigs mee te doen:
...
AND en OR zijn dus niet zozeer operators die je moet vermijden; het is meer een kwestie van weten waar ze geschikt voor zijn en ze in de juiste situatie toepassen.

Precies, en in bovenstaande code van de topicstarter -de PHP delen- betreft het in alle gevallen predikaten met condities die alle moeten gelden. In geen enkel geval gaat het om situaties waarbij het resultaat van een uit te voeren operatie dient uit te monden in het uitvoeren van een andere operatie / deel van een statement. Het gaat hier niet om flow control.

Willem vp op 06/09/2019 01:04:31
Zou je dit met een || doen, dan gebeurt er iets heel anders. '||' heeft namelijk een hogere precedentie dan '=', dus eerst wordt "fopen() || show_error()" uitgevoerd, en het resultaat daarvan wordt toegekend aan $fh. Het is dan afhankelijk van de return value van show_error() wat er misgaat in je code.

Om misverstanden te voorkomen lijkt het mij sowieso altijd beter om expliciet haken te gebruiken als er ruimte is voor verwarring. Ook al zou de associativiteit hier uitsluitsel over geven. Bijvoorbeeld A || B && C volstaat in principe, maar A || (B && C) zou mij toch wat meer vertrouwen geven, ook al is het niet direct nodig.

Weet je trouwens zeker dat de precedentie van || voor problemen zorgt? Er bestaat namelijk in PHP zoiets als lazy evaluation. Indien het eerste deel iets retourneert dat verschilt van iets false-achtigs wordt het tweede deel niet uitgevoerd.
<?php
function test1() {
    echo '#1';
    return true;
}

function test2() {
    echo '#2';
    return true;
}

$test = test1() || test2();
?>

Levert enkel '#1'. Nu is het toekennen van het resultaat van show_error() (als er uberhaupt een resultaat is) aan $fh waarschijnlijk onzinnig, maar ik suggereer nergens dat || en OR vrij inwisselbaar zouden zijn. Dus om nu alles te searchen en replacen lijkt mij onverstandig, je moet nog steeds interpreteren wat er gebeurt en dan inderdaad besluiten welke constructie je gebruikt.
Thomas van den Heuvel op 06/09/2019 13:20:43

Weet je trouwens zeker dat de precedentie van || voor problemen zorgt? Er bestaat namelijk in PHP zoiets als lazy evaluation. Indien het eerste deel iets retourneert dat verschilt van iets false-achtigs wordt het tweede deel niet uitgevoerd.

Ik drukte me wellicht niet helemaal zuiver uit. Als de fopen() lukt, is er niets aan de hand. Het probleem met '||' versus 'or' zit in de situatie dat fopen() mislukt, en dus 'false' teruggeeft. In dat geval krijgt (wanneer je || gebruikt) $fh de return value van show_error() in plaats van de return value van fopen().
Dat snap ik, de "denkbeeldige groeperingshaken" staan op verschillende plaatsen bij gebruikmaking van || of or.

Tegelijkertijd verlaat je bij uitvoering van show_error() de normale flow van het programma, of zou dit moeten gebeuren. Het is dan sowieso niet de bedoeling dat je verder gaat met bewerkingen op $fh. En het is dan dus ook in zekere zin niet (langer) relevant welke waarde $fh op dat moment heeft.

In dat opzicht heeft een or-constructie ook niet zoveel te maken met "flow", het lijkt eerder op het trekken aan de noodrem. Afhankelijk van het doel van het uitvoeren van de code zou je dit ook anders kunnen aanpakken.

show_error() suggereert een soort van visuele afhandeling. Dit in tegenstelling tot een importscript ofzo. Daar zou je misschien eerder "verwachten" dat invoer niet voldoet, en dat het script dan ook dan en daar stopt.

Wanneer er tijdens de verwerking van gegevens tussen twee (visuele) webpagina's iets misgaat is het inderdaad ook handig dat je hier eveneens een visuele terugkoppeling van krijgt. Maar dit is dan misschien weer meer "out of the ordinary" en is er in zekere zin sprake van een uitzondering. Voor dat soort gevallen zouden exceptions dus misschien beter zijn, maar het hangt er dus (ook) van af wat je precies aan het doen bent, en vooral ook in welke setting.

Ik gebruikte het vroeger ook heel vaak, dingen als "mysql_query() or die()", maar dat staat toch minder netjes middenin een webpagina. De afhandeling hiervan kan ook anders, en als de situatie hier om vraagt, subtieler.

(NB hiermee wil ik niet zeggen dat constructies met "and" of "or" in PHP-code achterhaald zouden zijn ofzo, het heeft gewoon, net als zoveel andere dingen, een specifiek toepassingsgebied)
Als je een or die() uitsluitend bij uitzonderingen wilt uitvoeren, zou je een and zo kunnen gebruiken:

$resultaat = doe_iets() and log_dat();

Reageren