Espace Membre PHP + redirection

Résolu/Fermé
djimson
Messages postés
211
Date d'inscription
lundi 6 novembre 2006
Statut
Membre
Dernière intervention
13 février 2015
- 14 juin 2009 à 16:54
djimson
Messages postés
211
Date d'inscription
lundi 6 novembre 2006
Statut
Membre
Dernière intervention
13 février 2015
- 14 juin 2009 à 21:11
Bonjour,
Je demande de l'aide pour un script qui ne marche pas bien. J'arrive a insérer les membres dans ma base mais c'est la redirection vers la page personnelle avec l'ID ou le non_utilisateur qui marche pas.
De l'aide svp
Voici mes scripts de connexion :
<?

// Redirige l'utilisateur s'il est déjà identifié
if(isset($_COOKIE["ID_UTILISATEUR"]))
{
header("Location: mon-cv.php?ID_Utilisateur=$id");
}
else
{

// Formulaire visible par défaut
$masquer_formulaire = false;

// Une fois le formulaire envoyé
if(isset($_POST["BT_Envoyer"]))
{

// Vérification de la validité des champs
if(!ereg("^[A-Za-z0-9_]{2,20}$", $_POST["TB_Nom_Utilisateur"]))
{
$message = "Votre nom d'utilisateur doit comporter entre 2 et 20 caractères<br />\n";
$message .= "L'utilisation de l'underscore est autorisée";
}
elseif(!ereg("^[A-Za-z0-9]{6,}$", $_POST["TB_Mot_de_Passe"]))
{
$message = "Votre mot de passe doit comporter au moins 6 caractères";
}
else
{

// Connexion à la base de données
// Valeurs à modifier selon vos paramètres configuration
mysql_connect("xxxxx", "xxxxx", "xxxxx");
mysql_select_db("xxxxxx");

// Sélection de l'utilisateur concerné
$result = mysql_query("
SELECT ID_Utilisateur, Nom_Utilisateur, Mot_de_Passe, Compte_Active
FROM Comptes_Utilisateurs
WHERE Nom_Utilisateur = '" . $_POST["TB_Nom_Utilisateur"] . "'
");

// Si une erreur survient
if(!$result)
{
$message = "Une erreur est survenue lors de la tentative de connexion";
}
else
{

// Si aucun utilisateur n'a été trouvé
if(mysql_num_rows($result) == 0)
{
$message = "Le nom d'utilisateur " . $_POST["TB_Nom_Utilisateur"] . " n'existe pas";
}
else
{

// Récupération des données
$row = mysql_fetch_array($result);

// Si le compte n'a pas été activé
if($row["Compte_Active"] == 0)
{
$message = "Votre compte utilisateur n'a pas été activé";
}
else
{

// Vérification du mot de passe
if(md5($_POST["TB_Mot_de_Passe"]) != $row["Mot_de_Passe"])
{
$message = "Votre mot de passe est incorrect";
}
else
{

// Définition du temps d'expiration des cookies
$expiration =
empty($_POST["CB_Connexion_Automatique"]) ? 0 : time() + 90 * 24 * 60 * 60;

// Création des cookies
setcookie("ID_UTILISATEUR", $row["ID_Utilisateur"], $expiration, "/");
setcookie("NOM_UTILISATEUR", $row["Nom_Utilisateur"], $expiration, "/");

// Redirection de l'utilisateur
header("Location: mon-cv.php?ID_Utilisateur=$id");
// Fermeture de la connexion à la base de données
mysql_close();

// Redirection de l'utilisateur
header("Location: mon-cv.php?ID_Utilisateur=$id");

}

}


}

}

// Fermeture de la connexion à la base de données
mysql_close();

}

}

}

?>
<table width="272" height="195" border="0" align="center" cellspacing="0">

<tr>
<td height="31" colspan="3" background="../../images/fond_id_cv.jpg"> </td>
</tr>
<tr>
<td width="7" height="131" background="../../images/index_17.jpg"> </td>
<td width="257" height="131" bgcolor="#CCCCCC"> <img src="../../images/connexion.jpg" alt="" width="180" height="21" />

<br />
<? if(isset($message)) { ?>
<p><?= $message; ?></p>
<? } if($masquer_formulaire != true) { ?>

<form action="http://<?= $_SERVER["SERVER_NAME"] . $_SERVER["SCRIPT_NAME"]; ?>" method="post">

<table width="256">
<tr>
<td width="90">Pseudo :</td>
<td width="154"><input type="text" name="TB_Nom_Utilisateur" /></td>
</tr>
<tr>
<td>Mot de passe : </td>
<td><input type="password" name="TB_Mot_de_Passe" /></td>
</tr>
<tr>
<td colspan="2"><input type="checkbox" name="CB_Connexion_Automatique" />
Se souvenir de moi </td>
</tr>
<tr>
<td colspan="2"><div align="center">
<input type="submit" name="BT_Envoyer" value="Se connecter" />
</div></td>
</tr>
</table>
<p>
<? } ?></p>
</form></td>
<td width="2" height="131" background="../../images/index_17.jpg"> </td>
</tr>
<tr>
<td height="8" colspan="3" align="left" valign="top" background="../../images/index_23.jpg"></td>
</tr>
</table>


Script mon-cv.php
C'st la que se situe le problème. J'arrive pas a recupérer le nom d'utilisateur ni son ID meme en faisant $id=$_GET['ID_Utilisateur'].
Que dois_je mettre dans mon script mon-cv.php?
Merci beaucoup de l'aide, je suis très débutant

8 réponses

Overstyle
Messages postés
32
Date d'inscription
mardi 9 juin 2009
Statut
Membre
Dernière intervention
7 mai 2011
1
14 juin 2009 à 17:16
Salut,

Qu'est-ce-que contient ta variable $id ?
0
djimson
Messages postés
211
Date d'inscription
lundi 6 novembre 2006
Statut
Membre
Dernière intervention
13 février 2015
3
14 juin 2009 à 17:19
Merci Overstyle pour ta reponse rapide.
Au fait, je veux que la variable $id puisse contenir soit le nom d'utilisateur soit l'ID_Utilisateur
0
djimson
Messages postés
211
Date d'inscription
lundi 6 novembre 2006
Statut
Membre
Dernière intervention
13 février 2015
3
14 juin 2009 à 17:25
Voici ce que je mettais dans mon-cv.php

<?
$Nom_Utilisateur=$_GET['Nom_Utilisateur'];
// Connexion à la base de données

/* Parametre de connexion à la base de donnée et au serveur*/
$connect = mysql_connect('localhost','root',"") or die ("Ereur de connexion");
$db = mysql_select_db('XXXX', $connect) or die ("Erreur de connexion");


// Sélection de l'utilisateur concerné
$result =("
SELECT *
FROM Comptes_Utilisateurs
WHERE Nom_Utilisateur = '" . $_POST["TB_Nom_Utilisateur"] . "'
");
$resultat=mysql_query($result);
$row = mysql_fetch_array($resultat);

// Fermeture de la connexion à la base de données
mysql_close();
?>

et j'essai d'afficher un champ comme ceci....
<tr>
<td height="19"> </td>
<td><? echo $row["Nom_Utilisateur"] ?></td>
</tr>

Merci de m'expliquer comment faire
0
Overstyle
Messages postés
32
Date d'inscription
mardi 9 juin 2009
Statut
Membre
Dernière intervention
7 mai 2011
1
14 juin 2009 à 17:43
Donc si j'ai bien compris tu veux que dans certains cas elle contienne nom d'utilisateur et dans d'autres ID_Utilisateur.

Alors dans ce cas, tout en haut de la page

quand tu veux utiliser l'id:

if(isset($_COOKIE['ID_UTILISATEUR']))
{
$id_user = $_COOKIE['ID_UTILISATEUR'];
}

Et quand tu veux utiliser le nom:

if(isset($_COOKIE['NOM_UTILISATEUR']))
{
$name_user = $_COOKIE['NOM_UTILISATEUR'];
}

En espérant avoir compris/résolu ton problème...
0
Overstyle
Messages postés
32
Date d'inscription
mardi 9 juin 2009
Statut
Membre
Dernière intervention
7 mai 2011
1
14 juin 2009 à 17:45
Evidemment il faut que tu remplaces les $id par $id_user ou $name_user...
0
djimson
Messages postés
211
Date d'inscription
lundi 6 novembre 2006
Statut
Membre
Dernière intervention
13 février 2015
3
14 juin 2009 à 17:49
Merci Overstyle.
Je veux seulement le nom d'utilisateur.
mais je met sur quel page? Ma page mon-cv.php?
Et la redirection? est-elle bonne?
Merci encore
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Overstyle
Messages postés
32
Date d'inscription
mardi 9 juin 2009
Statut
Membre
Dernière intervention
7 mai 2011
1
14 juin 2009 à 17:58
non non sur celle que tu a posté en 1er

et pour mon-cv.php

<?
if($_GET['ID_Utilisateur'])

{

$Nom_Utilisateur = $_GET['ID_Utilisateur'];


// Connexion à la base de données

/* Parametre de connexion à la base de donnée et au serveur*/
$connect = mysql_connect('localhost','root',"") or die ("Ereur de connexion");
$db = mysql_select_db('XXXX', $connect) or die ("Erreur de connexion");


// Sélection de l'utilisateur concerné
$result =("
SELECT *
FROM Comptes_Utilisateurs
WHERE Nom_Utilisateur = '" . $Nom_Utilisateur . "'
");
$resultat=mysql_query($result);
$row = mysql_fetch_array($resultat);

// Fermeture de la connexion à la base de données
mysql_close();

?>

et j'essai d'afficher un champ comme ceci....
<tr>
<td height="19"> </td>
<td><? echo $row["Nom_Utilisateur"] ?></td>
</tr>

<?php
}
?>
0
djimson
Messages postés
211
Date d'inscription
lundi 6 novembre 2006
Statut
Membre
Dernière intervention
13 février 2015
3
14 juin 2009 à 19:33
Mon problème es reglé à moitié. Merci déjà pour ce qui a été fait.
Voici l'erreur que j'ai quand je fais la redirection vers mon-cv.php?ID_Utilisateur=X
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/content/p/g/a/pgaliba/html/TOUTAOUAGA/emploi/inscription/mon-cv.php on line 25

Voici les lignes de codes.
<?
if($_GET['ID_Utilisateur'])

{

$Nom_Utilisateur = $_GET['ID_Utilisateur'];


/* Parametre de connexion à la base de donnée et au serveur*/
$connect = mysql_connect('localhost','root',"") or die ("Ereur de connexion");
$db = mysql_select_db('ouaga_db', $connect) or die ("Erreur de connexion");


// Sélection de l'utilisateur concerné
$result =("
SELECT *
FROM Comptes_Utilisateurs
WHERE ID_Utilisateur = $id_user;
");

$resultat=mysql_query($result);
$row = mysql_fetch_array($resultat);

// Fermeture de la connexion à la base de données
mysql_close();
?>
0
djimson
Messages postés
211
Date d'inscription
lundi 6 novembre 2006
Statut
Membre
Dernière intervention
13 février 2015
3
14 juin 2009 à 18:04
Ok, je l'essai de suite et je vous dit ce que ca donne. Vraiment merci et désolé du derangement
0
djimson
Messages postés
211
Date d'inscription
lundi 6 novembre 2006
Statut
Membre
Dernière intervention
13 février 2015
3
14 juin 2009 à 20:11
Bonsoir, Je demande de l'aide pour cette erreur :

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/content/p/g/a/pgaliba/html/TOUTAOUAGA/emploi/inscription/mon-cv.php on line 25
Erreur de connexion

Merci
0
djimson
Messages postés
211
Date d'inscription
lundi 6 novembre 2006
Statut
Membre
Dernière intervention
13 février 2015
3
14 juin 2009 à 21:11
SVP personne ne peut me venir en aide?
Maintenant, ma page ne se charge plus. Elle commence et s'arrete et donne ceci ad la barre d'adresse:
http://www.toutaouaga.com/emploi/inscription/mon-cv.php?ID_Utilisateur=

ou si ca passe, ca donne ceci :

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/content/p/g/a/pgaliba/html/TOUTAOUAGA/emploi/inscription/mon-cv.php on line 25
Erreur

Voici de nouveau le code
<?
if($_GET['ID_Utilisateur'])

{

$Nom_Utilisateur = $_GET['ID_Utilisateur'];

// Connexion à la base de données


// Parametre de connexion à la base de donnée et au serveur*/
$connect = mysql_connect('localhost','root',"") or die ("Ereur de connexion");
$db = mysql_select_db('ouaga_db', $connect) or die ("Erreur de connexion");


// Sélection de l'utilisateur concerné
/* $result =("
SELECT *
FROM Comptes_Utilisateurs
WHERE ID_Utilisateur = $id_user;
");

$resultat = mysql_query($result);
$row = mysql_fetch_array($resultat) or die ("Erreur de connexion");

*/

// Fermeture de la connexion à la base de données
mysql_close();
?>
Merci de l'aide. Je dois finalisé ce travail ce soir pr qudemain matin on puisse l'utilisé.
0