Probleme fiche d'inscription PHP/Mysql [Résolu/Fermé]

Signaler
-
 hellfirewar -
Bonjour,
Voila j'essaye de créer une fiche d'inscription en PHP avec l'aide du site du zero mais j'aime pas faire comme les autres ! Donc j'ai créer une fiche en Html avec un bouton envoyer et une zone texte pour mettre son pseudo ( Un truc touts bête pour l'instant). Une fois que l'on clique sur envoyer l'action mène sur la même page mais vers le traitement ( Vous comprendrez plus bas) Mais gros problème rien ne s'enregistre rien ne s'affiche mais pourtant touts fonctionne...
Voici le code en entier que je vais modifier par la suite :
<body>
<?php
session_start();
header('Content-type: text/html; charset=utf-8');
include('config.php');

/********Actualisation de la session...**********/

include('fonctions.php');
connexionbdd();
actualiser_session();

/********Fin actualisation de session...**********/

if(isset($_SESSION['membre_id']))
{
header('Location: '.ROOTPATH.'/index.php');
exit();
}
?>
<form method="post" action="index.php">
<table width="300" border="0" align="center">
<tr>
<td colspan="2" class="menu">Inscription</td>
</tr>
<tr>
<td><label for="pseudo">Pseudo : </label></td>
<td><input type="text" name="pseudo" id="pseudo" /></td>
</tr>
<tr>
<td><label for="mdp">Mot de passe : </label></td>
<td><input type="password" name="mdp" id="mdp" />
</td>
</tr>
<tr>
<td>
<input type="submit" value="Envoyer" />
</td>
</tr>
</table>
</form>
<?php
function checkpseudo($pseudo)
{
if($pseudo == '') return 'empty';
else if(strlen($pseudo) < 3) return 'tooshort';
else if(strlen($pseudo) > 32) return 'toolong';

else
{
$result = sqlquery("SELECT COUNT(*) AS nbr FROM membres WHERE membre_pseudo = '".mysql_real_escape_string($pseudo)."'", 1);
global $queries;
$queries++;

if($result['nbr'] > 0) return 'exists';
else return 'ok';
}
}
?>
<?php

$_SESSION['erreurs'] = 0;

//Pseudo
if(isset($_POST['pseudo']))
{
$pseudo = trim($_POST['pseudo']);
$pseudo_result = checkpseudo($pseudo);
if($pseudo_result == 'tooshort')
{
$_SESSION['pseudo_info'] = '<span class="erreur">Le pseudo '.htmlspecialchars($pseudo, ENT_QUOTES).' est trop court, vous devez en choisir un plus long (minimum 3 caractères).</span><br/>';
$_SESSION['form_pseudo'] = '';
$_SESSION['erreurs']++;
}

else if($pseudo_result == 'toolong')
{
$_SESSION['pseudo_info'] = '<span class="erreur">Le pseudo '.htmlspecialchars($pseudo, ENT_QUOTES).' est trop long, vous devez en choisir un plus court (maximum 32 caractères).</span><br/>';
$_SESSION['form_pseudo'] = '';
$_SESSION['erreurs']++;
}

else if($pseudo_result == 'exists')
{
$_SESSION['pseudo_info'] = '<span class="erreur">Le pseudo '.htmlspecialchars($pseudo, ENT_QUOTES).' est déjà pris, choisissez-en un autre.</span><br/>';
$_SESSION['form_pseudo'] = '';
$_SESSION['erreurs']++;
}

else if($pseudo_result == 'ok')
{
$_SESSION['pseudo_info'] = 'ok';
$_SESSION['form_pseudo'] = $pseudo;
}

else if($pseudo_result == 'empty')
{
$_SESSION['pseudo_info'] = '<span class="erreur">Vous n\'avez pas entré de pseudo.</span><br/>';
$_SESSION['form_pseudo'] = '';
$_SESSION['erreurs']++;
}
}
if($_SESSION['erreurs'] == 0)
{
$insertion = "INSERT INTO membres VALUES($pseudo)";
}
if($_SESSION['erreurs'] > 0)
{
echo $_SESSION['pseudo_info'];
}
?>
</body>

C'est le meme code que le site du zero juste que j'aimerai l'écrire autrement pour avoir plus facile a comprendre !
J'aimerai savoir si quelqu'un voix une erreur ou pas ? J'ai fait tres simple me suis pas pris la tete je veux juste un résultat simple et efficace par la suite je vais le modifier pour le rendre plus ergonomique si je peux le dire comme ça !
Merci a vous, bonne journée a tous !



2 réponses

Messages postés
1094
Date d'inscription
vendredi 23 février 2007
Statut
Membre
Dernière intervention
27 mars 2012
153
Bonjour,

ne manquerait-il pas l'exécution de la requête ?

if($_SESSION['erreurs'] == 0)
{
$insertion = "INSERT INTO membres VALUES($pseudo)";
}


Adns
Si désoler je viens de rajouter ceci :
Mais ca ne marche toujours pas... Il y a encore des erreurs dans mon code ? Je vais revoir le cours PHP/Mysql sur le site du zero pour me remettre un peu dans le bain en attendant des nouvells =)
Merci a toi adns !!!

if($_SESSION['erreurs'] == 0)
{
$query = ("insert into membres(membre_pseudo) values('$pseudo')");
if($connexion->exec($query)){
$success = true;
print 'Enregistrement effectué!';
}else{
die('Erreur');
}
}
C'est bon j'ai réussis =)