Da_Ill
-
Gesamte Inhalte
69 -
Benutzer seit
-
Letzter Besuch
Inhaltstyp
Profile
Forum
Downloads
Kalender
Blogs
Shop
Beiträge von Da_Ill
-
-
naja, ist ja eigentlich so ne art if(..), aber ich würde es mit switch ... case machen!
gruss
da_ill
-
gibt es eigentlich eine möglichkeit die session automatisch zerstören zu lassen, wenn der browser geschlossen wird?
-
ja hab es gerade auch gemerkt! ich kann die variable ja dirket am anfang der zweiten seite zuweisen! danke!
-
aber muss ich nicht zuerst den button betätigen, damit die variable $login_id erzeugt wird?
-
hallo!
also irgendwie bzw. irgendwo hab ich da immernoch ein problem mit der session! ich poste mal den quellcode von den ersten zwei seiten. die zweite seite habe ich vereinfacht, um jetzt nur die session zu berücksichtigen!
seite 1:
<?php
session_start();
?>
<html>
<head>
</head>
<body bgcolor=#000000
text=#FFFFFF
link=#FFFFFF
vlink=#FFFFFF
alink=#FF0000>
<?php
echo "<font face=Verdana size=2>";
echo "<p><p>";
echo "<center><img src=images/intranet_login.jpg width=306 height=92>";
echo "<p>";
echo "<form action=login_ok_testsession.php mehthod=post>";
echo "<b>Name:</b><font color=#000000>......</font><input size=15 name=login_id>";
echo "<br><b>Passwort:</b> <input type=password size=15 name=password>";
echo "<p><input type=submit name=login_submit value=Login>";
echo "</form>";
if($login_submit)
{
$_SESSION['userName'] = $login_id;
$_SESSION['userPass'] = $password;
$_SESSION['login_submit'] = $login_submit;
}
?>
</body>
</html>
quellcode seite 2 (login_ok_testsession.php):
<?php
session_start();
?>
<html>
<head>
</head>
<body>
<?php
echo "" . $_SESSION['userName'];
?>
</body>
</html>
gibt es da einen grundsätzlichen fehler den ich da gemacht habe? der username wird auf jeden fall nicht ausgegeben! wie gesagt ich habe vorher noch nie mit sessions gearbeitet und soviel mit php habe ich auch noch nicht gemacht!
also ich habe es auch schon mit $HTTP_SESSION_VARS versucht, aber daran liegts nicht!
gruss
da_ill
-
das hatte ich auch schon gesehen!
das heißt dann doch quasi, dass ich z.B. die session noch vor dem <html>-tag starten muss oder?
gruß da_ill
-
danke! das hilft mir schon viel weiter!
ich bekomme aber immer die fehlermeldung "cannot send cache limiter - headers already send bla bla bla"!
muss ich die session im header starten oder im body oder wo? denn wenn ich sie im header starte dann bekomme ich die gleiche fehlermeldung! Ãn den links kann ich leider nur etwas finden über "cannot send cookie ..." aber nicht über "cache limiter"!
gruß
da_ill
-
kann mir denn jemand erklären wie das mit sessions funktioniert? die andere lösung scheint ja nun nicht zu gehen! :confused:
-
ähm... also ich komme von einer seite ganz ohne frames! und von dieser linke ich ja schon auf die wo die frames definiert sind! dabei übergebe ich schon werte! nur jetzt habe ich diese ja auf der seite die nur die frames definiert und nicht auf der jeweiligen frame-seite selber! von dort muss ich die werte dann ja z. B. auf den Hauptframe weiterleiten!
ps: nein ich arbeite nicht mit templates!
-
ich habe die seiten jetzt wieder zur ausgangsposition zurück gesetzt!
das ist die seite ohne frame: (also der php-teil)
<?php
echo "<form action=login_ok.php mehthod=post>";
echo "<b>Name:</b><font color=#000000>......</font><input size=15 name=login_id>";
echo "<br><b>Passwort:</b> <input type=password size=15 name=password>";
echo "<p><input type=submit name=login_submit value=Login>";
echo "</form>";
?>
hier die seite mit den frames:
<html>
<head>
</head>
<frameset cols="198,*" frameborder="0" border="0" framespacing="0" rows="*">
<frame name="leftFrame" scrolling="NO" noresize src="leftframe.php">
<frame name="mainFrame" src="mainframe.php">
</frameset>
<noframes><body bgcolor="#000000" text="#FFFFFF">
</body></noframes>
</html>
und hier der hauptframe wo die daten geprüft werden sollen:
<?php
if(!$login_submit)
{
echo "<center><b>Bitte einloggen!</b></center>";
}
elseif($login_submit)
{
echo "<font color=#FFFFFF>";
$db = mysql_connect();
mysql_select_db("BISONintranet");
$sql = "select user_login_id, user_password, user_id from user";
$sql .= " where user_login_id = '$login_id'";
$sql .= " or user_password = '$password'";
$res = mysql_query($sql);
$num = mysql_num_rows($res);
if($num == 0)
{
echo "<b>";
echo "Fehlgeschlagen!</b>";
}
for($i=0;$i < $num;$i++)
{
$login_id_checked = mysql_result($res, $i, "user_login_id");
$password_checked = mysql_result($res, $i, "user_password");
$hidden_value= mysql_result($res, $i, "user_id");
if ($login_submit && ($login_id_checked==$login_id) && ($password_checked==$password))
{
$sql = "select user_vorname from user where user_id = $hidden_value";
$res = mysql_query($sql);
$user_vorname = mysql_result($res, "user_vorname");
$sql = "select user_nachname from user where user_id = $hidden_value";
$res = mysql_query($sql);
$user_nachname = mysql_result($res, "user_nachname");
echo "<center>Willkommen zurück $user_vorname $user_nachname!";
}
else
{
echo "<b>";
echo "<center>Fehlgeschlagen!</b></center>";
}
}
}
?>
-
also irgendwie funktioniert das alles nicht! ich schein da echt zu blöd für zu sein...
-
wie funktioniert das mit den sessions? ich programmiere noch nicht sehr lange mit php! aber trotzdem danke!
-
Hallo,
ich habe eine Startseite ohne Frames, habe aber nach der Anmeldung auf eine Seite mit zwei Frames verlinkt. Jetzt habe ich ja auch Werte die ich übergeben möchte! Wie kann ich der Seite mitteilen, welchem Frame ich welche Werte geben möchte?
Gruß
Da_Ill
-
die uhr müßte aber die ganze zeit laufen und nicht erst wenn ich den button betätige! ist das dabei möglich?
-
hmm, das klingt nicht so gut, aber trotzdem danke! kennt sonst noch jemand eine andere möglichkeit? ich bräuchte eine die relativ genau geht!
-
hallo leute,
gibt es die möglichkeit mit php eine digitale uhr darzustellen oder müßte ich das mit java script oder so machen? ich möchte dann auch auf die werte von der uhr zugreifen können! ist das möglich? wenn ja wie am besten?
gruß
da_ill
-
Originally posted by Jaraz
Hi,
-was kommt für ne Fehlermeldung?
lass dir den SQL String ausgeben und poste ihn. Versuche ihn dann per Mysql Kommandozeile einzufügen.
-mysql_db_query ist deprecated und sollte durch mysql_select_db() und mysql_query() ersetzt werden.
-deine maxid Methode ist nicht Multiusersicher. Benutze AUTO_INCREMENT und LAST_INSERT_ID()
-Wieso läufst du alle Emailadressen und Login_IDs durch?
Setze ein passendes SELECT Statement ab.
Gruß Jaraz
hallo jaraz!
wie müsste ich denn den quellcode verändern um AUTO_INCREMENT und LAST_INSERT_ID zu benutzen? ich kenn die funktionen leider nicht!
-
das thema hat sich gerade soeben erledigt! es lag daran, dass ich hinter dem 'insert into user' noch ein leerzeichen einfügen mußte! dummer fehler! danke trotzdem an alle für die tipps!
-
also habe nun mysql_db_query durch die genannten befehle ersetzt und die hochkommata weg genommen! Es funktioniert trotzdem nicht!
also habe ich mir den string ausgeben lassen, der wie folgt aussieht:
insert into user(vorname, nachname, strasse, plz, ort, email, login_id, pass, id) values ('Hans', 'Wurst', 'Hauptstrasse 8', 12345, 'Hauptstadt', 'hans.wurst@web.de', 'Hans-Wurst', 'hans', 2)
meiner meinung nach alles korrekt, oder!?
viele grüsse
da_ill
:confused: :confused: :confused:
-
also der komplette code sieht so aus. und bis zu der zeile echo "MAX ID: $max_id"; funktioniert alles richtig! nur der teil darunter wo es dann um das eigentliche einfügen geht funktioniert nicht!
<html>
<head>
</head>
<body bgcolor=#FFFFFF
text=#000000
link=#000000
vlink=#000000
alink=#000000>
<font face="Lucida Console">
<font size=2>
<font color=#000000>
<form action = "<?php $PHP_SELF ?>" method="post">
<input size=10 name="vorname" maxlength=30> <br> Vorname* <br>
<input size=10 name="nachname" maxlength=30> <br> Nachname* <br>
<input size=20 name="strasse" maxlength=40> <br> Strasse* <br>
<input size=5 name="postleitzahl" maxlength=5> <input size=10 name="ort" maxlength=30><br> PLZ / Ort* <br>
<input size=20 name="email" maxlength=40> <br> Email* <p>
<input size=15 name="login_id" maxlength=30> <br> Managername* <br>
<input type="password" size=15 name="pass" maxlength=30> <br> Passwort* <br>
<input size=20 name="verein" maxlength=30> <br> Vereinsname* <p>
<input type="submit" value="Abschicken" name="send">
<input type="reset" name="reset"> <p>
</form>
<font size=1>
Die Felder mit * müssen angeben werden!
<p>
<font size=2>
<font color=#FF0000>
<?php
if ($send && (strlen($vorname)!=0) && (strlen($nachname)!=0) && (strlen($strasse)!=0) && (strlen($ort)!=0) && (strlen($email)!=0) && (strlen($login_id)!=0) && (strlen($pass)!=0))
{
$db = mysql_connect();
$sqlab = "select login_id, email from user";
$res = mysql_db_query("game", $sqlab);
$num = mysql_num_rows($res);
for($i=0;$i < $res;$i++)
{
$existing_login = mysql_result($res, $i, "login_id");
$existing_email = mysql_result($res, $i, "email");
if($login_id == $existing_login)
{
echo "Dieser Login-Name existiert bereits!";
}
elseif($email == $existing_email)
{
echo "Sie haben bereits einen Account mit dieser Email Adresse!";
}
else //if($email != $existing_email && $login_id != $existing_login)
{
$sqlab = "select max(user.id) as id from user";
$res = mysql_db_query("game", $sqlab);
$max_id = mysql_result($res, $i, "id")+1;
echo "MAX ID: $max_id";
$sqlab = "insert into user";
$sqlab .= "(vorname, nachname, strasse, plz, ort, email, login_id, pass, id) values ";
$sqlab .= "('$vorname', '$nachname', '$strasse', '$postleitzahl', '$ort', '$email', '$login_id', '$pass', '$max_id')";
mysql_db_query("game", $sqlab);
$num = mysql_affected_rows();
if($num>0)
{
echo "Die Anfrage wurde abgeschickt. Sie erhalten bald eine Antwort auf Ihre angegebene Email-Adresse!";
break;
}
else
{
echo "Es ist ein Fehler aufgetreten! Bitte versuchen Sie es erneut.";
break;
}
}
}
mysql_close($db);
}
else
{
if($send)
{
echo "Füllen Sie bitte alle * Felder vollständig aus!";
}
else
{
echo "";
}
}
?>
</body>
</html>
-
Hallo Leute,
ich hab da ein problem. ich suche da jetzt schon seit längerem nach dem fehler, aber kann ihn nicht finden! helft mir bitte! es geht darum mit php einen datensatz in einen mysql server neu einzufügen!
hier ist der quellcode:
$sqlab = "insert into user";
$sqlab .= "(vorname, nachname, strasse, plz, ort, email, login_id, pass, id) values";
$sqlab .= "('$vorname', '$nachname', '$strasse', '$postleitzahl', '$ort', '$email', '$login_id', '$pass', '$max_id')";
mysql_db_query("game", $sqlab);
mit dem quellcode funktioniert es nicht!
WARUM???:confused: :confused: :confused:
-
hi leute!
also ich bekomme diese fehlermeldung:
Warning: Supplied argument is not a valid MySQL result resource in d:\...blablabla...\anmeldung.php on line 34
und line 31 bis 40 sehen so aus:
$db = mysql_connect();
$sqlab = "select login_id, email from user";
mysql_db_query("game", $sqlab);
$num = mysql_num_rows($res); <----- das ist line 34!!!
for($i=0;$i < $num;$i++)
{
$existing_login = mysql_result($i, "login_id");
$existing_email = mysql_result($res, $i, "email");
ich verstehe zwar die fehlermeldung, aber ich weiß nicht wie ich sie beheben soll!
wo liegt der fehler?
danke schonmal im voraus!
da_ill
-
jetzt hat es bei mir auch funktioniert ... nach dem 3. versuch!!!! aber wenigstens überhaupt noch!
danke!
-
nein, ich benutze keinen download manager! ich habe jetzt alle drei versionen von phptriad gezogen und bei den älteren meldet er den fehler installer too small!
PHP: date Funktion
in Skript- und Webserverprogrammierung
Geschrieben
also ich weiß nicht was du mir mit deiner antwort sagen willst, aber ich denk nochmal drüber nach...