Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > XML > SimpleXML
SimpleXML Forum d'entraide pour l'extension SimpleXML, qui permet de manipuler des documents XML en PHP (approche DOM).
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 03/07/2006, 11h46   #1
Invité régulier
 
Inscription : juin 2006
Messages : 77
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 77
Points : 7
Points : 7
Par défaut [SimpleXML] connexion

Salut, j'ai un problème ...

Je voudras me connecter a partir d'un pseudo et d'un pass.
Je voudrais que si le pass et pseudo sont les me que dans le fichier xml, la connexion se fasse, sinon elle ne se fais pas ...

C'est surement une bête erreur mais bon ...

Mon php : (login.php)
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php
if (isset($_POST['pseudo']) != NULL AND isset($_POST['pass']) != NULL) {
 
include('inc/login.funct.php');
  verif(htmlentities($_POST['pseudo']), htmlentities($_POST['pass']));
 
 if ($o == '1') {
  session_start();
  $_SESSION['login'] = htmlentities($_POST['pseudo']);
  ?> <p>Connexion réussie, redirection en cours ... Veillez patienter 3 secondes ...</p>
  <META HTTP-EQUIV="Refresh" CONTENT="2; URL=gestionArticles.php">
  <?php
 }
 else {
 ?> <p>Erreur de pseudo / mot de passe, veillez r&#1094;&#9560;essayer !</p>
<?php
 }
}
else {
?>
 
<p>Pour g&#1094;&#9560;rer votre blog, il faut que vous soyez connect&#1094;&#9560;. Pour vous connecter vous devez remplir le formulaire ci-dessous.</p>
 
<form action="login.php" method="post">
 
<ul>
<li>Votre pseudo : <input name="pseudo" type="text" maxlength="20" /></li>
<li>Votre mot de passe : <input name="pass" type="password" maxlength="20" /></li>
</ul>
<input type="button" value="G&#1094;&#9560;rer mon blog" onclick="verifForm(this.form)" />
 
</form>
 
<ul>
<li><a href="#">Recevoir mon mot de passe par email</a></li>
<li><a href="register.php">Cr&#1094;&#9560;er mon blog</a></li>
</ul>
 
<?php } ?>
La fonction qui vérifie (inc/login.funct.php) :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
function verif($pseudo, $pass) {
  if (is_file('blogs/'.$pseudo.'.xml'))
  {
    $login = simplexml_load_file('blogs/'.$pseudo.'.xml');
    foreach($login->identite[0] as $identite) {
      if (utf8_decode($identite->pass) == md5($pass) AND utf8_decode($identite->pseudo) == $pseudo) {
      $o = '1';
      } else { $o = '0'; }
    }
  }
  else {
    $o = '0';
  }
}
?>
Mon xml : (blogs/zuxion.xml) enfaite c'est la "fiche" d'un blog (c'est juste la partie qui nous interesse ...)
Code XML :
1
2
3
4
5
6
7
8
9
<identite>
    <name>Zuxion-Blog</name>
    <pseudo>zuxion</pseudo>
    <pass>3311c6783001fd37f76cb57a5e3a056d</pass> <!-- zezet -->
    <email>zuxion@gmail.com</email>
    <avatar>http://www.url.com/avatar.jpg</avatar>
    <template>bluecolor</template>
    <nbrArticles>7</nbrArticles>
  </identite>

Donc enfaite quand je veux me connecter ca me fais toujours comme si le pass était faux ...
J'aimerais donc que ça marche ..
zuxion est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/07/2006, 12h14   #2
Membre expérimenté
 
Avatar de papyphp
 
Inscription : avril 2005
Messages : 425
Détails du profil
Informations personnelles :
Âge : 62
Localisation : Belgique

Informations professionnelles :
Secteur : Enseignement

Informations forums :
Inscription : avril 2005
Messages : 425
Points : 545
Points : 545
Salut,

l'erreur vient de cette ligne :
Code :
if (isset($_POST['pseudo']) != NULL AND isset($_POST['pass']) != NULL)
isset() renvoie un booléen qui par définition ne peut jamais être null

tu dois donc tester l'existence de la variable par isset() ET tester le fait qu'elle contient une valeur correcte
__________________
Lu kinze d' awousse, la Vierje arandje û dusbrôle lu timp. Et ce coup ci, elle ne nous a pas ratés
papyphp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/07/2006, 15h46   #3
Invité régulier
 
Inscription : juin 2006
Messages : 77
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 77
Points : 7
Points : 7
J'ai toujours fais comme ça et ça a toujours bien marcher ...
Donc l'erreur ne vient pas de là ...

edit : j'ai quand me tester et bien ça ne marche tjrs pas ...
zuxion est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h34.


 
 
 
 
Partenaires

Hébergement Web