[PHP] Vérifier existence d'un champs recordse

Bonjour

J'ai un script php qui interroge une base access en utilisant ADO. Tout fonctionne a merveille sauf pour la dernière fonction que j'essaie d'utiliser. Je dois vérifier si la valeur du champs de mon recordset existe bien.

Voici le code de la requete :
 $strSQL = "SELECT * FROM Table WHERE champs1 = $id AND champs2 = #$date#";
 $rs = $conn->execute($strSQL);
 $toto = $rs->Fields(0);


La requete s'effectue bien, mais parfois, et c'est normal, $rs->Fields(0) ne contient pas de valeur. Du coup quand j'affiche $toto j'obtient : Object ID #..

Que faire pour s'assurer que le champs contient une valeur?

Merci d'avance pour vos réponses.

Cordialement.

Sheraf

--
Sheraf
Configuration: IIS 5
PHP 5.1.4
MySQL
Access 2000

3 réponses

  1. Bjr

    j'utilise jamais ADO cependant il paraît logique de faire

    $rs = $conn->execute($strSQL);
    if ($rs)
    {
     $toto = $rs->Fields(0);
    }
    else echo "vide";


    1. Salut,

      Merci pour ta réponse.

      J'ai essayé les if ($rs), empty et autres isset, ca ne change rien. Car bien qu'il m'affiche Object ID, lorsque je fais un calcul en utilisant ce fameux $rs->Fields(0), il fait comme si la valeur du champs était égale à zéro. Pourtant j'ai aussi essayé if ($rs == 0).

      J'imagine qu'il doit y avoir une façon spécifique de travailler sur ces enregistrement, mais je ne la connaît pas.

      Encore merci.

      Cdlt.
      1. Essai

        $rs = $conn->execute($strSQL);
        if ($rs)
        {
          if (!$rs->EOF)
          { 
            $toto = $rs->Fields(0);
          }
          else echo "Vide";
        
        }
        else echo "Erreur";


        Ca doit fonctionner : en tout cas c'est ce qu'ils disent sur

        http://phplens.com/phpeverywhere/adodb_french