Balkan SA:MP

Ostalo => Development => Web programiranje - PHP, Ruby on rails, ASP.net => Temu započeo: DexterTM poslato Januar 19, 2015, 13:52:49 POSLE PODNE

Naslov: [Pomoć] Podatci se ne upisuju u database
Poruka od: DexterTM poslato Januar 19, 2015, 13:52:49 POSLE PODNE
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/>
Naslov: Odg: [Pomoć] Podatci se ne upisuju u database
Poruka od: arnel avdic poslato Januar 19, 2015, 21:41:48 POSLE PODNE
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();
Naslov: Odg: [Pomoć] Podatci se ne upisuju u database
Poruka od: Slay poslato Januar 19, 2015, 22:36:51 POSLE PODNE
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