fonction mysql_result ou autre
Bonjour,
J'ai écrit le bout de code suivant:
Code:
1 2 3 4 5 6 7 8 9
|
$requete_nombre_agences = 'SELECT COUNT (DISTINCT (agence_id)) FROM bureaux WHERE clients_au_pair=2 AND pays_id="'.$country.'"';
$resultat_nombre_agences = mysql_query($requete_nombre_agences);
$nombre_agences = mysql_result($resultat_nombre_agences,0);
echo 'country: '.$country.'<br />';
echo '$requete_nombre_agences: '.$requete_nombre_agences.'<br />';
echo '$resultat_nombre_agences: '.$resultat_nombre_agences.'<br />';
echo '$nombre_agences: '.$nombre_agences; |
Cela me génère le résultat suivant:
Code:
1 2 3 4 5
|
country: AUS
$requete_nombre_agences: SELECT COUNT (DISTINCT (agence_id)) FROM bureaux WHERE clients_au_pair=2 AND pays_id="AUS"
$resultat_nombre_agences:
$nombre_agences: |
Le problème est que je ne comprends pas pourquoi la 3ème et 4ème ligne de l'affichage sont vides (pas de valeur pour $resultat_nombre_agences et pour $nombre_agences).
Si je vais dans phpmyadmin et que je lance la requête sql affichée, j'obtiens "1" car il y a 1 enregistrement dans ma table "bureaux" qui ait à la fois le champs "pays_id" égal à "AUS" et le champs "clients_au_pair" égal à 2.
Normalement selon moi la 4ème ligne devrait afficher:
$nombre_agences: 1
mais ce n'est pas le cas.
Si quelqu'un peut m'expliquer pourquoi, cela me rendrait bien service.
Merci!
PS: Structure de ma table bureaux pour info bien que cela ne soit pas le problème vu que la requete sql fonctionne dans phpmyadmin...
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
--
-- Structure de la table `bureaux`
--
CREATE TABLE `bureaux` (
`id_bureaux` int(10) unsigned NOT NULL auto_increment,
`agence_id` int(10) NOT NULL,
`adresse1` varchar(50) collate utf8_unicode_ci NOT NULL,
`adresse2` varchar(50) collate utf8_unicode_ci default NULL,
`code_postal` varchar(10) collate utf8_unicode_ci default NULL,
`ville` varchar(50) collate utf8_unicode_ci NOT NULL,
`pays_id` varchar(3) collate utf8_unicode_ci NOT NULL,
`tel` varchar(30) collate utf8_unicode_ci NOT NULL,
`fax` varchar(30) collate utf8_unicode_ci default NULL,
`email` varchar(50) collate utf8_unicode_ci default NULL,
`clients_au_pair` tinyint(1) NOT NULL,
`clients_famille` tinyint(1) NOT NULL,
PRIMARY KEY (`id_bureaux`),
UNIQUE KEY `tel` (`tel`)
) ENGINE=MyISAM AUTO_INCREMENT=1113 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1113 ;
--
-- Contenu de la table `bureaux`
--
INSERT INTO `bureaux` VALUES (1092, 1092, 'P.O. Box 1166', NULL, '2037', 'Glebe NSW', 'AUS', '+61 (0)2 9571 61', NULL, 'info@australia.com.au', 2, 2); |
PPS: Le problème pourrait venir du fait que la connexion à la base de données ne se fait pas mais j'ai bien vérifié, ma connexion à la base de données fonctionne correctement et d'autres requêtes sur cette même page faisant appel à la base de données fonctionnent nickel.