PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 09-02-2020 23:38:05

Softarg
Membre
Inscription : 09-02-2020
Messages : 1

Problème de passage de PHP5.6 à 7

Bonjour,
je suis ravie d'arriver sur ce forum. Merci d'avance de votre aide.
Je viens d'être obligée de passer mon serveur chez OVH de 5.6 à 7.
J'ai un site qui fonctionnait bien, mais je commence seulement à comprendre les changements à faire.
J'ai résolu plusieurs choses, mais là je bloque depuis 2 heures.

Les codes ci-dessous permettre d'insérer dans la DB une adresse email pour l'inscription à la newsletter après avoir rempli un formulaire qui apparait en pop-up.

Voici les codes du formulaire :


<a style="background-color:#f3be1b;color:white;font-weight:900px;padding:10px;margin-left:30%;display:inline-block;" href="#" id="click">S'inscrire</a>
  <div id="advert-once">
            <form action="verif_inscription_nl" method="post">
                <h2>Je veux savoir quand un nouveau magazine est disponible</h2>
                    <input name="courriel" required placeholder="Mon adresse email" name="email">
                    <input type="submit" name="subscribe" value="M'inscrire">
            </form>
            <div class="advert-button">X</div>
       </div>
<!-- This example will store the session storage variable advertOnce in your browser. This will not store any information other than a true value and will be removed when you close the browser -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="js/main2.js"></script>
 

En php5.6, le système fonctionnait.
J'ai changé ma connexion en mysqli et fait les requêtes avec les termes qui me semblent adaptés.
Cependant rien n'y fait.
Pouvez-vous jeter un petit coup d’œil et me dire là ou je me trompe.


<?php
$servername = 'xxx';
$username = 'xxx';
$password = 'xxx';
$db = 'xxx';
$link = mysqli_connect($servername, $username, $password,$db);
mysqli_set_charset($link, "utf8");
if (!$link) {
   die("Connection failed: " . mysqli_connect_error());
}
 
// Si le courriel n'est pas renseigné on retourne à l'index
  if(!isset($_POST['courriel'])){
    echo '<script language="javascript" type="text/javascript">window.location="index.php"</script>';
// sinon si le courriel est au bon format on se connecte à bdd
  }elseif (eregi("^[a-zA-Z0-9]+[._a-zA-Z0-9-]*@[a-zA-Z0-9]+[_a-zA-Z0-9-]*\.[a-zA-Z]{2,}$",$_POST['courriel']))
  {
    $requete_sql = 'SELECT COUNT(*) FROM membre_newsletter WHERE courriel=\'' . $_POST['courriel'] . '\'';
    $resultat = $link->query($requete_sql);
    $lesdonnees =  mysqli_fetch_assoc($resultat);
    if($lesdonnees['COUNT(*)'] == 1){
      $message ='Attention ! Cette adresse E-mail est déjà inscrite.';
      echo '<script language="javascript" type="text/javascript">alert("' . $message . '"); window.location="index.php";</script>';
  }else{
//sinon on insere l'adresse courriel dans bdd
      $nombre = mt_rand(1,9999999999999999);
      $requete_sql='INSERT INTO membre_newsletter VALUES (\'\',\'' . $_POST['courriel'] . '\',\'0\',\'' . md5($nombre) . '\',\'' . date("Y-m-d") .'\')';
      $resultat = $link->query($requete_sql);
       //message pop up d'attente de validation
      $message ='Merci de votre confiance.';
//retour direct vers la page d'accueil du site
      echo '<script language="javascript" type="text/javascript">alert("' . $message . '"); window.location="index.php";</script>';
    }
  }else{
    $message ='Attention ! L\'adresse E-mail n\'est pas valide.';
    echo '<script language="javascript" type="text/javascript">alert("' . $message . '"); window.location="index.php";</script>';
  }
 
?>
 

Merci d'avance.

Hors ligne

Pied de page des forums