Page 1 sur 1

L4adresse courriel de l'utilisateur ne s'inscrit pas dans l'une des tables MySQL

Posté : 09 nov. 2021, 00:24
par clickern
Bonsoir,

voici la section du code PHP qui pose problème :
  if($sn == 1)
      {
        $q=mysqli_query($con,"INSERT INTO history VALUES('$email','$eid' ,'0','0','0','0',NOW())")or die('Error');
      }
      $q=mysqli_query($con,"SELECT * FROM history WHERE eid='$eid' AND email='$email' ")or die('Error115');
      while($row=mysqli_fetch_array($q) )
      {
        $s=$row['score'];
        $r=$row['sahi'];
      }
      $r++;
      $s=$s+$sahi;
      $q=mysqli_query($con,"UPDATE `history` SET `score`=$s,`level`=$sn,`sahi`=$r, date= NOW()  WHERE  email = '$email' AND eid = '$eid'")or die('Error124');
    } 
Toutes les informations ($eid , $s , $r) sont inscrites par requête dans la table 'history', exception est faite de $email.
Pourtant les données de l'adresse 'email' sont établies dans le code avec ceci : $email=$row['email'];

Comment est-ce possible ?

Merci a tous ))

Re: L4adresse courriel de l'utilisateur ne s'inscrit pas dans l'une des tables MySQL

Posté : 09 nov. 2021, 00:35
par or 1
c'est possible si ce code :
$email=$row['email'];
n'est pas exécuté avant ce bout de code ou si $row['email'] ne contient pas l'email.

Re: L4adresse courriel de l'utilisateur ne s'inscrit pas dans l'une des tables MySQL

Posté : 09 nov. 2021, 01:34
par clickern
c'est possible si ce code :
$email=$row['email'];
n'est pas exécuté avant ce bout de code ou si $row['email'] ne contient pas l'email.
Ou peut-être encore que : $email=$row['email']; n'est pas placé au bon endroit..

pourquoi la placer en tout début de page est inefficace ?
<?php
  include_once 'database.php';
  session_start();
  $email=$_SESSION['email'];
  $email=$row['email'];

Re: L4adresse courriel de l'utilisateur ne s'inscrit pas dans l'une des tables MySQL

Posté : 09 nov. 2021, 13:14
par or 1
$email=$_SESSION['email'];
$email=$row['email'];

que fait la première ligne ?
que fait la seconde ligne ?

Re: L4adresse courriel de l'utilisateur ne s'inscrit pas dans l'une des tables MySQL

Posté : 09 nov. 2021, 17:45
par clickern
La première ligne vérifie que l'individu est connecté afin d'autoriser la publication de la page.

La seconde ligne permet de donner la valeur contenue dans le courriel de l'utilisateur dans la constante $email