ie SESSION probleem

Status
Niet open voor verdere reacties.

marti901

Gebruiker
Lid geworden
30 aug 2009
Berichten
411
Ik ben bezig met een inlog systeem in php.
het werk alleen op internet Explorer niet.
Ik krijg de de volgende error
Notice: Undefined index: GebruikersNaam [Plaats Bestand op mijn PC]

Ik geef alleen code.
Ik heb op de Homepage gewoon een post form gemaakt.
HTML:
<form action='Inloggen.php' method='post'>
<input type='text' name='gebruikersnaam' />
<input type='submit' />
</form>

Inloggen.php
PHP:
<?php
    session_start();

  $GB = $_POST['gebruikersnaam'];
?>

In internet Explore krijg ik over deze regel
$GB = $_POST['gebruikersnaam'];
gaat de error.

In andere browsers werkt het gewoon goed.
Ik heb het ook geprobeerd met alle beveiliging uit in IE.
Kan iemand mij helpen.
 
Heb je ook al controle gemaakt? Het heeft weinig zin om $_POST aan te roepen, als deze niet gevult is:

PHP:
<?php
if(isset($_POST['gebruikersnaam']) && !empty($_POST['gebruikersnaam'])) {
$GB = $_POST['gebruikersnaam'];
}
?>
 
Met die test zegt hij elke keer dat hij hem niet kent en dat doet hij allen in ie in andere webbrowser werkt hij gewoon.
Maar dat hij hem niet kende wist ik al.
 
Kun je meer informatie geven?
Browser versie, php versie, meer code, enz.
 
internet explore 9 beta.
PHP versie 5,3,5.

index.html

HTML:
<html>
<head>
</head>
<body>
 
 
<!-- Form om te registeren //-->
 
<table border="0">
<form action="Register.php" method="post">
<tr><td>Gebruikersnaam: </td><td><input type="text" name="GeruiksNaam" maxlength="20" /></td></tr>
<tr><td>Email: </td><td><input type="text" name="Email" maxlength="50" /></td></tr>
<tr><td>Bevestig Email: </td><td><input type="text" name="ConEmail" maxlength="50" /></td></tr>
<tr><td>Wachtwoord: </td><td><input type="password" name="Wachtwoord" maxlength="20" /></td></tr>
<tr><td>Bevestig Wachtwoord: </td><td><input type="password" name="ConWachtwoord" maxlength="20" /></td></tr>
<tr><td colspan="2" align="right"><input type="submit" value="Registeren" /></td></tr>
</form>
</table>

<!-- Inlog scherm //-->
<table border="0">
	<form action="Inloggen.php" method="post">
	<tr><td>GebruikersNaam: </td><td><input type="text" name="GebruikersNaam" maxlength="20" value='' /></td></tr>
	<tr><td>Wachtwoord: </td><td><input type="password" name="PassWord" maxlength="20" value='' /></td></tr>
	<tr><td colspan="2" align="right"><input type="submit" value="Inloggen" /></td></tr>
	</form>
</table>

<a href="http://www.google.nl"><button>**** YOU</button></a>

<form action="InLoggen.php" method="post">

</form> 

</body>
</html>

Inloggen.php

PHP:
<html>
<head>
</head>
<body>
<?php
	include("connect.php");
	
	if(isset($_POST['GebruikersNaam']) && !empty($_POST['GebruikersNaam'])){
		$UserName=strip_tags($_POST['GebruikersNaam']);
	}else echo "Kan ik niet.";
	
	$PassWord=$_POST['PassWord'];
	
	$Result = mysql_query("SELECT * FROM Speler");
	
	while($row = mysql_fetch_array($Result)){
		if($row['UserName'] == $UserName && $row['PassWord'] == $PassWord){
			
			header("Refresh: 0; MainBase.php");
			
			$_SESSION['Gebruiker'] = $UserName;
			$_SESSION['Ingelogt'] = true;
		}
	}
	
	if($LogInCor == false)echo "Ongeldige LogIn";
	
?>
</body>
</html>

P.S. de pagina;s zijn noglang niet af.
 
Laatst bewerkt:
IE9 beta kan de oorzaak zijn, want voor zover ik weet hoort dit gewoon te werken. Dit topic kan beter in het html gedeelte van dit forum worden geplaatst.
 
Het rare is dat ik op andere sites zoals helpmij wel gewoon kan inloggen.
 
In internet Explore krijg ik over deze regel
$GB = $_POST['gebruikersnaam'];
gaat de error.

Uhm, IE (of welke browser dan ook) hoort die tekst helemaal niet te zien. Dat is PHP code en die hoort uitgevoerd te worden door de server, niet door de client (browser).
 
Klopt ik vond het ook al gek dat hij zij dat het gebruikersnaam niet kende.

Kan het er aan lichtigen dat de site nog niet online staat en ik het vis xampp doe??
 
wat is precies de error die je krijg?
Als php een error op het scherm gooit, dan verteld hij altijd wat er mis is en wat hij verwacht en in de buurt van welke regel.

Anders doe ff een screenprint!

De error zal niet door een bepaalde browser komen, maar door de code.
Sommige browsers zijn wel gevoeliger dan de andere. Mar een fout is een fout.
 
Zet in Inloggen.php net onder "<?php" eens
PHP:
print_r($_POST);
Dan krijg je de namen van de indexen en bijbehorende waardes te zien.
 
Bij firefox en google crhome zie ik dit.

Array ( [GebruikersNaam] => Marti901 [PassWord] => -------- )

heb het PassWord vervangen voor -------

En bij IE niks.
 
Laatst bewerkt:
Doe op de pagina eens:

$_POST['test'] = 'test';

echo $_POST['test'];

en voer dat eens uit in IE, dan kun je zien of het probleem ontstaat daar het verkeerde verzenden van de post waardes of dat IE een probleem heeft met het verwerken van de $_POST waarden.

Wat je ook nog zou kunnen proberen is, print_r($_REQUEST);
 
Bij firefox en google chrome staat er gewoon wat ik heb ingetyped.

Bij IE zie ik dit een lege array 'Array ( )' zowel met $_REQUEST als $_POST.
 
Laatst bewerkt:
Wat me wel opvalt is dat de submit knoppen een name hebben
<tr><td colspan="2" align="right"><input type="submit" value="Inloggen" /></td></tr>

Misschien dat IE daar problemen mee heeft.

IE zou gewoon verbannen moeten worden van het net!
 
Waar staat die naam dan??

Ik zie allen maar value="Inloggen" en dat is de tekst die op de knoppen staat.
 
sorry, wou snel typen.....
Haha 4 letters minder gaat zeker snellen.

Maar ik bedoel ook dat er geen name aan de submit buttons hangen.
 
Werkt helaas ook niet. Maar het vreemde is ook dat die registratie goed werkt in IE (ook met $_POST) en dat hij het bij het inloggen niet kent.
 
zal dan bijna zeker wel een foutje ergens zitten dat de form niet juist verzonden wordt
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan