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

Sheraf Messages postés 262 Statut Membre -  
PhP Messages postés 1774 Statut Membre -
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. PhP Messages postés 1774 Statut Membre 606
     
    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";


    0
  2. Sheraf Messages postés 262 Statut Membre 48
     
    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.
    0
  3. PhP Messages postés 1774 Statut Membre 606
     
    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

    0