php + sql server login & séances

Bonjour, je suis en train de créer un login et session script php à utiliser pour sql server et je ne peux pas le faire fonctionner, il coutures comme pas de mater ce que j'ai mis dans le formulaire de connexion aslong comme il valide cela va fonctionner, je ne peux pas comprendre quel est le problème avec le code cependant, je viens de resently commencé à l'aide de php et de sql server et n'ont pas eu la quand on sait à comprendre le problème pour moi si soeone pourrait aider ce serait super, aussi, si vous connaissez tout bon tutoriel sites qui utilisent sql server et php pourriez-vous s'il vous plaît partager car il ne marche pas de couture à être beaucoup de bon tutoriel sites pour eux malheureusement. toute aide est la bienvenu à ce stade. mon principal problème, c'est que ce n'est pas de vérifier si l'information affichée dans le formulaire html dans la base de données. (j'ai pris la validation js comme il ne marche pas de couture nessessary cependant que les œuvres)

Login.html

<form name="log" action="log_action.php" method="post">
Username: <input class="form" type="text" name="uNm"><br />
Password: <input class="form" type="password" name="uPw"><br />
<input name="submit" type="submit" value="Submit">
</form>

log_action.php

session_start();
$serverName = "(local)";
$connectionInfo = array("Database"=>"mydatabase","UID"=>"myusername", "PWD"=>"mypassword");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false){
    echo "Error in connection.\n";
    die( print_r( sqlsrv_errors(), true));
}
$username = $_REQUEST['uNm'];
$password  = $_REQUEST['uPw'];
$tsql = "SELECT * FROM li WHERE uNm='$username' AND uPw='$password'";
$stmt = sqlsrv_query( $conn, $tsql, array(), array( "Scrollable" => SQLSRV_CURSOR_KEYSET ));
if($stmt == true){
    $_SESSION['valid_user'] = true;
    $_SESSION['uNm'] = $username;
    header('Location: index.php');
    die();
}else{
    header('Location: error.html');
    die();
}

index.php

<?php
session_start();
if($_SESSION['valid_user']!=true){
    header('Location: error.html');
    die();
}
?>

Merci pour votre aide les gars, vous pourriez être en mesure d'apporter

  • En aparté, votre code est vulnérable à des attaques par Injection SQL (en.wikipedia.org/wiki/SQL_injection), il est extrêmement dangereux de concaténer directement saisie de l'utilisateur dans une requête. Apprendre au sujet des requêtes paramétrées, pour se défendre contre cette.
  • Aussi, il n'est pas évident de déterminer quelle est votre question. Tout d'abord vous dire "je ne peux pas le faire fonctionner", puis vous le dire, "pas de mater ce que j'ai mis dans le formulaire de connexion aslong comme il valide il va travailler". Ce qui, exactement, est le problème que vous rencontrez?
  • ce n'est pas de vérifier si le nom d'utilisateur et le mot de passe dans la base de données, indépendamment de ce que j'ai mis, il me conduira à la page de connexion, si elle n'existe pas, il doit me prendre pour une page d'erreur. et oui j'ai l'intention de faire une injection sql de prévention une fois que j'aurai un peu de scripts nd de course et je suis assez confortable workinb avec sql server
InformationsquelleAutor jphillip724 | 2013-02-04