Session ID in MySQL speichern

PEASANT KING

Commander
Registriert
Okt. 2008
Beiträge
2.412
Hallo Leute,

ich stehe mal wieder vor einem Problem.
mit
Code:
<?php session_start(); ?>
starte ich eine Session und möchte diese in der Datenbank speichern nur leider funktioniert das nicht so ganz.

Hier der Code
Code:
<?php
$session = session_start();    
$con = mysql_connect("****","****","****");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("llesi", $con);

mysql_query("INSERT INTO users (session_id) VALUES ('$session')");
mysql_close($con);
?>
Woran kann das liegen, ich such mich schon dumm und dämlich ^^
Oh lol kann sein das ich den Fehler schon habe, liegt am fehlenden Where richtig ??
 
Zuletzt bearbeitet:
Dein SQL ist soweit in Ordnung, lass dir nix erzählen. ;-) Die Variable direkt im Query-String zu haben ist aber schlechter Stil, da solltest du dich mal nach Alternativen umsehen.

session_start() liefert einen Boolean zurück und gibt NICHT die Session-ID aus. Die bekommst du entweder mit session_id() (gut) oder über die Konstante SID (nicht gut). Praktisch solltest du also folgende Zeile nehmen:

$query = printf("INSERT INTO users (session_id) VALUES ('%s')", session_id());
$result = mysql_query($query);

@soomon: Zitier doch bitte nicht irgendwelche halbherzig angefertigten und unvollständigen Tutorials sondern die PHP-Seite. ;-)
 
ich glaub ihm einfach nich dass er richtig gesucht hat... wer sucht der findet.. und das innerhalb von sekunden. such ich nach php session id bekomm ich sofort die richtige antwort...
 
Sitz schon den ganzen Morgen dran ;) und war auf einigen Seiten, aber danke für die hilfreiche Info soomon.

EDIT:

So mal noch eine andere Frage und zwar wird der Text im Imputfeld Username bei mir nicht übergeben hier der Code:
Code:
<?php
session_start();
?>


<html> 
<head> 
  <title>......</title> 
  <link rel="stylesheet" href="design/main.css" type="text/css" />
</head>


<body>
<div id="site">
<div id="header">
    <h1>Willkommen zum....</h1>
</div>
<form action="login.php" method="post"> 
    <div id="inputbox">
        Username: <input type="text" name="name" size="20"><br> 
        Password: <input type="password" name="pwd" size="20"><br> 
    <input type="submit" value="Submit"> 
    </div>
</form> 
</div>
<div id="footer">****</div>
</body> 
</html>
Dazwischen liegt noch eine checkuser.php die lediglich die Gültigkeit der Session checkt.

Die main.php sieht wie folgt aus:
Code:
<?php 
include ("checkuser.php"); 
?> 
<html> 
  <head> 
   <title>.....</title> 
   <link rel="stylesheet" href="design/main.css" type="text/css" />
  </head> 
    <body> 
        <hr color ="white" size="1px"/>
        <h3><?php echo "Herzlich willkommen", $_REQUEST['name'];?></h3>
        <hr color ="white" size="1px"/>

        <!-- ##### Sitemap ##### !-->
        <?php
            $verzeichnis = openDir("."); 
            while ($file = readDir($verzeichnis)) 
            {            
            if ($file != "" && $file != ".") 
                { 
                echo "<a href=\"$file\">$file</a><br>\n"; 
                }
            }
            closeDir($verzeichnis);
        ?>    
        <hr color ="white" size="1px"/>            
        <a href="logout.php">Logout</a> 
    </body> 
</html>
Komischerweise beim gleichen Script ohne die Dir Abfrage funktioniert die Übergabe ohne Probleme sprich:
Code:
<?php
echo "Herzlich Willkommen", $_POST['name'];
?>
 
Zuletzt bearbeitet:
Zurück
Oben