Passage PHP 7.4

Jacki -  
jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   -

Bonjour,

j'ai un petit code qui me permet de vider une table d'une BDD. Depuis le passage en version 7.4 PHP il ne fonctionne plus :

<?php include ($_SERVER['DOCUMENT_ROOT'].'mysql_connect.php');
 $sql ='DELETE from `table-a-vider`';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
mysql_close();
?>

Auriez vous une idée de ce qui pose probleme ?

Merci.


Windows / Firefox 102.0

3 réponses

  1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
     

    Bonjour,

    Tu dois remplacer toutes les instructions mysql_*    par PDO ou MYSQLI.

    L'extension mysql_* étant devenue obsolète...


    1
  2. Jacki
     

    Merci beaucoup. Cela refonctionne. Cependant j'ai une erreur : Erreur SQL !DELETE from *

    0
    1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
       

      Tu dois nous montrer le code modifié ainsi que le message d'erreur complet.

      0
  3. Jacki
     

    Le code modifié :

    <?php include ($_SERVER['DOCUMENT_ROOT'].'mysql_connect.php');
     $sql ='DELETE from `table-a-vider`';
    mysqli_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysqli_error());
    mysqli_close();
    ?>

    L'erreur :

    Erreur SQL !DELETE from `table-a-vider`

    Merci.

    0
    1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
       

      Tu es sûr du nom de la table ? "table-a-vider" ?

      Et puis.. je suis étonné que le message d'erreur ne contienne que ça .. en même temps .. ton instruction mysqli_error est incomplète...

      Modifie ton code par ceci

      <?php 
      require_once ($_SERVER['DOCUMENT_ROOT'].'mysql_connect.php');
       
      $sql ='DELETE FROM `table-a-vider`';
      if (!mysqli_query($link, $sql)) {
         echo "Erreur :" . $sql . "<br>" . mysqli_error($link));
         exit();
      }

      Bien entendu .. pour ton fichier de connexion.. lui aussi il faut corriger le code et le transformer en mysqli .

      par exemple :

      <?php
      $link= mysqli_connect("localhost","my_user","my_password","my_db");
      
      // Check connection
      if (mysqli_connect_errno()) {
        echo "Failed to connect to MySQL: " . mysqli_connect_error();
        exit();
      }
      ?>
      0