PHP|Débutant :: Forums

Advertisement

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

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

#1 13-05-2019 08:52:04

codeur21
Membre
Inscription : 06-01-2014
Messages : 64

passage a mysqli Warning

Bonjour

en passant de mysql a mysqli pour php7 j'ai ce warning dans un premier code (sous wamp je le précise) :

Warning: mysqli_close() expects parameter 1 to be mysqli, null given in C:\.....

$lk = connection_BD();

  if ($cat_id)
  {
    // Récupère les infos de la catégorie pour les metatags
    $sql_infos = "SELECT cat_name,texte FROM $T_categories WHERE id = '$cat_id' ";
    $res_infos = send_sql($sql_infos,"trouver les infos de cette catégorie");
    $res_infos = mysql_fetch_array($res_infos,MYSQL_ASSOC);
  };
 
  // On récupère les mots-clef en provenance de Google ;o)
  if (isset( $PMA_infos['kw_google'] ))
  {
    if ( preg_match( "!^http://[^/]+\.google\.[^/]+/search.+q=([^&]+)!i", $_SERVER['HTTP_REFERER'], $ref ) ) {
      $mots = utf8_decode( urldecode($ref[1]) );
      put_keyw( $mots, '1' );
    };
  };
 
mysql_close($lk);


puis cet autre Warning dans ce code :

Warning: mysqli_error() expects exactly 1 parameter, 0 given in C:\

function send_sql($sql,$message)
//envoi la requete $sql a la base et affiche un message si il y a eu un probleme sinon on rend le resultat
{
  if(!$res = @mysqli_query($sql))
  {
    $message_erreur = "<font color=\"#ff0000\">\n";
    $message_erreur .= "Impossible d'effectuer la requête pour $message\n";
    $message_erreur .= "<br /><br />\n";
//    $message_erreur .= "Voici la requête : \n<br />\n";
//    $message_erreur .= "$sql\n";
//    $message_erreur .= "<br /><br />\n";
    $message_erreur .= "Voici le message d'erreur renvoyé par la base de données :\n<br />\n";
    die("$message_erreur".mysqli_errno()." : ".mysqli_error()."</font>\n");
  }
  return $res;

Merci pour votre aide


Tu donnes du poisson a un homme tu le nourris pour un jour ,
tu l'apprends à pêcher tu le nourris toute sa vie

Hors ligne

#2 13-05-2019 18:42:09

tof73
Membre
Inscription : 21-12-2014
Messages : 156
Site Web

Re : passage a mysqli Warning

il faut lire la doc :
https://www.php.net/manual/fr/mysqli.close.php

Warning: mysqli_close() expects parameter 1 to be mysqli, null given in C:\.....
mysql_close($lk);
la warning ne parle donc pas de cette ligne.

encore la doc :
https://php.net/manual/fr/mysqli.errno.php
https://www.php.net/manual/fr/mysqli.error.php

Hors ligne

#3 13-05-2019 20:41:13

codeur21
Membre
Inscription : 06-01-2014
Messages : 64

Re : passage a mysqli Warning

Salut tof73

Avant de poster j'étais passer voir le manuel sur php.net mais là j'avoue être dépassé je n'y comprends plus rien .

C'est pour celà que je demande de l'aide pour comprendre quel parametres je doit mettre et ou est l'erreur


Tu donnes du poisson a un homme tu le nourris pour un jour ,
tu l'apprends à pêcher tu le nourris toute sa vie

Hors ligne

#4 14-05-2019 00:28:08

KOogar
Membre
Lieu : PHP
Inscription : 09-05-2009
Messages : 38
Site Web

Re : passage a mysqli Warning

Pas simple car tu ne nous indiques pas les lignes d'erreur

A mon avis l'erreur vient de MYSQL_ASSOC qui n'a rien a faire la, obsolète

remplace
$res_infos = mysql_fetch_array($res_infos,MYSQL_ASSOC);
par
$res_infos = mysql_fetch_array($res_infos);

Hors ligne

#5 14-05-2019 08:48:44

codeur21
Membre
Inscription : 06-01-2014
Messages : 64

Re : passage a mysqli Warning

Salut K0ogar

les lignes d'ereur sont pour le premier fichier la ligne :  mysql_close($lk);
pour le second fichier la ligne : die("$message_erreur".mysqli_errno()." : ".mysqli_error()."</font>\n");


Tu donnes du poisson a un homme tu le nourris pour un jour ,
tu l'apprends à pêcher tu le nourris toute sa vie

Hors ligne

#6 14-05-2019 18:00:38

KOogar
Membre
Lieu : PHP
Inscription : 09-05-2009
Messages : 38
Site Web

Re : passage a mysqli Warning

Hormis le warning, la requête fonctionne t-elle ?  mysqli_errno ne fonctionne pas avec toutes les connexions mysqli, as-tu vérifier d'avoir la bonne dans ta fonction connection_BD ?

Hors ligne

#7 14-05-2019 18:50:27

codeur21
Membre
Inscription : 06-01-2014
Messages : 64

Re : passage a mysqli Warning

le message d'erreur ne s'affiche pas


Tu donnes du poisson a un homme tu le nourris pour un jour ,
tu l'apprends à pêcher tu le nourris toute sa vie

Hors ligne

#8 15-05-2019 17:23:00

KOogar
Membre
Lieu : PHP
Inscription : 09-05-2009
Messages : 38
Site Web

Re : passage a mysqli Warning

codeur21 a écrit :

le message d'erreur ne s'affiche pas

La je ne te suis pas du tout, tu n'as pas répondu a mes précédentes questions. La requête fonctionne t-elle ?

Hors ligne

Pied de page des forums