Problème de code
Résolu
oakthunder
Messages postés
31
Statut
Membre
-
oakthunder Messages postés 31 Statut Membre -
oakthunder Messages postés 31 Statut Membre -
Bonjour, je possède un site web qui fonctionnait bien mais ma page d'inscription a un problème. Les données ne sont pas enregistrées dans la bdd, les utilisateurs ne sont donc pas redirigés sur une autre page.
Pouvez-vous m'aider ?!?
Merci
voici le code :
<?php
require('config.php');
if (isset($_REQUEST['username'], $_REQUEST['email'], $_REQUEST['password'], $_REQUEST['tel'], $_REQUEST['sexe'])){
// récupérer le nom d'utilisateur et supprimer les antislashes ajoutés par le formulaire
$username = stripslashes($_REQUEST['username']);
$username = mysqli_real_escape_string($conn, $username);
// récupérer l'email et supprimer les antislashes ajoutés par le formulaire
$email = stripslashes($_REQUEST['email']);
$email = mysqli_real_escape_string($conn, $email);
// récupérer le mot de passe et supprimer les antislashes ajoutés par le formulaire
$password = stripslashes($_REQUEST['password']);
$password = mysqli_real_escape_string($conn, $password);
$sexe = stripslashes($_REQUEST['sexe']);
$sexe = mysqli_real_escape_string($conn, $sexe);
$tel = stripslashes($_REQUEST['tel']);
$tel = mysqli_real_escape_string($conn, $tel);
$cle = rand(1000000, 9999999);
$select = mysqli_query($conn, "SELECT * FROM users WHERE username = '".$_POST['username']."'");
$select2 = mysqli_query($conn, "SELECT * FROM users WHERE email = '".$_POST['email']."'");
if(mysqli_num_rows($select)) {
$errorRedirect = 'pseudo';
}else{
if(mysqli_num_rows($select2)) {
$errorRedirect = 'mail';
}else{
$query = "INSERT into `users` (username, email, type, password, confirme, cle, sexe, tel)
VALUES ('$username', '$email', 'user', '".hash('sha256', $password)."', '1', '$cle', '$sexe', '$tel')";
$res = mysqli_query($conn, $query);
if($res){
$query2 = "INSERT into `actif` (username, actif)
VALUES ('$username', '0')";
$res2 = mysqli_query($conn, $query2);
if($res2){
header("Location: register-suite.php?cle=".$cle);
}
}
}
}
}
if($errorRedirect === 'pseudo') {
header("Location: register-error.php?error=pseudo&username=$username&mail=$email&password=$password&cle=$cle&sexe=$sexe&tel=$tel");
}
else if($errorRedirect === 'mail') {
header("Location: register-error.php?error=mail&username=$username&mail=$email&password=$password&cle=$cle&sexe=$sexe&tel=$tel");
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<title></title>
<meta property="og:title" content="" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta charset="utf-8" />
<meta property="twitter:card" content="summary_large_image" />
<style data-tag="reset-style-sheet">
html { line-height: 1.15;}body { margin: 0;}* { box-sizing: border-box; border-width: 0; border-style: solid;}p,li,ul,pre,div,h1,h2,h3,h4,h5,h6,figure,blockquote,figcaption { margin: 0; padding: 0;}button { background-color: transparent;}button,input,optgroup,select,textarea { font-family: inherit; font-size: 100%; line-height: 1.15; margin: 0;}button,select { text-transform: none;}button,[type="button"],[type="reset"],[type="submit"] { -webkit-appearance: button;}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner { border-style: none; padding: 0;}button:-moz-focus,[type="button"]:-moz-focus,[type="reset"]:-moz-focus,[type="submit"]:-moz-focus { outline: 1px dotted ButtonText;}a { color: inherit; text-decoration: inherit;}input { padding: 2px 4px;}img { display: block;}html { scroll-behavior: smooth }
</style>
<style data-tag="default-style-sheet">
html {
font-family: Open Sans;
font-size: 1rem;
}
body {
font-weight: 400;
font-style:normal;
text-decoration: none;
text-transform: none;
letter-spacing: normal;
line-height: 1.625;
color: var(--dl-color-secondary-400);
background-color: var(--dl-color-gray-white);
}
</style>
<link
rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Open+Sans%3Aital%2Cwght%400%2C300%3B0%2C400%3B0%2C600%3B0%2C700%3B0%2C800%3B1%2C300%3B1%2C400%3B1%2C600%3B1%2C700%3B1%2C800&%3Bdisplay=swap"
data-tag="font"
/>
<style>
html * {
-webkit-font-smoothing: antialiased;
}
input::placeholder, textarea::placeholder {
color: #d2d6da;
}
</style>
<link rel="stylesheet" href="./style.css" />
</head>
<body>
<div>
<link href="./profile.css" rel="stylesheet" />
<link href="./home.css" rel="stylesheet" />
<div class="profile-container">
<?php include('menu.php'); ?>
<div class="profile-contact">
<div class="profile-container09">
<div class="profile-form">
<h2 class="profile-text18 HeadingOne"><span>Connexion!</span></h2>
<span class="profile-text20 Lead">
Bienvenue !
</span>
<form class="profile-form1" action="" method="post">
<label class="profile-text21 Label">Nom d'utilisateur</label>
<input
type="text" name="username" required
placeholder="username" value="<?php echo $_GET['username']; ?>"
class="profile-textinput Small input"
/>
<label class="profile-text21 Label">Adresse mail</label>
<input
type="email" name="email" required
placeholder="email" value="<?php echo $_GET['mail']; ?>"
class="profile-textinput Small input"
/>
<label class="profile-text21 Label">Numéro de téléphone</label>
<input
type="tel" name="tel" required
placeholder="téléphone" value="<?php echo $_GET['tel']; ?>"
class="profile-textinput Small input"
/>
<label class="profile-text22 Label">Mot de passe</label>
<input
type="password" name="password" required
placeholder="mot de passe" value="<?php echo $_GET['password']; ?>"
class="profile-textinput1 Small input"
/>
<label class="profile-text22 Label">Sexe</label>
<div class="">
<select class="profile-textinput1 Small input" name="sexe" id="sexe" required >
<option value="">Votre sexe</option>
<option value="homme">homme</option>
<option value="femme">femme</option>
<option value="non binaire">non binaire</option>
</select>
</div>
<label class="profile-text22 Label">Conditions d'utilisation</label>
<p><input
type="checkbox" required
class=""
/> En vous inscrivant, vous accepter les <a href="privacy.php" target="_blank"><i>conditions d'utilisations</i></a></p>
<div class="profile-container10">
<div class="profile-container11">
<div class="primary-blue-button-container">
<button type="submit"
class="primary-blue-button-button button ButtonSmall"
>
<span>S'inscrire</span>
</button>
</div>
</div>
</div>
</form>
</div>
<div class="profile-info">
<div class="profile-container12">
<h3 class="HeadingTwo">
<span>Informations</span>
<span>pour l'inscription</span>
</h3>
<span class="profile-text27">
Remplissez le formulaire pour vous inscrire. Une fois inscris vous devrez attendre l'autorisation de l'administrateur pour avoir accès au site. <br>Merci de votre compréhension.
</span>
<div class="profile-container13">
<div class="profile-container15">
</div>
</div>
</div>
<div class="profile-container18"></div>
</div>
</div>
</div>
<footer class="footer-footer">
<div class="footer-container">
<div class="footer-container1">
<span>Copyright © 2023 by Oakthunder</span>
</div>
<div class="footer-container4">
<span class="footer-text07 Large">Login</span>
<span class="footer-text08 Large">Register</span>
<span class="footer-text09 Large">About</span>
</div>
</div>
<img
alt="image"
src="public/playground_assets/waves-white.svg"
class="footer-image"
/>
</footer>
</div>
</div>
<script src="https://unpkg.com/@teleporthq/teleport-custom-scripts"></script>
</body>
</html>
Windows / Chrome 112.0.0.0
A voir également:
- Problème de code
- Code ascii - Guide
- Code puk bloqué - Guide
- Code de déverrouillage oublié - Guide
- Code activation windows 10 - Guide
- Code blocks - Télécharger - Langages
3 réponses
yg_be
Messages postés
24281
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 585
bonjour,
que fait ton code si il y a une erreur avec la requête INSERT exécutée en ligne 33?
Bonjour,
Commence par ajouter une gestion d'erreur au niveau de tes requêtes.
par exemple
$query = "INSERT into `users` (username, email, type, password, confirme, cle, sexe, tel)
VALUES ('$username', '$email', 'user', '".hash('sha256', $password)."', '1', '$cle', '$sexe', '$tel')";
$res = mysqli_query($conn, $query);
if(!$res){
echo "<br>Erreur dans la requête SQL " . mysqli_error($conn);
echo "<br>La requête :<br>" . $query ;
exit;
}