Pozdrav svima, pravim svoj prvi reg/log sistem. Imam problem kod register, tj. podatci se ne upisuju u dabase. Evo kako izgleda moj php kod:
<?phpsession_start();include_once('../include/connection.php');if(isset($_SESSION['logged_in'])){ echo 'You are logged in!'; } else { if(isset($_POST['username'], $_POST['password'])){ $username = $_POST['username']; $password = md5($_POST['password']); if(empty($username) or empty($password)){ $error = 'All fields are required!'; } else { $query = $pdo->prepare('INSERT INTO users (user_name, user_password, user_timestamp) VALUES (?, ?, ?)'); $query->bindValue(1, $username); $query->bindValue(2, $password); $query->bindValue(3, time()); $query->execute(); header('Location: ../index.php'); } }}?>
A evo kako mi izgleda html forma:
<?php if(isset($error)){?>
<small style="color:#aa0000"><?php echo $error;?>
</small>
<br><br>
<?php } ?>
<br />
<form action="register.php" method="post">
<input type="text" name="username" placeholder="Username" /><br><br>
<input type="password" name="password" placeholder="Password" /><br><br>
<input type="submit" value="Register" />
</form>
<br/>
http://www.bhwebmasters.net/?p=56
evo ti jedan tutorijal kako to sve napraviti a u tebe mislim da je problem $query->bindValue(1, $username);
$query->bindValue(2, $password);
$query->bindValue(3, time());
$query->execute();
Cekaj, ti koristis PDO ili mysqli - jel znas da je PDO iskljucivo objektno orijentiran?
To znaÄi:
$pdo nije lokalna nego globalna varijabla koristi global...
Hvataj iznimke unutar bloka
try{
// kod
}
catch(PDOException $greska) {
// greska
}
Jako puno propusta:
Jeftina login provjera, jednostavno ti se moze ukrast sesija sta onda? - Nemoj misliti da ovo bindanje sve rjesava ako si rjesio SQLinjection da si siguran.... Da ne pricam da nigdje nemas exit di ga treba biti... Postoje zlonamjerni browseri koji ce ti bez obzira kakav je header poslan nastaviti ucitavat program (kod) iza headera
Koliko god je SQLi opasan, isti je i XSS samo drugo pakovanje...
i opcenito, vidim da nemas pojma radje nemoj koristi PHP data object jer nemas osnove, a kamoli znanje OOP-a to ti ovako prijateljski govorim :)
sretno