Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 16-09-2008 15:28:04

larenzu
Membre
Date d'inscription: 04-03-2008
Messages: 77

faire un count()

Bonjour à tous ,

j'ai une question toute conne mais je n y arrive pas .

Lorsqu'on passe par la methode fetchAll on fait ca :

$vue = $breve->fetchAll();
$this->view->breves=$vue->count();

Ca ca marche.

MAintenant je voudrai faire pareil quand je passe par :

$db = new mysqli('localhost', 'root' ,'', 'capanet');
$query = $db->query("SELECT * FROM intervention Where type_matos like '%ecran%' ");

je voudrai faire un truc du genre pour connaitre le nombre de champs retourné :
$query->count() mais j'ai une erreur  :

Fatal error: Call to undefined method mysqli_result::count()

avez vous une idée ?

Hors ligne

 

#2 16-09-2008 16:22:41

alien7
Membre
Date d'inscription: 29-04-2007
Messages: 447

Re: faire un count()

Et un count($query) ne marche pas ?


ZF 2.3 - Twitter Bootstrap 3.2
Local: Ubuntu  -> Apache2 2.4 - MariaDB 10 - PHP 5.6

Hors ligne

 

#3 16-09-2008 16:24:11

larenzu
Membre
Date d'inscription: 04-03-2008
Messages: 77

Re: faire un count()

non sad

Hors ligne

 

#4 16-09-2008 16:49:06

NewSky
Membre
Date d'inscription: 17-12-2007
Messages: 79

Re: faire un count()

Ben aprioris, tu utilises directement mysqli native de php non ?
Donc, en regardant la doc (je n'ai jamais utilisé mysqli), on trouve la méthode mysqli->field_count avec l'exemple suivant :

Code:

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "test");

$mysqli->query( "DROP TABLE IF EXISTS friends");
$mysqli->query( "CREATE TABLE friends (id int, name varchar(20))");

$mysqli->query( "INSERT INTO friends VALUES (1,'Hartmut'), (2, 'Ulf')");


$mysqli->real_query($HTTP_POST_VARS['query']);

if ($mysqli->field_count) {
    /* Une requête SELECT, SHOW ou DESCRIBE */
    $result = $mysqli->store_result();

    /* Récupération du jeu de résultats */
    $row = $result->fetch_row();

    /* Libération du jeu de résultats */
    $result->close();
}

/* Fermeture de la connexion */
$mysqli->close();
?>

Est-ce que ça t'aide ?

Hors ligne

 

#5 16-09-2008 17:28:02

Julien
Membre
Date d'inscription: 16-03-2007
Messages: 501

Re: faire un count()

Tout est question d'objets :
query() retourne un statement
Zend_Db connecté sous Mysqli , le statement est un mysqli_result
mysqli_result n'implémente pas countable
donc tu appelles une méthode qui n'existe pas sur cet objet ...

Soit tu utilises la solution données juste au dessus, soit tu t'embettes à implémenter countable dans une couche plus haut niveau

Hors ligne

 

#6 17-09-2008 08:57:13

larenzu
Membre
Date d'inscription: 04-03-2008
Messages: 77

Re: faire un count()

Bon merci je vais essayer de me debrouiller

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages