Probleme mit Session in PHP
Hallo Gemeinschaft,
habe ein Problem beim Übertrag von xampp lokal auf meinem Hoster
hier bekomme ich die Daten noch angezeigt
auf dieser Seite schon nicht mehr
habe ein Problem beim Übertrag von xampp lokal auf meinem Hoster
<?php
session_start();
// Change this to your connection info.
$DATABASE_HOST = 'localhost';
$DATABASE_USER = '-ts';
$DATABASE_PASS = '#';
$DATABASE_NAME = '-';
// Try and connect using the info above.
$con = mysqli_connect($DATABASE_HOST, $DATABASE_USER, $DATABASE_PASS, $DATABASE_NAME);
if ( mysqli_connect_errno() ) {
// If there is an error with the connection, stop the script and display the error.
exit('Failed to connect to MySQL: ' . mysqli_connect_error());
}
// Now we check if the data from the login form was submitted, isset() will check if the data exists.
if ( !isset($_POST['surname'], $_POST['password']) ) {
// Could not get the data that should have been sent.
exit('Please fill both the username and password fields!');
}
// Prepare our SQL, preparing the SQL statement will prevent SQL injection.
if ($stmt = $con->prepare('SELECT id_staff, password FROM staff WHERE surname = ?')) {
// Bind parameters (s = string, i = int, b = blob, etc), in our case the username is a string so we use "s"
$stmt->bind_param('s', $_POST['surname']);
$stmt->execute();
// Store the result so we can check if the account exists in the database.
$stmt->store_result();
if ($stmt->num_rows > 0) {
$stmt->bind_result($id_staff, $password);
$stmt->fetch();
// Account exists, now we verify the password.
// Note: remember to use password_hash in your registration file to store the hashed passwords.
if (password_verify($_POST['password'], $password)) {
// Verification success! User has logged-in!
// Create sessions, so we know the user is logged in, they basically act like cookies but remember the data on the server.
session_regenerate_id();
$_SESSION['loggedin'] = TRUE;
$_SESSION['name'] = $_POST['surname'];
$_SESSION['id_staff'] = $id_staff;
//echo 'Welcome ' . $_SESSION['name'] . '!';
} else {
// Incorrect password
echo 'Incorrect username and/or password!';
}
} else {
// Incorrect username
echo 'Incorrect username and/or password!';
}
$stmt->close();
}
echo $_SESSION['name'];
echo $_POST['surname'];
?>
hier gehts weiter <a href="index.php">Kalender</a>
hier bekomme ich die Daten noch angezeigt
auf dieser Seite schon nicht mehr
<?php
session_start();
echo $_SESSION['name'];
?>
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 7107042726
Url: https://administrator.de/contentid/7107042726
Ausgedruckt am: 21.11.2024 um 19:11 Uhr
29 Kommentare
Neuester Kommentar
Moin,
also wenn ich mal den geschweiften Klammer folge, muss Zeile 22 zu einem False führen und da du keinen Else-Zweig hast (Zeile 51 wird die Klammer geschlossen) bekommst da auch keine Fehlermeldung...
Prüfe das mal und baue ggf. mal ein wenig
https://www.php.net/manual/de/language.exceptions.php
also wenn ich mal den geschweiften Klammer folge, muss Zeile 22 zu einem False führen und da du keinen Else-Zweig hast (Zeile 51 wird die Klammer geschlossen) bekommst da auch keine Fehlermeldung...
Prüfe das mal und baue ggf. mal ein wenig
try()
and catch()
ein:https://www.php.net/manual/de/language.exceptions.php
Schau mal nach welche values hier gesetzt sind:
Parallel dazu:
https://www.hosteurope.de/faq/webhosting/webhosting-logfiles/error-log-a ...
Parallel dazu:
https://www.hosteurope.de/faq/webhosting/webhosting-logfiles/error-log-a ...
Zitat von @martenk:
meinedomain.de:443:0 server certificate does NOT include an ID which matches the server name
meinedomain.de:443:0 server certificate does NOT include an ID which matches the server name
Na also da hast du deinen Fehler, der Common-Nams bzw. die SANs im Zertifikat stimmen nicht mit dem FQDN deiner Seite überein. Da kann dann schon keine Session vernünftig laufen ...
Neues Zertifikat ausstellen lassen oder eine der im Zertifikat in den Subject Alternative Names hinterlegten Domains in der URL benutzen.
Aber alter, sowas musst man doch wissen wenn man mit Webservern hantiert! 🧐 Das sind doch absolute Basics
Da kommt dann noch ein Grundkurs PHP mit auf die Liste bei der Masse an überflüssigen IF Abfragen ... 🍌🫣
Stichwort Prepared statements
https://phpdelusions.net/pdo_examples/select
https://www.php.net/manual/en/pdo.prepare.php
https://phpdelusions.net/pdo_examples/select
https://www.php.net/manual/en/pdo.prepare.php
Voraussetzung für PHP Sessions ist auch, dass der Browser ein Session Cookie speichern kann. Und dies ist aufgrund von immer mehr Restriktionen in den Browsern gar nicht mehr so selbstverständlich.
Im Browser auf der Konsole (F12) auf eventuelle Fehlermeldungen achten. Am besten mit Firefox und einem Chromium basierten Browser parallel testen.
Im Browser auf der Konsole (F12) auf eventuelle Fehlermeldungen achten. Am besten mit Firefox und einem Chromium basierten Browser parallel testen.