RECHERCHER :
COMMUNAUTE MP
Identifiez vous ...
Devenir Membre
J'ai oublié mon MDP
DOMAINE MP
Bavardages
Langages Généraux
Langages Web
Langages DotNet
Autres langages
Dev. Jeux Video
Sécurité
Sys. Exploitation
Graphismes
Logiciels
Réseaux
Bases de données
Méthodologies
Emplois High-tech
Aide juridique
Articles juridiques
FORUM
Index des forums
Ajouter un sujet
Rechercher sujet
Contact Responsable
Devenir modérateur
CHAT MP IRC
Votre pseudo ...
Srv: irc.moteurprog.com
Chan: #MoteurProg
PARTICIPER
Plus de 3500 emplois.
Rechercher un job
Déposez votre CV
Emplois High-tech

Visiteur MP

 objet dans classe ...

Forum : PHP - BDD
Sous Catégorie : BDD
Type du sujet : Sujet Normale
FAQ : FAQ PHP - BDD

SUIVI DES SUJETS PAR MAIL

SUIVI PAR MAIL INACTIF

RESOLUTION DU SUJET SUJET RESOLU
BLOQUAGE DU SUJET SUJET ACTIF
APPARTENANCE A LA FAQ N'APPARTIENT PAS A LA FAQ


PAGE : [1]

POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

FORUM PHP - BDD

PREMIERE PAGE

PAGE PRECEDENTE

Page précedente

Page suivante

PAGE SUIVANTE

DERNIERE PAGE
PowOx
Membre du club
Avatar de PowOx
Inscrit : 22/08/2004
Messages : 494
Message
#62088
Posté le 30/04/05 à 11:08
Salut,

j'ai un soucis dans un code, et je ne vois pas où je fais une erreur ...


include('includes/mysql.inc.php'); /* inclus mes params + création d'un objet de type cClass qui va regrouper toutes mes requetes */ $contact= new cContactsPro($_POST['nomContact'],$_POST['prenomContact'],$_POST['adresseContact']); /* là je crée un objet cContactPro qui hérite de cContact */ /* maintenant je fais un test sql en dehors de cContact pour voir si ça marche : */ $baseMySQL->mysql_requete("insert into tbl_contacts (contactId) values('')",$baseMySQL->nombre_requete()); /* et ça marche ... */ /* et maintenant je tente une requete depuis la classe cContact : */ $contact->putMySQL(); /* et voici la méthode */ protected function putMySQL() { $tempsCourant=time(); $baseMySQL->mysql_requete("INSERT INTO tbl_contact (contactId,userId,contactNom,contactPrenom,contactAdresse,contactDateEntree) VALUES('','$_SESSION[user_id]','$this->nom','$this->prenom','$this->adresse','$tempsCourant')",$baseMySQL->nombre_requete); }


bien évidemment, le requete normale fonctionne, et celle dans mon cContact me renvoie ça : Fatal error: Call to a member function mysql_requete() on a non-object in

quelqu'un à une idée ??


Merci,
PowOx

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Publicité
Inscrit : X
Messages : X
Message
#Aucun

HAUT DE PAGE

  

Gabacho
Membre du club
Avatar de Gabacho
Inscrit : 19/07/2004
Messages : 438
Message
#62095
Posté le 30/04/05 à 11:26
Bon dernièrement j'ai eu droit à mon lot de "non-object".

En fait ca v eut dire que tu fais appel à qqchose qui ne renvoit rien. Il doit y avoir une variable que tu appelle et dont tu n'as pas testé lme résultat (un isset suffit).
Il se peut que ce soit le résultat d'une requete qui soit vide et que tu souhaite utiliser ensuite.

Bon ça c'est la réponse rapide, maintenant je vais voir si par hasard je tombe dessus dans ton code (que je n'ai pas encore regardé Smiley )
__________________________
Gabacho

S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (les Shadocks)

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

PowOx
Membre du club
Avatar de PowOx
Inscrit : 22/08/2004
Messages : 494
Message
#62097
Posté le 30/04/05 à 11:35
un peu de précision :


voici des extraits de mes pages :


ajouterContacts.php :
[code]
$contact= new cContactsPro($_POST['nomContact'],$_POST['prenomContact'],$_POST['adresseContact']);

echo $baseMySQL;
$contact->putMySQL();

[/code]

class.cContacts.php :
[code]
function putMySQL()
{
$tempsCourant=time();
echo 'test : '.$baseMySQL;
$baseMySQL->mysql_requete("INSERT INTO tbl_contact (contactId,userId,contactNom,contactPrenom,contactAdresse,contactDateEntree) VALUES('','$_SESSION[user_id]','','','','')",$baseMySQL->nombre_requete);
}[/code]

class.mysql.php :

[code] function __tostring()
{
return "Cette classe permet d'établir une connexion mysql.<br />";
}[/code]

et voila ce que ça renvois :

[quote]Cette classe permet d'établir une connexion mysql.
test :
Fatal error: Call to a member function mysql_requete() on a non-object in d:\perso\pti\leSite\agenda\includes\class.cContacts.php on line 51[/quote]

En théorie un INSERT renvois TRUE si c'est ok et FALSE/RIEN si pas OK, ça pourrais être ce que tu dis quand tu parle de quelque chose qui ne renvois rien.

Dans ma méthode putMySQL je tente un affiche de l'utilité de la classe mysql (echo $baseMySQL) mais ça ne m'affiche rien, alors que dans le fichier principale ça marche.

ma classe mysql étant chargé dans le ajouterContact et ma classe contact aussi, je supose qu'ils devraient se voir non ?

PowOx

ERREUR BBCODE SUR CE MESSAGE :
- La valeur de la balise "quote" n'est pas correcte !

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

windu
Membre du club
Avatar de windu
Inscrit : 08/07/2004
Messages : 691
Message
#62101
Posté le 30/04/05 à 11:56
salut powox,

Je crois avoir touvé ton pb:
la variable $baseMySQL est censé etre un objet vu que c'est elle qui appelle la fonction-membre $baseMySQL()!
Hors, dans tes fonctions tu marques ceci:
[quote]
$baseMySQL->mysql_requete("...");
[/quote]
Mais il faudrait plutot marquer comme ceci:
[quote]
$this->baseMySQL->mysql_requete("...");
[/quote]
car sinon la variable $baseMySQL est considérée comme interne a la fonction et non comme un objet venant d'ailleurs (classe parente, autre fonction-membres...)

ou encore marquer:
[/quote]
Mais il faudrait plutot marquer comme ceci:
[quote]
$GLOBALS['baseMySQL']->mysql_requete("...");
[/quote]
si ton objet est totalement extérieur a ta classe
__________________________
[url=http://www.forum.moteurprog.com/?url=FAQ.php&langage=PHP]FAQ PHP[/url]
[img]http://www.firefox.fr/boutons/getfirefox_large2.png[/img]

ERREUR BBCODE SUR CE MESSAGE :
- La valeur de la balise "quote" n'est pas correcte !

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

PowOx
Membre du club
Avatar de PowOx
Inscrit : 22/08/2004
Messages : 494
Message
#62106
Posté le 30/04/05 à 12:17
En effet, avec GLOBALS ça marche trés bien,
j'avais pensais à SESSION qui se rapproche, mais bizarement ça marche pas franchement ... puis GLOBALS c'est bien aussi Smiley

Merci a vous :)

PowOx

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 
POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

PREMIERE PAGE

PAGE PRECEDENTE Page précédente

Page suivante

PAGE SUIVANTE DERNIERE PAGE

FORUM PHP - BDD



    PAGE : [1]



.: Site Web développé par Julien Pichot et l'équipe MPWG avec www.evolvia-web.com :.