Maison >base de données >tutoriel mysql >Utilisez la fonction mysql_fetch_object() pour obtenir une ligne dans le jeu de résultats en tant qu'objet (méthode PHP 5 pour exploiter la base de données MySQL)

Utilisez la fonction mysql_fetch_object() pour obtenir une ligne dans le jeu de résultats en tant qu'objet (méthode PHP 5 pour exploiter la base de données MySQL)

黄舟
黄舟original
2017-04-20 13:47:383403parcourir

Utilisez la fonction mysql_fetch_object() pour obtenir une ligne dans le jeu de résultats en tant qu'objet (Méthode 5 de PHP exploitant la base de données MySQL)

Utilisez la fonction mysql_fetch_object () pour obtenir également la différence La sélection des données dans l'ensemble de résultats est similaire à la fonction introduite dans l'article précédent. Apprenons la différence dans l'utilisation de ces deux fonctions à travers différentes méthodes dans le même exemple.

Dans l'article précédent "Utilisez mysql_fetch_array() pour obtenir des informations dans le jeu de résultats du tableau (Méthode 4 pour PHP pour faire fonctionner la base de données MySQL) " nous avons introduit la fonction mysql_fetch_array() pour obtenir le ensemble de résultats. Nous continuons donc aujourd’hui à introduire la fonction mysql_fetch_object() pour obtenir l’ensemble de résultats.

Nous examinons d'abord le format de syntaxe de cette fonction comme suit :

object mysql_fetch_object(resource result)

Remarque :

Cette extension était obsolète dans PHP 5.5.0 et a été supprimée dans PHP 7.0.0. Au lieu de cela, l'extension mysqli ou pdo_mysql doit être utilisée. Consultez le MySQL : Guide de l'API de sélection et la FAQ associée pour plus d'informations.

La fonction mysql_fetch_object() est similaire à la fonction mysql_fetch_array(), avec une différence. La première renvoie un objet au lieu d'un tableau. Cette fonction accède au tableau uniquement via le nom du champ. format suivant pour l'obtenir. La valeur de l'élément de la ligne dans le jeu de résultats.

$row->col_name  //col_name为列名,$row代表结果集

Par exemple, si vous récupérez les valeurs id et name d'une table de données, vous pouvez utiliser $row->id et $row->name pour accéder aux valeurs des éléments dans la rangée.

Remarque :

Les champs renvoyés par cette fonction sont également sensibles à la casse. Il s'agit du problème le plus facilement négligé pour les débutants. programmation d'apprentissage.

L'exemple suivant utilise la fonction mysql_fetch_object() pour obtenir les informations sur les données dans l'ensemble de résultats, puis utilise l'instruction echo pour afficher le livre correspondant au champ de l'ensemble de résultats sous la forme de Informations « ensemble de résultats->nom de la colonne ».

Les étapes spécifiques sont les suivantes :

1. Créez une page dynamique PHP, nommez-la index.php, ajoutez un formulaire, une zone de texte et un bouton de soumission à index.php. le code spécifique est le suivant :

<html>
<body>
    <!--上传文件表单-->
    <form method="post" action="" name = form1>
        <table>
           <tr>
               <td width="605" height="51" bgcolor="#CC99FF">
                   <p align="center">请输入查询内容
                       <input type="text" name="txt_book" id="txt_book" size="25"> 
                       <input type="submit" name="Submit" value="查询">
                   </p>
               </td>
           </tr>
            </table>
        </form>
</body>
</html>

2. Connectez-vous au serveur de base de données MySQL, sélectionnez la base de données php_cn et définissez le format d'encodage de la base de données sur GB2312. Le code spécifique est le suivant :

<?php
header("Content-Type:text/html; charset=utf-8");
$link = mysql_connect("localhost","root","root")or die("连接数据库失败".mysql_error());
mysql_select_db("php_cn",$link);
mysql_query("set names gb2312");   //设置编码,防止发生乱发
?>

3. Utilisez la fonction mysql_fetch_object() pour obtenir les données dans l'ensemble de résultats de la requête :

<?php
header("Content-Type:text/html; charset=utf-8");
$sql = mysql_query("select from tb_book");       //执行查询语句
$info = mysql_fetch_object($sql);                 //获取查询结果,返回值为数组
if($_POST[&#39;Submit&#39;]=="查询"){                    // 判断按钮的值是否为查询
    $txt_book = $_POST[&#39;txt_book&#39;];              //获取文本框提交的值
    $sql = mysql_query("select * from tb_book where bookname like &#39;%".trim($txt_book)."%&#39;");  //执行模糊查询
    $info = mysql_fetch_array($sql);             // 获取查询结果
}
?>

4. Utilisez l'instruction de boucle do.. .while, la méthode "colonne de résultat-> nom de colonne" génère les informations graphiques dans le jeu de résultats, le code est le suivant :

<?php
do {      //do...while 循环
    ?>
    <table>
        <tr align="left" bgcolor="#FFFFFF">
            <td height="20" align="center"><?php echo $info->id; ?></td>
            <td height="20" align="center"><?php echo $info->bookname; ?></td>
            <td height="20" align="center"><?php echo $info->data; ?></td>
            <td height="20" align="center"><?php echo $info->price; ?></td>
            <td height="20" align="center"><?php echo $info->maker; ?></td>
            <td height="20" align="center"><?php echo $info->publisher; ?></td>
        </tr>
    </table>
    <?php
}while($info = mysql_fetch_object($sql));
?>

Le résultat de sortie est :

Utilisez la fonction mysql_fetch_object() pour obtenir une ligne dans le jeu de résultats en tant quobjet (méthode PHP 5 pour exploiter la base de données MySQL)

Cette fonction est introduite ici. Dans le prochain article, nous présenterons une autre fonction, qui consiste à obtenir chaque enregistrement dans l'ensemble de résultats ligne par ligne. "Utilisation de la fonction mysql_fetch_row() pour obtenir l'ensemble de résultats ligne par ligne. Chaque enregistrement (Méthode 6 de PHP exploitant la base de données MySQL) 》 !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn