Session(Login) & Chat

Hallo,

Ich möchte ein login in php erstellen und mit session arbeiten jetzt habe ich dazu eine frage. Wenn ich jetzt beispiel weise das passwort und den usernamen in $_session speichre, aber zugleichen Zeit ein anderer user die login seite aufruft ist er dann automatisch eingeloggt??? Es ist ja dann der gleiche ort oder erkennt php das dies jetzt ein anderer user ist und sich noch idenfiziren muss. Und was muss ich genau unter einer Sessionsid verstehn??? (Wie ich es genau meine seht ihr das im Anhang der script ist allerdings nicht von mir sondern von einer php seite als beispiel)


2. Frage Ich Gedenke soeine Art Browserchat in php mit mysql zu erstellen. Damit der chat(ich meine das geschriebene) immer auf dem sneusten stand isat muss die seite ja sozusagen ca. alle 5 sec die seite komplett neu laden. Wobei dann immer die seite kurz flimmert (ist ja auch logisch). Gibt es hier für eine elegantere lösung mit php????

gruß cpu8080
 
Ich glaube das Thema in einem anderen Board schonmal gehabt zu haben...Soweit ich weiß, gibt es keine bessere Lösung. (zu Frage 2)

mfg $oul
 
Hier eine Lösung für die 2.Frage, der Teil kommt in den head:

<meta http-equiv="refresh" content="Anzahl der Sekunden; URL=Link">

als B.s.p. in HTML:
<meta http-equiv="refresh" content="5; URL=chat.php">

als B.s.p. in PHP:
echo "<meta http-equiv=\"refresh\" content=\"5; URL=chat.php\">";

Ich häng ein Lösungsvorschlag für die 1.Frage dran.
 
Für die zweite Frage:

Falls Dir eine einarbeitung in ein neues Thema nicht zu viel ist, dann schau Dir mal Ajax an.
Such einfach mal Google oder Wiki nach Ajax! Es gibt einige gute PHP Klassen für Ajax. Mit Ajax ist es kein Problem einen Chat in PHP zu realisieren.
 
Hab vor kurzem sowas gebastlet.

Code:
<?php
echo '<h2>Admin: Login</h2>';

if(isset($_GET['action']) AND ('logout' == $_GET['action'])) {
	session_destroy();
	echo 'Du bist nun ausgeloggt. <a href="index.php?site=admin">Hier</a> gehts weiter.';
} else {
if(isset($_SESSION['name'])){

// hier wären dann die Informationen zu platzieren die bei erfolgreichem
// login angezeigt werden sollen.

}

if(isset($_GET['action'], $_POST['name'], $_POST['pass']) AND "login" == $_GET['action']){
	$name = $_POST['name'];
	$pass = $_POST['pass'];

// hier werden die Informationen mit md5 verschlüsselten Passwörtern in einer
// Datenbank verglichen, welche bei dir natürlich nicht vorhanden ist. ->

	$result = mysql_query("SELECT * FROM user WHERE Name = '".$name."' AND Password = MD5('".$pass."');");
	$count = mysql_num_rows($result);

	$qry_array = mysql_fetch_assoc($result);

	if($count == '1'){
		$_SESSION['name'] = $name;
		$_SESSION['rank'] = $qry_array['Rank'];
		echo 'Hallo '.$_SESSION['name'].' Ihr Rang ist '.$_SESSION['rank'].'. ';
		echo '<a href="index.php?site=admin">Hier</a> gehts weiter.';
	} else {
		echo 'Benutzername oder Passwort falsch.<br /><br />';
	}
}

if(!isset($_SESSION['name'])){

	echo 'Um in den Adminbereich zu kommen musst du dich identifizieren.<br />';
	echo 'Bitte gib deine Benutzerdaten an.<br /><br />';

	echo '<form action="index.php?site=admin&action=login" method="POST">
	<table>
	 <tr>
	  <td width="70">Benutzer:</td>
	  <td><input type="text" name="name"></input></td>
	 </tr>
	 <tr>
	  <td>Passwort:</td>
	  <td><input type="password" name="pass"></input></td>
	 </tr>
	 <tr>
	  <td></td>
	  <td><input type="submit" value="weiter"></input></td>
	 </tr>
	</table>
	</form>
	';
}
}
?>

Das wäre die admin.php.
Du brauchst eigentlich nurnoch am Anfang der Seite (ich habs oben in der Index.php) eine session zu starten.

Hoffentlich hilft das was.
Ist sicher nicht perfekt, aber vieleich ganz gut zu verstehen.
 
danke ich glaub ich habs.
Ich hab aber noch ne Frage :D


ich möchte ein bild button erstellen habe es so versucht:

<input alt="Login" width="88" height="20" type="image"
src="login.jpg" name="Bildbutton">


so jetzt will ich gucken ob er reagiert:

PHP:
<?php 
if (!empty($_POST['Bildbutton']))
{
echo "erreicht es";
}
?>

nur es klappt nicht
 
Nicht getestet, aber versuchs mal mit:

Code:
<input alt='Login'  type='submit' value="<img src='login.jpg' width='bla' height='bla'>" name='Bildbutton'>

mfg $oul
 
Code:
<input alt='Login'  type='submit' value="<img src='login.jpg' width='bla' height='bla'>" name='Bildbutton'>

funktioniert leider nicht aber da war ein fehler aber ihn aber verändert:

Code:
<input alt='Login'  type='submit' value="<img src='login.jpg' width='bla' height='bla'>" name='Bildbutton'   /           >
 
Dieses Problem ist bekannt, dass die Image-Submit Buttons keine aktion auslösen.
Ich löse das immer so, dass ich einfach ein hidden feld mitschicke welches ich dann auslese um festzustellen ob was gesendet wurde.
 
funktioniert super.

Jetzt aber offentlich die letzte question:

Ich teste meine scripts immer auf meinem xampp server. Kann ich da cronjobs ausführen lassen???
 
Original von CPU8080
funktioniert super.

Jetzt aber offentlich die letzte question:

Ich teste meine scripts immer auf meinem xampp server. Kann ich da cronjobs ausführen lassen???

xampp hat nichts mit cronjobs zu tun. das musst du im system einrichten
 
Zurück
Oben