Javascript /php :bug de window.location

Fermé
Pure chèvre Messages postés 3 Date d'inscription lundi 9 novembre 2009 Statut Membre Dernière intervention 12 novembre 2009 - 9 nov. 2009 à 17:58
Pure chèvre Messages postés 3 Date d'inscription lundi 9 novembre 2009 Statut Membre Dernière intervention 12 novembre 2009 - 12 nov. 2009 à 08:06
Bonjour à tous,

Je suis novueau, j'espère avoir posté au bon endroit :)
Je reprends la gestion d'un site, et je suis très mauvais en javascript.

Depuis quelques jours, un problème est apparu (en même temps que la nouvelle version d'IE8 ?). Sur ma page d'accueil, j'ai un champ de texte et un bouton "VALIDER". si on rentre le bon mot de passe, on peut accéder à la page suivante.

Sous Firefox, pas de problème, qu'on clique sur VALIDER ou qu'on appuie sur "Entrée", on accède à la page suivante.
Sous IE 8, le clic fonctionne. Mais pas le fait d'appuyer sur Entrée. Alors que tout allait bien jusque là.

Voilà la syntaxe utilisée pour le semblant de sécurisation.

<?php
              include ('./connect_db.php'); 
              if (isset($_POST['valider']))
                  {
                    $mot_de_passe = $_POST['mdp'];
                    $mot_de_passe_hash = md5($mot_de_passe);
                    $log=mysql_query("SELECT * FROM pass ")or die(mysql_error());
                    $t_log=mysql_fetch_array($log);
                  if ($mot_de_passe_hash==$t_log['pass']){
                  ?>
<script type="text/javascript">
window.location.href="./fichier_cible.php";
</script>
<?php }}

Quelqu'un a une idée d'où ça peut venir ?

Merci d'avance :)
A voir également:

4 réponses

avion-f16 Messages postés 19249 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 15 juin 2024 4 503
9 nov. 2009 à 18:02
en même temps que la nouvelle version d'IE8 ?
IE8 est sorti depuis déjà plusieurs mois ...

Pour mieux comprendre ton problème, il est souvent utile d'ouvrir les codes sources depuis le navigateur, pour voir à quoi elles ressemble après avoir été générée avec PHP.

Je penses que c'est cette ligne qui pose problème :
$log=mysql_query("SELECT * FROM pass ")or die(mysql_error());
0
Pure chèvre Messages postés 3 Date d'inscription lundi 9 novembre 2009 Statut Membre Dernière intervention 12 novembre 2009
10 nov. 2009 à 08:05
Merci pour la réponse :)
En fait je parlais d'une mise à jour Windows concernant internet Explorer, qui a eu lieu ces derniers jours, pas de la dernière version en elle même.

J'ai affiché la source de la page côté client, et voilà que j'obtiens :

<form name="pass" enctype="multipart/form-data" method="post" action="fichier_cible.php">
       <center>
             <label class="label"><i>Espace Client</i></label>
             <input type="password" name="mdp" size="10" class = "champtexte"/> <br />
             <input type="submit" name="valider" value="valider" class="submit"/>
       </center>
</form>


Si c'était la requête SQL qui posait problème, ne devrait-elle pas le poser quel que soit le navigateur ?
Merci en tout cas pour ta réponse :)
0
avion-f16 Messages postés 19249 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 15 juin 2024 4 503
10 nov. 2009 à 16:46
Je penses que c'est surtout la redirection en JS.
D'ailleur, évite de faire des redirections en JS quand c'est pour empêcher de voir le reste de la page.
Fait ça en PHP avec la fonction header (aucun caractères, espace compris, ne dois avoir été envoyé [echo, en-dehors de "<?php" et "?>", ...]). :
<?php
...
header('Location: pagecible.php');
die();
...
?>
0
Pure chèvre Messages postés 3 Date d'inscription lundi 9 novembre 2009 Statut Membre Dernière intervention 12 novembre 2009
12 nov. 2009 à 08:06
Ok, je vais me documenter sur ces fonctions php et tenter le coup.

Merci de l'info ;)
0