Corbu

  • Nombre de sujets
    1
  • Nombre de messages
    8
  • Nombre de commentaires
    Aucun
  • Nombre de news
    Aucune
  • Niveau en PHP
    Débutant

Ses derniers messages sur les forums

Corbu
le 02/03/2004 à 00:25
Identification php
bon là je bloque vraiment

Je met le script chez quelqu'un qui est en local chez lui et ca marche. Il redirige sur page1.php s'il a mis le bon pass / nom

Moi quand je met le meme script chez mon hebergeur (payant) ca marche (j'ai une belle page blanche) mais pas de redirection. Comme si le code de redirection ne marchait pas. Alors qu'il marche chez mon ami mais pas chez moi !!!

Voici le code de page5.php

<?php
$pseudo=$_POST['pseudo'];
$mdp=$_POST['mdp'];

if((empty($_POST['pseudo'])) || (empty($_POST['mdp'])))
{
?>
<script language="Javascript">
alert('Un des champs est vide, Veuillez revenir au formulaire d\'identification.');
history.back();
</script>
<?php
}
else
{
require('_connexion.php');

$db = @mysql_connect("$dbhost", "$dbuser", "$dbpass") OR DIE("Erreur : la base de données n'existe pas.");
@mysql_select_db("$dbbase",$db) OR DIE("Erreur : la base de données n'est pas accessible.");

$sql=mysql_query("SELECT count(userid) as compte FROM $table WHERE pseudo='$pseudo' AND mdp='$mdp'") OR DIE(mysql_error());

$res=mysql_fetch_array($sql);
$compte=$res['compte'];

if($compte == 0)
{
?>
<script language="Javascript">
alert('Les mots de passe et login ne correspondent pas, recommencez.');
history.back();
</script>
<?php
}
else if($compte == 1)
{
?>
<script language="javascript">
alert('L\'identification s\'est réalisé avec succès !');
window.location='page1.htm';
</script>
<?php
}
}
?>

J'ai donc essayé de faire un header

en remplacant
?>
<script language="javascript">
alert('L\'identification s\'est réalisé avec succès !');
window.location='page1.htm';
</script>
<?php
par


header("Location: http://www.example.com/"); /* Redirect browser */

/* Make sure that code below does not get executed when we redirect. */
exit;

mais pareil... page blanche !!!!!

Je me pose la question donc : est-il possible que ce soit mon hebergeur qui ne comprenne pas certaines fonction javascript ?
Sinon je vais faire une redirection automatique en balise meta au bout de 10 secondes... mais ca fait pas pro du tout.
Corbu
le 01/03/2004 à 12:19
Identification php
salut foularou,
si tu était dans l'équipe vb-fr.org , tu saurait que maintenant je n'utilise plus le pseudo "corbu" là-bas. J'ai meme demandé à ce qu'il le suppriment.
Je suis maintenant avec "coldFusion".

Voila, et comme tu voit, je bloque sur ce php ;)
Corbu
le 01/03/2004 à 10:22
Identification php
j'ai fait 2 posts, pardon...

merci de ta réponse
Corbu
le 01/03/2004 à 10:21
Identification php
bon j'avances j'avances...
Vraiment merci pour ton aide qui me permet de ne pas bloquer sur le 1er point

Donc j'ai un probleme :
voici mon script (qui vient de toi et que j'ai modifié)

<?
require("_connexion.php");

$db = @mysql_connect("$dbhost", "$dbuser", "$dbpass") OR DIE("Erreur : la base de données n'existe pas.");
@mysql_select_db("$dbbase",$db) OR DIE("Erreur : la base de données n'est pas accessible.");
$sql = 'SELECT pseudo,mdp from session WHERE pseudo="'.$pseudo.'" AND mdp="'.$mdp.'"';
$req=mysql_query($sql)or die('erreur sql!<br>'.$sql.'<br>'.mysql_error());

$data = mysql_fetch_array($req);

$log_valid =$data['pseudo'];
$pwd_valid =$data['mdp'];

if($pseudo == $log_valid && $mdp == $pwd_valid)
{

session_start();
session_register("pseudo");
session_register("mdp");
header('location:page4.php');
}
if($pseudo == "" || $mdp == "")

{ session_start ();
// On détruit les variables de notre session
session_unset ();
// On détruit notre session
session_destroy ();
header ('location: "page4.php");
}

else
{
echo'<body onLoad ="alert(\'Mauvais login ou mot depasse!\')">';
echo'<script language="javascript">parent.location.href="page4.php";</script>';
}
mysql_free_result($req);
mysql_close();
?>

Voila, j'ai quand je valide le formulaire j'ai un probleme à la ligne 11 qui est celle-là :
$log_valid =$data['pseudo'];

Comment cela ce fait-il ?

2eme truc, j'ai mis "pseudo" et 'mdp' à chaque fois. C'est ce qui est dans ma table, et c'est ce qui est dans mon formulaire page4.php.

J'attends ta réponse avec impatience...

MErci
Corbu
le 01/03/2004 à 10:20
Identification php
bon j'avances j'avances...
Vraiment merci pour ton aide qui me permet de ne pas bloquer sur le 1er point

Donc j'ai un probleme :
Voici mon formulaire (page4.php)

<form name="form1" method="post" action="page5.php">
<table width="40%" border="0" align="left">
<tr>
<td><strong><font size="2" face="Arial, Helvetica, sans-serif">Nom</font></strong></td>
<td><input type="text" name="pseudo"></td>
</tr>
<tr>
<td><strong><font size="2" face="Arial, Helvetica, sans-serif">Mot de passe</font></strong></td>
<td><input type="text" name="mdp"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input type="submit" name="Submit" value="Valider"></td>
</tr>
</table>
</form>
Corbu
le 29/02/2004 à 23:53
Identification php
meeper , merci beaucoup !
Je ne connaissait pas les "wall"

Plus serieusement... je suis plus nul que tu ne le croit en php
Je comprends pas ce fichier là.

Peut-tu m'expliquer plus ou sinon plus le parfaire ?

Deja je comprends pas l'include, n'était-ce pas : requiere _connexion.php ?

...

Merci d'avance
Corbu
le 29/02/2004 à 23:20
Identification php
super ton exemple !
Sauf que dans cette partie :

<?
// On définit un login et un mot de passe de base pour tester notre exemple. Cependant, vous pouvez très bien interroger votre base de données afin de savoir si le visiteur qui se connecte est bien membre de votre site
$login_valide = "moi";
$pwd_valide = "lemien";

// on teste si nos variables sont définies
if (isset($_POST['login']) && isset($_POST['pwd'])) {

// on vérifie les informations du formulaire, à savoir si le pseudo saisi est bien un pseudo autorisé, de même pour le mot de passe
if ($login == $_POST['login'] && $pwd == $_POST['pwd']) {
// dans ce cas, tout est ok, on peut démarrer notre session

// on la démarre :)
session_start ();
// on enregistre les paramètres de notre visiteur comme variables de session ($login et $pwd) (notez bien que l'on utilise pas le $ pour enregistrer ces variables)
$_SESSION['login'] = $_POST['login'];
$_SESSION['pwd'] = $_POST['pwd'];

// on redirige notre visiteur vers une page de notre section membre
header ('location: page_membre.php');
}
else {
// Le visiteur n'a pas été reconnu comme étant membre de notre site. On utilise alors un petit javascript lui signalant ce fait
echo '<body onLoad="alert(\'Membre non reconnu...\')">';
// puis on le redirige vers la page d'accueil
echo '<meta http-equiv="refresh" content="0;URL=index.htm">';
}
else {
echo 'Les variables du formulaire ne sont pas déclarées.';
}
?>

et bien... il ne va pas rechercher dans une base de donnée le nom et le mot de passe... et c'est ça qui m'interesse !!

Merci de ton aide
Corbu
le 29/02/2004 à 23:05
Identification php
Bonjour,

je cherche de l'aide partout sur le web, j'espere qu'ici je trouverait mon bonheur...

J'ai fait un systeme d'enregistrement sur mon site.
Ceci avec les champs : PSEUDO / PASSWORD / EMAIL
J'ai crée une table qui reprends ces infos via phpmyadmin.

Voici ma table :
CREATE TABLE photo2 (
userid INT(10) NOT NULL AUTO_INCREMENT,
pseudo VARCHAR(20) NOT NULL,
mdp VARCHAR(20) NOT NULL,
email VARCHAR(40) NOT NULL,
PRIMARY KEY (userid)
);

En clair,
page1.php est le formulaire d'inscription qui lance vers page2.php
page2.php il y a le script qui insere les données dans la table et qui redirige en javascript vers une troisieme page.
Tout marche donc nickel de ce coté

Mon probleme maintenant est que les gens, chaque jour, se réinscrivent pour entrer dans la partie privée.
J'aimerais donc faire un systeme d'identification avec les champs : PSEUDO / PASSWORD
Si ces champs correspondent à ce qu'ils ont mis quand ils se sont enregistrés, alors ok passe en partie privée sinon recommence.

J'arrive pas à faire ca...

Voici mon formulaire d'identification :
<form name="form1" method="post" action="identification.php">
<table width="40%" border="0" align="left">
<tr>
<td><strong><font size="2" face="Arial, Helvetica, sans-serif">Nom</font></strong></td>
<td><input type="text" name="pseudo"></td>
</tr>
<tr>
<td><strong><font size="2" face="Arial, Helvetica, sans-serif">Mot de passe</font></strong></td>
<td><input type="text" name="password"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input type="submit" name="Submit" value="Valider"></td>
</tr>
</table>
</form>

et la page identification.php .. qui a mon avis commence par :

require("_connexion.php");

function identification($login,$pass)
{

$db = @mysql_connect("$dbhost", "$dbuser", "$dbpass") OR DIE("Erreur : la base de donnees n'existe pas.");
@mysql_select_db("$dbbase",$db) OR DIE("Erreur : la base de donnÈes n'est pas accessible.")

mais la suite ???

Merci de votre aide
LoadingChargement en cours