Door
Teun Hesseling
op 18-06-2013 09:09
gewijzigd op 18-06-2013 09:13
2.298 views
Goedemorgen,
Voor een ticketsysteem dat ik momenteel aan het maken ben voor in het bedrijf. Is het nodig dat ik de lokale ingelogde username van windows opvraag.
Nu heb ik zitten googlen en kwam ik uit op dit:
<script language="VBscript">
Dim X
set X = createobject("WSCRIPT.Network")
dim U
U=x.UserName
MsgBox "username: " & U
</script>
<script language="Javascript">
var a = U;
alert("Hello, " + a.toString());
</script>
Maar die haalt alleen mijn username op. ik draai xampp lokaal. Maar als iemand naar mijn ip address gaat krijgt hij mijn username te zien. niet zijn eigen.
Komt dit door xampp of ...?
En de $_SERVER['AUTH_USER'] werkt ook niet.
Als er nog andere manieren zijn om de username om te krijgen. En bedoel geen ingewikkelde ldap koppeling enzo. Dan hoor ik dat graag.
In PHP gaat dit niet makkelijk lukken. Misschien nog om a.toString() in een losse variabele op te slaan (voor het gemak) en deze via AJAX door te sluizen naar een PHP-script.
Nee, dat kan niet kloppen.
Je krijgt de waarde in een javascript variabele; dus je kan ze via Ajax versturen.
Wat je nu dus best doet, is zorgen dat je Ajax leert. Je zal het nog genoeg nodig hebben.
Ajax doet maar 1 ding, laat dat net precies zijn wat jij nodig hebt: een verzoek naar de server sturen, via javascript; eventueel met GET en POST data.
Het zou zo iets moeten worden
ajax.php
<?php
// Ajax stuurt een verzoek naar deze webpagina, met $_GET['username'], zijnde de MS login naam
echo 'Hallo ' . $_GET['username']; // deze boodschap wordt terug naar javascript gestuurd
?>
index.php
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script language="VBscript">
Dim X
set X = createobject("WSCRIPT.Network")
dim U
U=x.UserName
</script>
<script language="Javascript">
//var u='Hello';
var ms_username = u;
$(document).ready(function() { // wanneer de pagina geladen is
$.ajax({ // begin Ajax verzoek.
url: 'ajax.php',
data: {username: ms_username},
success: function(data) { // hier kom je als het verzoek terug is van de server.
// data is de boodschap die je van de server terug krijgt.
// laat ons, bij voorbeeld, die boodschap in een div laten zien
$('#message').html(data);
}
});
});
</script>
</head>
<body>
<div id="message"></div>
</body>
</html>