native0speaker
Grünschnabel
Hallo Beisammen,
Ich bin schon seit knapp 3 Tagen am debuggen und komme jetzt definitiv nicht weiter. Wahrscheinlich bin ich nur blöd^^
Ich habe ein Login formular (html): funktioniert
Ich habe ein php skript login.php dass auf den sessionhelper zugreift: funktioniert
ich benutzteeine klasse sessionhelper: funktioniert teilweise:
Vorab, die vielesn Ausgaben waren zu eingrenzen der Fehler, das fehlen von passwörtern wird im nachhinein bereinigt.
xampp v3.1.0 Beta6
der Fehler liegt irgendo in meinen Select Varianten bzw. bei der Übergabe
if ( !$result ) {
exit(mysql_error());
}
Danke schonmal für alle die sich melden und, sollte der Beitrag fehlplaziert sien bitte ich um entschuldigung - ich habe wirklich nachgeschaut.
Ich bin schon seit knapp 3 Tagen am debuggen und komme jetzt definitiv nicht weiter. Wahrscheinlich bin ich nur blöd^^
Ich habe ein Login formular (html): funktioniert
Ich habe ein php skript login.php dass auf den sessionhelper zugreift: funktioniert
ich benutzteeine klasse sessionhelper: funktioniert teilweise:
Vorab, die vielesn Ausgaben waren zu eingrenzen der Fehler, das fehlen von passwörtern wird im nachhinein bereinigt.
xampp v3.1.0 Beta6
der Fehler liegt irgendo in meinen Select Varianten bzw. bei der Übergabe
if ( !$result ) {
exit(mysql_error());
}
PHP:
<?php
/**
* @return void
*/
function connect () {
$con = mysql_connect('localhost', 'root', '') or exit(mysql_error());
mysql_select_db('freizeitpark', $con) or exit(mysql_error());
echo 'Die Verbindung steht</br>';
}
/**
* @param string $name
* @param string $pass
* @return boolean
*/
function check_user ( $name, $pass ) {
//entfernen aller Quotes
if ( get_magic_quotes_gpc() ) {
$name = stripslashes($name);
$pass = stripslashes($pass);
echo 'Check beginnt<br>';
}
echo 'magic qotes<br>';
// escapen von \, x00, n, r, , ', " und x1a --> bereinigt zeichen für sql
$name = mysql_real_escape_string($name);
// escapen von Backticks (`)
$name = preg_replace('/x60/', '\x60', $name);
// escapen von % und _
$name = str_replace('%', '%', $name);
$name = str_replace('_', '_', $name);
echo 'ende der Bereinigung der Eingabe<br>';
echo 'name ' .$name.'<br>';
echo 'pass ' .$name.'<br>';
$sql = mysql_query("select `id` from `userdata` where `user`='$name' and pass='$pass'");
// $sql = 'SELECT id FROM userdata WHERE user = .$name. AND pass = .$pass. ';
// $sql = "SELECT id FROM userdata WHERE user = $name AND pass= $pass";
// $sql = mysql_query("SELECT id FROM userdata WHERE user = 'q' AND pass = 'q' ");
$arschstring = (string)$sql;
echo 'where 2<br>';
echo 'sql: '. $sql.'<br>';
echo 'sql: '. $arschstring.'<br>';
echo 'inhalt: '. mysql_query($sql) .'<br>';
echo 'inhalt: '. mysql_query($arschstring) .'<br>';
// if ( !$result = mysql_query($sql) ) {
$result = mysql_query($sql);
echo 'inhalt: '. mysql_query($sql) .'<br>';
echo 'sql: '. $result.'<br>';
if ( !$result ) {
echo 'error 1<br>';
exit(mysql_error());
}
echo 'error 1 ende<br>';
if ( mysql_num_rows($result) == 1 ) {
$user = mysql_fetch_assoc($result);
return ( $user['id'] );
echo 'error 2<br>';
} else {
return ( false );
}
echo 'Check User beendet<br>';
}
/**
* @param int $is
* @return void
*/
function login ( $id ) {
$sql = mysql_query("UPDATE userdata SET UserSession = .session_id(). WHERE id =(int)$id");
// $sql = 'UPDATE userdata SET UserSession = ' . session_id() . ' WHERE id = ' . ((int)$id);
if ( !mysql_query($sql) ) {
exit(mysql_error());
}
echo 'Login beendet</br>';
}
/**
* @return boolean
*/
function logged_in () {
$sql = 'SELECT id FROM userdata WHERE UserSession = ' . session_id() . '';
if ( !$result = mysql_query($sql) ) {
exit(mysql_error());
}
return (mysql_num_rows($result) == 1);
echo 'eingeloggt bestätigt</br>';
}
/**
* @return void
*/
function logout () {
$sql = 'UPDATE userdata SET UserSession = NULL WHERE UserSession = ' . session_id() . '';
if ( mysql_query($sql) ) {
exit(mysql_error());
}
echo 'logout beendet</br>';
}
Danke schonmal für alle die sich melden und, sollte der Beitrag fehlplaziert sien bitte ich um entschuldigung - ich habe wirklich nachgeschaut.