Shoutbox braucht recht

dom123

Mitglied
Hi Also ich hab auf meiner Homepage eine Shoutbox man soll da aber nur mit rechten reinschreiben also wenn man admin oder member is aber ich weis nicht genau was ich da machen muss
Code:
// Shoutboxeintrag einfügen
 if (isset($_POST['sb']) && $_POST['sb'] == "add"){
   if ($ip != @mysql_result(mysql_query("select ip from shoutbox order by datum desc, zeit desc limit 1"),0)){
 	$email = addslashes($_POST['s_email']);
 	$name = addslashes($_POST['s_name']);  
 	$message = addslashes($_POST['s_message']);
 	if (!@mysql_query("insert into shoutbox (email, name, message, datum, zeit, ip) values ('$email', '$name', '$message', NOW(), NOW(), '$ip')"))
 	  echo mysql_error();
   }
 }
Code:
<table width="210" border="0" cellpadding="0" cellspacing="0">
 						  <tr> 
 						    <td width="100%" height="37" background="images/bckTitels.jpg">
 							  <table width="100%" border="0" cellspacing="0" cellpadding="0">
 							    <tr> 
 								  <td width="41"><img src="images/Logo_Mini.jpg" width="41" height="37"></td>
 								  <td class="topic"><strong>.: shoutbox</strong></td>
 							    </tr>
 							  </table></td>
 						  </tr>
 						  <tr> 
 						    <td width="100%" style="border: 1 solid #FFFFFF">
 		    		    	<table width="98%" border="0" cellspacing="0" cellpadding="0" align="center">
 		    		    	<?
 						  
 		    	    			 $res = mysql_query("select name, email, datum, zeit, message from shoutbox order by datum desc, zeit desc");
 		    		    	  $allRows = rs2array($res);
 		    		    	  for ($i = $n*$s_count; $i < mysql_num_rows($res) && $i<($n+1)*$s_count;$i++){
 		    			  		 $allRows[$i]['message'] = ereg_replace("(\r\n|\n|\r)", "<br>",$allRows[$i]['message']);
 		    		    		 $datum = explode("-", stripslashes($allRows[$i]['datum']));
 		    		    		 $datum = $datum[2].".".$datum[1].".".$datum[0];
 		    			  		 echo "<tr>
 		    		    			 <td><strong><a href='mailto:".strip_tags(stripslashes($allRows[$i]['email']))."'>".strip_tags(stripslashes($allRows[$i]['name']))."</strong></td>
 		    		    		    </tr>
 		    		    			<tr>
 		    		    			  <td>$datum || ".stripslashes($allRows[$i]['zeit'])."</td>
 		    		    			</tr>
 		    		    			<tr>
 		    		    			<td class='sb'>".strip_tags(stripslashes($allRows[$i]['message']))."</td>
 		    		    			  </tr>
 		    		    			<tr>
 		    		    			  <td colspan='2'>&nbsp;</td>
 		    		    			</tr>";
 		    		    	  }
 		    		    	  
 		    		    	  echo "<tr><td colspan='2'";
 						
 		    		    	  if (!isset($_GET['n']))
 				  		    	$n = 0;
 		  
 		    		    	  if (mysql_num_rows($res) > $s_count){
 		    		    		echo "<br /><div align='center'>";
 		    		    		echo "<a href='$_SERVER[PHP_SELF]?$a_do&$a_id&$a_b&$a_t'><| </a>";
 		    		    		if ($n > 0){
 			  		    		  $x = $n-1;
 			  		    		  echo "<a href='$_SERVER[PHP_SELF]?$a_do&$a_id&$a_b&$a_t&n=$x'>< </a>";}
 			 		    		else
 			  		    		  echo "<a href='$_SERVER[PHP_SELF]?$a_do&$a_id&$a_b&$a_t'>< </a>";		  
 		    		    		  echo "[$n]";
 
 			  		    		if (mysql_num_rows($res) - ($n+1)*$s_count  > 0) {	    		    		    		
 			  		    		  $x = $n+1;
 			  		    		  echo "<a href='$_SERVER[PHP_SELF]?$a_do&$a_id&$a_b&$a_t&n=$x'> ></a>";}
 		    		    		else 
 			  		    		  echo "<a href='$_SERVER[PHP_SELF]?$a_do&$a_id&$a_b&$a_t&n=$n'> ></a>";
 			   		    		$x = (int)(mysql_num_rows($res)/$s_count);
 		    		    		echo "<a href='$_SERVER[PHP_SELF]?$a_do&$a_id&$a_b&$a_t&n=$x'> |></a></div><br />";
 			  		    	  }
 		    			  ?>
 		    			  <form name="sb" method="post" action="<?	echo "$_SERVER[PHP_SELF]?$a_do$a_id$a_b&$a_t"; ?>"><div align="center">
 		    			  <input name='sb' value='add' type='hidden'>
 						  <input class='sb_ta' name='s_name' type='text' value='name' onBlur="if (value == '') {value = 'name'}" onFocus="if (value == 'name') {value =''}"><br />
 						  <input class='sb_ta' name='s_email' type='text' value='email' onBlur="if (value == '') {value = 'email'}" onFocus="if (value == 'email') {value =''}"><br />
 		    			  <textarea name='s_message' class='sb_ta'></textarea><br />
 		    			  <input class='button' type='submit' name='Submit' value='send'></div>	      
 					    </form>
 		    			  <td/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tr></table></td>
 						  </tr>
 					    </table>
 
Dann mach doch einfach eine neue Session Variable die die Rechte des Users beinhaltet (wenn nicht schon vorhanden).
z.B. $able2shout als boolsche Variable die true ist, wenn der eingeloggte User berechtigt ist, zu shouten.
Ggf. müsstest du dann die Tabellenstruktur (sollte der Login auf einer DB basieren - was ich annehme) um eine weitere Spalte ergänzen, in der steht, was der User für Rechte hat bzw. welcher Typ User er ist (Admin, Member, Normal).

Wenn du das hast, kannst du ja vor jedem Shouteintrag die Session Variable $able2shout prüfen und wenn sie true ist -> shout, wenn false -> echo "Du darfst nicht!";.
 
Zurück