Bonjour.
Voici une solution, (plus d'un an après, et je m'en excuse, mais c'est seulement maintenant que j'ai eu ce même problème, et en faisant des recherches, je n'ai rien trouvé de satisfaisant).
ATTENTION : CE CODE FONCTIONNE SOUS IE, MAIS N'A PAS ETE TESTE AVEC D'AUTRES NAVIGATEURS !
Le principe :
Une page formulaire de connexion contenant un champ nom et un bouton de connexion.
Le login windows est récupéré par un javascript qui utilise les objets activex et "stocké" dans un input caché.
Le code php de la page n'est exécuté que si la variable $post['nom'] existe, donc après le click sur le bouton submit du formulaire. (On pourrait imaginer d'autres évènements permettant d'éviter le bouton d'envoi du formulaire)
Dans l'exemple, on compare avec la liste d'utilisateurs d'une table de la base, puis on oriente vers une page d'accueil ou une page d'erreur selon que l'utilisateur est reconnu ou non.
Enjoy it !
CODE DE LA PAGE :
<?php
require_once('connexion.php');
if (isset($_POST['nom'])){ // execution uniquement apres envoi du formulaire (test si la variable POST existe)
$nom = $_POST['nom']; // mise en variable du nom d'utilisateur
$login = $_POST['login']; // mise en variable du login windows
$verif_query=sprintf("SELECT * FROM ma_table WHERE nom='$nom' AND login='$login'"); // requête sur la base
$verif = mysql_query($verif_query) or die(mysql_error());
$row_verif = mysql_fetch_assoc($verif);
$utilisateur = mysql_num_rows($verif);
if ($utilisateur) { // On test s'il y a un utilisateur correspondant
header("Location:page.php"); // redirection si OK
}
else {
header("Location:index.php?erreur=login"); // redirection si utilisateur non reconnu
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" href="style.css" type="text/css" media="screen" />
</head>
<title>Mon_Titre</title>
<body>
<form action="" method="post" name="connect">
<!--Script récupérant le login windows, et le mettant dans un champ caché (pour le passer en variable au code qui s'exécutera après le submit). -->
<SCRIPT language="javascript">
var WShnetwork = new ActiveXObject('WScript.Network');
document.write('<input type="hidden" name="login" value="' + WShnetwork.UserName + '">');
</SCRIPT>
<!-- Table contenant un champ "nom" et le bouton "submit" -->
<table width="300" border="0" align="center" cellpadding="10" cellspacing="0" class="sans">
<tr>
<td width="50%"><div align="right">Nom</div></td>
<td width="50%"><input name="login" type="text" id="nom"></td>
</tr>
<tr>
<td height="34" colspan="2"><div align="center">
<p align="center" class="titre"><strong> </strong></p>
<input type="submit" name="Submit" value="Se connecter">
</div></td>
</tr>
</table>
</form>
</body>
</html>