recherche

Maison  >  Questions et réponses  >  le corps du texte

La connexion PHP et MySQL ne peut pas utiliser le problème d'extension MySQLi

$link=@mysqli_connect('localhost','root','root')|| die('Database connection error');

//Cette étape peut réaliser la connexion

$sql='set names utf8' ;

$result=mysqli_query($link,$sql);

var_dump($result);

//Cette étape ne peut pas utiliser l'extension mysqli, et un avertissement apparaît : Attention : mysqli_query() s'attend à ce que le paramètre 1 soit mysqli, booléen donné dans D:360DownloadsSoftwarephpStudyWWWlink.php en ligne 13
NULL

La version PHP est php-5.4.45, le fichier php.ini correspondant a également été modifié et ajouté, et se trouve dans phpinfo.php dans l'itsource base de données utilisée par mysqli

Deux tables, une pour les étudiants et une pour les classes, contiennent toutes deux deux éléments de données

mysql> sélectionnez * dans les classes ;

+------+---------- ---------+

| identifiant | nom de la classe |

+------+---------------+----- ---- --+

|NULL | php2019 |

| 2 | html520 |

+-------+----------+ ----- ----+

2 lignes dans l'ensemble (0,00 sec)


mysql> sélectionnez * de l'étudiant ;

+------+-------- ----+

| identifiant | nom d'utilisateur |

+------+---------+------+

| NULL | Zhang San | 24 |

| 2 |王五 | 20 |

+------+--------+------+

2 lignes dans set (0,00 sec)

Quelle est la cause ?

Super木Super木2064 Il y a quelques jours1451

répondre à tous(4)je répondrai

  • angryTom

    angryTom2019-07-15 14:36:46

    C'est peut-être un problème avec la version supérieure de php

    répondre
    0
  • 秋香姐家的小书童

    秋香姐家的小书童2019-03-31 11:28:39

    La première étape consiste à ouvrir le dossier dans lequel vous avez placé php et vous verrez un dossier appelé ext. Ce dossier stocke diverses extensions de php, y compris l'extension mysqli (vérifiez s'il y a un fichier php_mysqli.dll dans le dossier ext. Si Si vous ne l'avez pas, veuillez vous rendre sur le site officiel de php pour télécharger php). Si vous l'avez, utilisez un éditeur pour ouvrir php.ini dans le répertoire php (c'est le fichier de configuration de Php, qui est le php copié). .ini-development, puis renommez-le en php.ini) Ouvrez-le avec un éditeur et recherchez ;extension=php_mysqli.dll (un seul sera trouvé dans le fichier), puis supprimez le début (point-virgule) pour créer ; la prolongation est effective. (Si vous souhaitez ouvrir d'autres extensions, recherchez également ;extension=*** et supprimez le précédent ; (point-virgule) pour le rendre efficace) Attention ! ! ! ! ! ! ! S'il y a une extension php_mysqli.dll dans le dossier ext mais qu'elle est introuvable dans le fichier de configuration, php.ini ; extension=php_mysqli.dll peut être ajoutée manuellement (veillez à ne pas inclure de point-virgule). , téléchargez un nouveau php


    Après toutes les modifications de configuration, vous devez redémarrer Apache pour que la configuration prenne effet. La méthode pour redémarrer est Windows + R, puis entrez services, msc Recherchez le service Apache dans le contrôle et. redémarrez-le


    La deuxième étape consiste simplement à faire la première étape. Le nom du fichier de l'extension PHP est spécifié, et le chemin où se trouve le fichier d'extension n'est pas spécifié. Lorsque le chemin de l'extension a été spécifié dans extension_dir, vous pouvez omettre le chemin et renseigner uniquement le nom du fichier, sinon vous devez renseigner le chemin complet du fichier. Par conséquent, vous devez rechercher le texte extension_dir dans php.ini et trouver la ligne de configuration suivante.

    ;extension_dir = “ext"

    Annulez le ; (point-virgule) dans cette ligne de configuration et remplacez-le par le chemin de sauvegarde du fichier de l'extension php, comme suit :

    extension_dir = "e/web/php/ext"

    Enfin, vous pouvez écrire une fonction phpinfo() pour vérifier s'il existe un mysqli rallonge


    répondre
    0
  • Super木

    J'ai fait tout cela et je peux me connecter à la base de données, mais je ne peux toujours pas utiliser l'extension mysqli. À cette étape, mysqli_query($link,$sql); signale toujours un avertissement : mysqli_query() s'attend à ce que le paramètre 1 soit mysqli, booléen donné dans D:360DownloadsSoftwarephpStudyWWWlink.php à la ligne 13, ne peut pas être exécuté.

    Super木 · 2019-03-31 13:58:07
  • Annulerrépondre