08-17-2006, 05:41 PM
08-17-2006, 06:41 PM
je vais voir ça quand j'aurais un moment...
08-17-2006, 09:10 PM
L'erreur est simple.
Il faut que ta requète soit entre guillemets.
Petite faute d'étourderie
Il faut que ta requète soit entre guillemets.
Code PHP :
$sql = "select mdp from membres where pseudo='".$pseudo."'";
Petite faute d'étourderie
08-17-2006, 09:46 PM
merci, je viens de decouvrir un autre bug (et mer**)
Parse error: parse error, unexpected T_ELSE in /www/sites/1/ifrance.com/w/e/webfootbeta/site/admin/login.php on line 27
Code :
<?
session_start();
if(isset($_POST) && !empty($_POST['pseudo']) && !empty($_POST['mdp'])) {
extract($_POST);
$sql = "select mdp from membres where pseudo='".$pseudo."'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$data = mysql_fetch_assoc($req); }
{
if($data['mdp'] != $mdp) {
echo '<p>Mauvais identifiants, merci de réessayer.</p>';
exit;
}
else {
session_start();
$_SESSION['pseudo'] = $pseudo;
echo 'Vous êtes actuellement redirigé vers l\'accueil.';
header( "Location: index.php");
} }
else {
echo '<p>Vous avez oublié de remplir un champ.</p>';
header( "Location: connexion.php");
} ?>Parse error: parse error, unexpected T_ELSE in /www/sites/1/ifrance.com/w/e/webfootbeta/site/admin/login.php on line 27
08-17-2006, 10:09 PM
Si tu ne nous donne pas la ligne on ne pourra pas t'aider.
Bon je pense avoir trouvé, c'est cette ligne:
Il faut mettre:
Mais oh les gars est-ce que vous réfléchissez avant de poster des questions là parce que depuis un moment on dirait que vous essayez même pas de régler ces problèmes, même quand ils sont ultra simple.
Bon je pense avoir trouvé, c'est cette ligne:
Code PHP :
echo 'Vous êtes actuellement redirigé vers l'accueil.;
Il faut mettre:
Code PHP :
echo "Vous êtes actuellement redirigé vers l'accueil.";
Mais oh les gars est-ce que vous réfléchissez avant de poster des questions là parce que depuis un moment on dirait que vous essayez même pas de régler ces problèmes, même quand ils sont ultra simple.
08-17-2006, 10:20 PM
la ligne 27 c else {
si sa t'avance
et dans le code que tu me donne tu oublie un truc
echo "Vous êtes actuellement redirigé vers l\'accueil.";
l'antislashe avant l'apostrophe (qui par ailleur j'avais mis)
si sa t'avance
et dans le code que tu me donne tu oublie un truc
echo "Vous êtes actuellement redirigé vers l\'accueil.";
l'antislashe avant l'apostrophe (qui par ailleur j'avais mis)
08-17-2006, 10:21 PM
DämEn je connaissais l'erreur mais quand je fais un tuto je préfère qu'on me signale mes erreurs avec courtoisie plutot que de jouer son malin...
Sinon oui en écrivant un tuto aussi long j'ai forcément fait des erreurs, mais il faut lire le code pas seulment le copier...
Sinon oui en écrivant un tuto aussi long j'ai forcément fait des erreurs, mais il faut lire le code pas seulment le copier...
08-17-2006, 10:33 PM
globe je ne fais pas que le copier, j'ai rajouté des chose, modifié d'autre.
08-18-2006, 12:12 AM
Ah oui exact j'ai oublié l'antislashes.
Petit problème sur le forum je n'ai pas pu éditer mon message, ça m'amenait sur une page pour effacer mon message.
Petit problème sur le forum je n'ai pas pu éditer mon message, ça m'amenait sur une page pour effacer mon message.
08-18-2006, 03:11 PM
Bon, désolé d'avoir froisser ta fierté Globe.
Une petite précision:
Dans cette syntaxe l'antislash pour échapper le simple quote ne sert pas.
_______________________________
Tant que j'y suis je peux bien lire le tuto en entier
Alors première requète, je conseille de faire ainsi:
_______________________________
Pour ne pas avoir à vous farcir de taper à chaque requète:
Je conseille de 'redéfinir' la fonction mysql_query(). A vous de la construire selon vos besoins 
_______________________________
Je conseille aussi de penser à faire les traitements sur les données qui permettent d'éviter les injections.
_______________________________
Je déconseille également ce genre d'habitude, pour des raisons que vous connaissez
Je parle de l'astérisque, nous ne le dirons jamais assez, mais il est mieux de définir les informations que vous souhaitez 
Pour la syntaxe j'en ai déjà parlé
_______________________________
Je ne vois pas où est défini $membre ...
_______________________________
Je conseille ici même si la requète fonctionne de bien traiter l'info comme une chaine de caractère.
=>
_______________________________
Dans inscription.php:
Ici je conseille fortement de traiter les données.
_______________________________
Pour finir pour faciliter l'utilisation de la fonction header() afin de l'utiliser à votre convenance, je vous conseille de vous intéresser aux fonctions qui travaille avec le buffer. Consulter la doc http://php.net/, et intéressez vous aux fonctions ob_*
Voili voiloou. J'espère que ça t'aidera Globe. Pour d'autres conseils hésites pas. Et si des erreurs se sont glissées dans mon commentaires, je vous prie par avance de m'en excuser
[EDIT]J'ai oublié un détail, l'organisation du tutoriel. Je pense qu'il aurait été plus convenu de commencer par l'inscription puis de passer à la connexion pour enfin finir par l'espace membre & le pannel admin.
Une petite précision:
Code PHP :
echo "Vous êtes actuellement redirigé vers l'accueil.";
_______________________________
Tant que j'y suis je peux bien lire le tuto en entier
Alors première requète, je conseille de faire ainsi:
Code PHP :
$sql = 'select mdp from membres where pseudo=\'',$pseudo,'\'';
_______________________________
Pour ne pas avoir à vous farcir de taper à chaque requète:
Code PHP :
$req = mysql_query($sql) or die('Erreur SQL !<br>',$sql,'<br>',mysql_error());
_______________________________
Je conseille aussi de penser à faire les traitements sur les données qui permettent d'éviter les injections.
_______________________________
Je déconseille également ce genre d'habitude, pour des raisons que vous connaissez
Code PHP :
("SELECT * FROM membres WHERE pseudo='$pseudo'")
Pour la syntaxe j'en ai déjà parlé
_______________________________
Code PHP :
<?
if(isset($_POST) && !empty($_POST['pseudo']) && !empty($_POST['mdp'])) {
extract($_POST);
$pseudo = $_POST['pseudo'];
$mdp= $_POST['mdp'];
$sql = "SELECT * FROM membres WHERE pseudo='",$pseudo,"'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$data = mysql_fetch_assoc($req);
if($data['mdp'] != $mdp) {
echo '<p>Vous vous êtes trompé dans vos identifiants !</p>';
exit;
} else {
$_SESSION['pseudo'] = $pseudo;
$requete = mysql_query("SELECT * FROM membres WHERE pseudo='$pseudo'");
$table=mysql_fetch_assoc($requete);
if ($table['pseudo'] =$membre) { include('pannel.php'); } }
}
else {
echo '<p>Vous n\'avez pas les droits necessaires.</p>';
exit;
}
?>Je ne vois pas où est défini $membre ...
_______________________________
Code PHP :
mysql_query('DELETE FROM membre WHERE id=' , $_GET['supprimer_membre']);
=>
Code PHP :
'DELETE FROM membre WHERE id=' , $_GET['supprimer_membre'],'\''
_______________________________
Dans inscription.php:
Code PHP :
$pseudo2 = $_POST['pseudo'];
$mdp2 = $_POST['mdp'];
$mdp3 = $_POST['mdp2'];
$email2 = $_POST['email'];
_______________________________
Pour finir pour faciliter l'utilisation de la fonction header() afin de l'utiliser à votre convenance, je vous conseille de vous intéresser aux fonctions qui travaille avec le buffer. Consulter la doc http://php.net/, et intéressez vous aux fonctions ob_*
Voili voiloou. J'espère que ça t'aidera Globe. Pour d'autres conseils hésites pas. Et si des erreurs se sont glissées dans mon commentaires, je vous prie par avance de m'en excuser
[EDIT]J'ai oublié un détail, l'organisation du tutoriel. Je pense qu'il aurait été plus convenu de commencer par l'inscription puis de passer à la connexion pour enfin finir par l'espace membre & le pannel admin.