CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

probleme de programmation en php

nicolasdu45500
nicolasdu45500
Niveau 1
12 octobre 2014 à 19:21:21

Bonjour à tous ,
Il y a peu , je me suis lancer dans un projet de création d'un site web avec possibilité de connexion et d'inscription ,
en suivant des cours sur une vidéo de YouTube. :P
Tout ce passaient bien jusqu'au moment ou le site devait signaler à l'utilisateur les erreurs des champs mal rempli .
Quand je réinitialise la page d'inscription des erreurs incompréhensibles apparaissent . #-o
De peur d’aggraver la chose je vous demande de l'aide.
Merci de votre collaboration. :mrgreen:
Nicolas.

<?php
//connexion à la base de données
mysql_connect('localhost','root','')or die('error');
mysql_select_db('rs')or die('Bdd introuvable');
mysql_query('SET NAMES utf8');

//function qui va se charger d'inscrire l'utilisateur

function inscrire_utilisateur($pseudo,$password,$email,$sex
e,$sittuation,$apropos)

{
$password=sha1($password);
mysql_query("INSERT INTO utilisateurs(id,pseudo,password,email,sexe,situati
on,apropos)

VALUES(','$pseudo','$password','$email','$sexe','$
situation','$apropos','

'")or die(mysql_error());
}
?>

<?php
include('functions.php');
$page = htmlentities($_GET['page']);

$pages = scandir('pages');

if(!empty($page)&& in_array($_GET['page'].".php",$pages))

$content = 'pages/'.$_GET['page'].".php";

else{
header("Location:index.php?page=login");
}
?>
<!DOCTYPE html>
<html>
<head>
<link rel='stylesheet' href='css/style.css'>
</head>
<body>
<div id='content'>
<?php
include($content)
?>
</div>
</body>
</html>

<h1>inscription</h1>
<?php
if(isset($_POST['submit']))
{
$sexe = mysql_real_escape_string(htmlentities($_POST['sexe
']));

$pseudo = mysql_real_escape_string(htmlentities($_POST['pseu
do']));

$password = mysql_real_escape_string(htmlentities($_POST['pass
word']));

$repeatpassword = mysql_real_escape_string(htmlentities($_POST['repe
atpassword']));

$email = mysql_real_escape_string(htmlentities($_POST['emai
l']));

$apropos = mysql_real_escape_string(htmlentities($_POST['apro
pos']));

$situation = mysql_real_escape_string(htmlentities($_POST['situ
ation']));

}
if(empty($pseudo))
{
$errors[] = "veuillez saisir un pseudo";
}
if(empty($password))
{
$errors[] = "Veuillez saisir un password";
}
if($password !=$repeatpassword)
{
$errors[] = "Vos deux password doivent étre identiques";
}
if(!filter_var($email,FILTER_VALIDATE_EMAIL))
{
$errors[] ="Votre adresse email n'est pas corecte";
}
if(empty($apropos))
{
$errors[] = "Veuillez vous décrire en quelques ligne";
}
if(!empty($errors))
foreach($errors as $error)
{
echo "<div class='error'>".$error."</div>";
}else
inscrire_utilisateur($pseudo,$password,$email,$sex
e,$sittuation,$apropos)

?>
<form method='POST' action=>

<label for='sexe'>sexe</label>
<select name="sexe">
<?php echo isset($sexe)? '<option value='.$sexe.'>'.$sexe.'</option>':;?>
<?php echo $sexe != 'Homme'? '<option value="Homme">Homme</option> ':
;?>
<?php echo $sexe !='Femme'?'<option value="Femme">Femme</option>':'';?>
</select><br/><br/>
<label for='situation'>Situation</label>
<select name="situation">

<option value="Célibataire">Célibataire</option>
<option value="En couple">En couple</option>
<option value="Divorcé(e)">Divorcé(e)</option>
<option value="Garder secret">Garder secret</option>
<option value="Veuf(ve)">Veuf(ve)</option>
</select><br/><br/>

<label for="pseudo">Votre pseudo : </label>
<input type="text" name="pseudo"><br/>

<label for="password">Votre password : </label>
<input type="password" name="password"><br/>

<label for="repeatpassword">Repetez Votre password : </label>
<input type="password" name="repeatpassword"><br/>

<label for="email">Veuillez saisir votre email : </label>
<input type="text" name="email"><br/><br/>

<label for="apropos">A propos de vous </label>
<textarea rows="6" cols="30" name="apropos"></textarea> <br/> <br/>

<input type="submit" value="S'inscrire" name="submit">
</form>

*

{
padding:0;
margin:0;
}
body
{
background-image: url("http://francheska45.f.r.pic.centerblog.net/0d
b76a87.gif");

font-family:arial;
}
#content
{
width:960px;
backgroud-color:#FFF;
margin:50x auto;
text-align:center;
border-radius:10px;
-webkit-border-radius:10px;
-moz-border-radius:10px;
position:relative;
}
#cotent h1
{
text-decoration:underline;
padding-bottom:30px
}
#content form label
{
display:block;
float:left;
width:200px;
position:absolute;
left:100px;
}
#content form input,textarea
{
border:1px solid #000;
border-radius:5px;
-webkit-border-radius:5px;
-moz-border-radius:5px;
width:200px;
margin:5px;
}
#content form input[type=submit]
{
width:100px;
backgroud-color:#000;
color:#000;
cursor:pointer;
}
#content error
{
color:red;
border-radius:5px;
-webkit-border-radius:5px;
-moz-border-radius:5px;
margin:2px auto;
width:300px;
background-color:#CCC;
}

nicolasdu45500
nicolasdu45500
Niveau 1
13 octobre 2014 à 11:01:31

OK merci de l'aide :p)

Pwote
Pwote
Niveau 7
13 octobre 2014 à 12:25:37

Pour éviter tout injections je te conseille d'utiliser la PDO http://php.developpez.com/faq/?page=pdo

Essaye de prendre des bonnes habitudes au début après c'est vraiment dur de s'en défaire.

Après je vois certains trucs genre $errors[] = "Veuillez vous décrire en quelques ligne"; qui ne veulent rien dire.
En gros tu attribut une chaine de caractère (Une phrase en gros) à un tableau sans préciser dans quel endroit du tableau tu veut le situer.
Je te conseille d'afficher directement dès que tu as une erreur ou bien faire un système du genre array[i] et à chaque fois que tu rajoute une phrase tu l'incrémente -> i = i + 1 (Tu peut aussi l'écrire i += 1 ça reviens au même).

Après ta fonction est un peu inutile vu que tu l'utilise q'une fois mais bon disons que ça rends le code plus propre pourquoi pas.

Après aussi pour ton émail mais ce n'est pas obligatoire tu peut l'écrire comme ça :
<input id="email" type="email">

Le type vérifira que l'utilisateur a rentrer un email valide et l'empechera de submit avant que l'email soit correcte mais attention il faut quand même vérifier avec le php que l'email est bien de la bonne forme (C'est plus pour rendre l'inscription plus agréable).

Voilà si t'as d'autres problèmes hésite pas :hap:

toupine
toupine
Niveau 32
14 octobre 2014 à 19:22:22

Pwote :d) Salut, je ne vois pas pourquoi cette ligne :
$errors[] = "Veuillez vous décrire en quelques ligne";

...ne voudrait rien dire. Pour ce qu'il souhaite faire (empiler les messages d'erreurs pour les afficher) je trouve que c'est le plus simple, pas besoin de spécifier un indice pour cela.

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment