Forum: eingeloggt oder nicht?!

Headymaster

Erfahrenes Mitglied
Hallo!

Ich möchte meiner Forum-Klasse gerne hinzufügen, dass erkannt wird ob der USer eingeloggt ist oder unregistriert..sorich nicht eingeloggt oder überhaupt kein Account.

So also ich habe eine User-Klasse in der der login überprüft wird:
PHP:
function checkuser($user_login, $user_id)
			{
				      $query = $this->db->query("SELECT * FROM `user` WHERE login='".$user_login."' AND id='".$user_id."'");
					  if($this->db->num_rows($query) < 1)
					  {
					    return FALSE;
					  }
					  else
					  {
					    return TRUE;
					  }
			}
---> Erklärung:

In dieser Klasse werden auch mit dem constructor registry-klassen geladen, wie z.b. die template- und mysql-klasse.

So in meine forum-klasse:
PHP:
function addform($fid, $tid)
			 {
			   // Sicherstellen, dass kein Post in ein Hauptforum geschrieben wird....
			   $parfrid = $this->db->query("SELECT * FROM `forum_kats` WHERE id='".$fid."'");
			   $parfridget = $this->db->fetch_array($parfrid);
			   if($parfridget['ParentForumID'] == 0)
			   {
			     header ("Location: index.php?s=forum.php");
			   }
			   else
			   { 
			   // Validierung der Daten
			   
			     // Neuer Thread oder nur eine Antwort?!
			     if(empty($tid))
				 {
				    $this->add_link = "&fid=".$fid;
					$topic = "<input type=\"text\" name=\"topic\" class=\"form\">";
				 }
				 else
				 {
				    $this->add_link = "&fid=".$fid."&tid=".$tid;
					
					// Topicname auslesen
					$gettopic = $this->db->query("SELECT `topic` FROM `forum_thr` WHERE id='".$tid."' AND fid='".$fid."'");
					$topicget = $this->db->fetch_assoc($gettopic);
					$topic = $topicget['topic']."<input type=\"hidden\" name=\"topic\" value=\"AW: ".$topicget['topic']."\" class=\"form\">";
				 }
				 
				 // Eingeloggter User oder unregistriert?!
			   
			   
			   return $this->tpl->showtpl("forum/addform", array("fid" => $fid,
				                                                 "tid" => $tid,
																 "topic" => $topic,
																 "add_link" => $this->add_link));
			   }
			 }
--->Erklärung:

So in dieser Methode wird ersteinmal überprüft ob man sich ausversehen in einem Oberforum befindet, denn dort darf man natürlich keine Threads erstellen.

Dann wird überprüft ob man einen Thread posten will oder ob man auf ein Thread antworten will.
Wenn man ein Thread erstellt wird ein Feld mit Topicangabe im addform angezeigt.
Wenn man antworten will wird das Topic des Threads mit einem hidden-Field übergeben und man kann kein neues Topic angeben.

So nun möchte ich diese Unterscheidung zwischen username mit hidden übergeben oder ein input field zum eintragen eines Namen so unterscheiden, dass eingeloggte User den Namen nicht mehr eingeben müssen, unregistrierte oder nicht eingeloggte User den Namen jedoch eingeben müssen.

So da ich ja mit einer registry-klasse wäre das ganze ja nicht schwer.

ABER: Ich habe ja in der User-Klasse bereits registry klassen verwendet, wie schaffe ich es nun dass die Forum-Klasse auch noch Methoden der User-Klasse verwenden kann?!

Also stehe super auf dem Schlauch...wäre nett wenn da ein paar Profis von euch nen Tipp wissen oder ob es da sogar Pattern gibt die so etwas bewerstelligen :)

Würde mich super über ne Hilfe freuen :)

MFG Niels
 
Hi!

Keine Ahnung, ob es dir weiterhilft. Bei mir hab ich es folgendermaßen gelöst.
Ich hab der Tabelle "user" zusätzlich noch ne Spalte "online" eingefügt. 0=off, 1=on - wunderbar und kann ich auf alles andere auf der Site auch verwenden. Wenn jemand nun im Forum auf etwas antworten will, ist nicht eingeloggt (=off) kommt automatisch die anmeldemaske, von der er dann zum Thema weitergeleitet wird bei erfolgreicher Anmeldung (wie in diesem Forum hier)

Wie gesagt, obs hilft - weiss ich nicht, aber ich wollts halt mal loswerden ;-]
 
So könnte man es natürlich auch machen aber bei mir besteht er das Problem wie ich Methoden von Klassen die bereits registry Klassen verwenden noch in anderen Klassen die auch registry Klassen verwenden benutzen kann....weil es ist ja nicht nur im Forum das Problem..... und es geht eigentlich auch nicht nur um die Forummethode mit dem User online oder offline.....daher.... aber trotzdem danke für die Antwort :)

MFG Niels
 
Hat keiner ne Idee oder wenigstens nen Stichwort mit welcher Art und Weise man das bewerstelligen kann?!

Würde mich wirklich freuen :)

MFG Niels
 
Zurück