Propblème de connexion avec php/mysql

Fermé
Abdl85 Messages postés 18 Date d'inscription jeudi 28 novembre 2019 Statut Membre Dernière intervention 31 mai 2022 - 28 mai 2022 à 11:20
jordane45 Messages postés 38346 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 décembre 2024 - 31 mai 2022 à 20:26
Bonjour à tous, chers amis experts en programmation.

S'il vous plait j'ai un petit problème avec mon site. D'abord en tant que débutant en programmation, je veux savoir quelque chose sur PHP/MYSQL. Je voulais créer un site de membre.

J'ai réussi à faire la section d'inscription et de connexion des membres. Sauf que là une fois qu'un membre est connecté à son compte, il n'arrive pas ajouter de nouvelles données sur la base de données.

Donc j'aimerais savoir s'il y a la différence entre le code d'avant la connexion et pendant la connexion. Je veux dire le "INSERT" qu'on écrit pour l'inscription est-il différent de celui qu'on écrit une fois que la personne est connecté à son compte.

Car j'ai écris la même chose pour l'utilisateur ajoute de nouvelle chose sur son compte mais ça ne marche pas. Merci pour d'avance pour votre aide.
A voir également:

3 réponses

jordane45 Messages postés 38346 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 décembre 2024 4 717
28 mai 2022 à 11:59
Bonjour
Il faudrait nous montrer le code en question...

Pense à utiliser les balises de code
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

.
0
Abdl85 Messages postés 18 Date d'inscription jeudi 28 novembre 2019 Statut Membre Dernière intervention 31 mai 2022
29 mai 2022 à 20:26
Merci pour votre aide.
0
Abdl85 Messages postés 18 Date d'inscription jeudi 28 novembre 2019 Statut Membre Dernière intervention 31 mai 2022
31 mai 2022 à 19:44
// la connexion des utilisateurs à leur compte
<?php
session_start();
if(!isset($_SESSION['username'])){
header('location:connexion.php');
}
?>
<!DOCTYPE html>
<html>
<head>
<tittle>Tableau de bord</tittle>
<meta name="viewport" content="width=device-width, initial-scale=1">
...
</head>
<body>
...
<?php
//vérification des variables
if(isset($_POST['submit'])){
$sitename = htmlspecialchars(stripslashes(trim($_POST['site'])));
$statut = htmlspecialchars(stripslashes(trim($_POST['statut'])));
$avis = htmlspecialchars(stripslashes(trim($_POST['avis'])));

$s = "select * FROM comment where site = '$sitename'";

$result = mysqli_query($con, $s);

//Nouvel insertion à la base de donnée
$num = mysqli_num_rows($result);
if($num == 1){
$erreur = "<p>Ce site existe déjà!</p>";
}else{
$reg= "INSERT INTO accounts(site , statut , avis) values ('$sitename' , '$statut' ,'$avis')";
mysqli_query($con , $reg);
$erreur = "<p>Votre Avis est créé avec succès!</p>";
}
}
?>

//formulaire d'envoi
<diV class="container" style="padding-bottom: 35px;">
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">

<label for="site" class="w3-left">Nom du site:</label>
<input type="text" id="site" name="site" placeholder="nom du site..." style="width: 100%;margin: 8px 0;padding: 12px 20px;box-sizing: border-box;" required>

<label for="statut" class="w3-left">Statut:</label>
<input type="text" id="statut" name="statut" placeholder="Votre Statut..." style="width: 100%;margin: 8px 0;padding: 12px 20px;box-sizing: border-box;" required>

<label for="avis" class="w3-left">Votre Avis:</label>
<textarea type="text" id="avis" name="avis" placeholder="Votre Avis sur ce Site..." style="width: 100%;margin: 8px 0;padding: 12px 20px;box-sizing: border-box;" required></textarea>

<input type="submit" name="submit" value="Envoyer" class="w3-black w3-hover-blue" style="padding: 12px 20px;border: none;border-radius: 4px;cursor: pointer;width: 100%;">

<?php if (isset($erreur)) echo '<br /><br />',$erreur;?>
</form>

</diV><br>
</body>
</html>
0
jordane45 Messages postés 38346 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 décembre 2024 4 717
31 mai 2022 à 20:26
Bonsoir,

Tu dois, dans ton code, ajouter une gestion d'erreur au niveau de tes requêtes.
Par exemple, pour ta requête INSERT, moi je ferai :

// Perform a query, check for error
$reg= "INSERT INTO accounts(site , statut , avis) values ('$sitename' , '$statut' ,'$avis')";
if (!mysqli_query($con,$reg)) {
  echo("Error description: " . mysqli_error($con));
}


Je te conseille également de déplacer le maximum de code php AVANT le code HTML.
Le traitement du formulaire par exemple, n'a pas besoin de se trouver dans le html...
ça rendra ton code plus propre et plus facile à maintenir à l'avenir plutôt que de le noyer inutilement au milieu du html de ta page.
0