Précédent   Forum des professionnels en informatique > PHP > Langage > Fonctions
Fonctions Forum d'entraide sur les fonctions PHP. Avant de poster -> FAQ fonctions et Sources diverses
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/12/2011, 16h16   #1
Candidat au titre de Membre du Club
 
Inscription : avril 2010
Messages : 136
Détails du profil
Informations forums :
Inscription : avril 2010
Messages : 136
Points : 14
Points : 14
Par défaut erreur fonction mysql_num_rows()

bonjour

voila, je me fait un mini moteur de recherche par mot
mais voila j'ai cette erreur ???

Warning: mysql_num_rows() expects parameter 1 to be resource, object given in C:\wamp\www\admin\recherche.php on line 24

voici mon code :
merci

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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
 
<?php
//----------------------- CONNEXION A LA BDD ------------------------
	include("test-recherche.php");
	echo'<hr/>';
	echo'<hr/>';
 
 
	include("../includes/sql_connect.php");
 
	if (isset($_POST['recherche']))
	{
	$recherche = $_POST['recherche'];
	$reponse = $bdd->query("SELECT *
						FROM clients
						WHERE societe
						LIKE '$recherche'
						ORDER BY societe
						ASC
						") or die(print_r($bdd->errorInfo())); //requete
 
		$nombre_resultats = mysql_num_rows($reponse); //comptage du nombre d'entrées sélectionnées par la recherche
 
		if ($nombre_resultats == 0) //s'il n'y a pas de résultat
		{
			echo 'pas de résultat pour cette recherche !';
		}
		else 
		{	
			while ($donnees = $reponse->fetch())
			{
				echo 'Nombre de résultats : ' . $nombre_resultats . ':<br /><br />'; //nombre de résultats
 
				echo $donnees['societe'].'<br /><hr />';
			}
		}
 
	}
	else 
	{	
		echo 'pas de résultat pour cette recherche !';
	}
 
 
?>
artichaudd est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/12/2011, 16h42   #2
Membre Expert
 
Inscription : septembre 2010
Messages : 1 245
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 1 245
Points : 1 569
Points : 1 569
Si tu utilises PDO il ne faut pas utiliser mysql_num_rows mais rowCount()
__________________
- Réalisations
- Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical.
ABCIWEB est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/12/2011, 17h59   #3
Candidat au titre de Membre du Club
 
Inscription : avril 2010
Messages : 136
Détails du profil
Informations forums :
Inscription : avril 2010
Messages : 136
Points : 14
Points : 14
ah bah oui!!!
au fait comment je fait pour savoir quelle fonction
utiliser ou pas avec pdo
par exemple une liste sur php.net ou autre?

merci beaucoup
bonne fete
artichaudd est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 23/12/2011, 18h06   #4
Expert Confirmé
 
Avatar de rawsrc
 
Homme Martin
Dev indep
Inscription : mars 2004
Messages : 1 462
Détails du profil
Informations personnelles :
Nom : Homme Martin
Âge : 35
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Dev indep

Informations forums :
Inscription : mars 2004
Messages : 1 462
Points : 2 552
Points : 2 552
Envoyer un message via Skype™ à rawsrc
Bonjour

Regardes ici
Quand tu fais $bdd->query(), fais-tu dans cette fonction un prepare() ou directement mysql_query()
__________________
# Dans la Création, tout est permis mais tout n'est pas utile...
rawsrc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/12/2011, 18h16   #5
Candidat au titre de Membre du Club
 
Inscription : avril 2010
Messages : 136
Détails du profil
Informations forums :
Inscription : avril 2010
Messages : 136
Points : 14
Points : 14
tu me dis
que si je fais $bdd->query(),
je dois faire dans cette fonction un prepare()
ou sinon je fais directement mysql_query()
c'est ca ?

sinon quand dois-je utiliser des fonctions pdo
ya a t'il une page qui les récences?
artichaudd est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/12/2011, 18h25   #6
Expert Confirmé
 
Avatar de rawsrc
 
Homme Martin
Dev indep
Inscription : mars 2004
Messages : 1 462
Détails du profil
Informations personnelles :
Nom : Homme Martin
Âge : 35
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Dev indep

Informations forums :
Inscription : mars 2004
Messages : 1 462
Points : 2 552
Points : 2 552
Envoyer un message via Skype™ à rawsrc
PDO est une couche d'abstraction pour les accès aux bases de données.
Dès que tu utilises une base de données, il faut se poser la question de l'utilisation de PDO. Généralement, c'est très pratique dans la mesure ou cela unifie la syntaxe des appels vers la base de données et pour ne rien gacher, PDO fournit des fonctions simplifiant la sécurisation des données.
Exemples pour différents appels :
Code :
1
2
3
4
MySql    : mysql_query($sql);
Postgres : pg_query($sql);
Avec PDO quelque soit la base de données tu feras : 
$stmt->query($sql);
__________________
# Dans la Création, tout est permis mais tout n'est pas utile...
rawsrc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2011, 19h22   #7
Membre Expert
 
Inscription : septembre 2010
Messages : 1 245
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 1 245
Points : 1 569
Points : 1 569
Citation:
Envoyé par artichaudd Voir le message
sinon quand dois-je utiliser des fonctions pdo
Oui comme le suggère rawsrc on utilise PDO ou les extension mysql ou mysqli et l'on garde la même méthode ensuite pour faire toutes ses requêtes (bien qu'il soit possible d'utiliser plusieurs méthodes dans un même script).

rawsrc t'a donné les principaux avantages à utiliser PDO.

Eventuellement tu peux utiliser mysqli mais il faut éviter d'utiliser mysql qui n'est plus en phase de développement.

Un petit récapitulatif sur les fonctionnalités et recommandations dans le tableau au bas de cette page.
__________________
- Réalisations
- Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical.
ABCIWEB est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h53.


 
 
 
 
Partenaires

Hébergement Web