problème avec ma classe
9 messages • Page 1 sur 1
Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics
problème avec ma classe
bonsoir
j'essais de créer une classe me permetant de pouvoir par la suite l'adapter à plusieurs cas!
Voilà
En inserant ce fichier mis a part j'aimerais donc pouvoir aller plus loin dans la requete mysql.
j'aimerais exploiter le résultat que j'ai dans $result mais j'ai droit a une erreur :
Fatal error: Call to undefined function: mysql_fetch_array() in c:\easyphp1-7\testphp\testpao\index.php on line 36
j'essais de créer une classe me permetant de pouvoir par la suite l'adapter à plusieurs cas!
Voilà
- Code: Tout sélectionner
unction requete ($requete)
{
// Exécution de la requête
$result = mysql_query ($requete, $this->connect);
// Vérification de la requête
if (!$result)
{
// Affichage du message d'erreur
echo "Erreur : Impossible d'effectuer la requête au serveur.";
exit;
}
else
{
// Initialisation de l'attribut de requête
$this->requete = $result;
}
}
En inserant ce fichier mis a part j'aimerais donc pouvoir aller plus loin dans la requete mysql.
- Code: Tout sélectionner
$result = $database->requete ("SELECT COUNT(*) AS ip_exist FROM staterror404 WHERE ip='" . $ip . "' AND urlRef='" . $http_referer . "' ");
$count = $database->mysql_fetch_array($result);
j'aimerais exploiter le résultat que j'ai dans $result mais j'ai droit a une erreur :
Fatal error: Call to undefined function: mysql_fetch_array() in c:\easyphp1-7\testphp\testpao\index.php on line 36
- petit-ourson
- WRInaute passionné

- Messages: 843
- Inscription: Lun Mai 31, 2004 15:19
La méthode mysql_fetch_array n'existe pas sur $database.
$count = mysql_fetch_array($database->requete);
Cela devrait fonctionner tout simplement.
Ta méthode requete() ne retourne rien, il n'y a pas de "return".
$count = mysql_fetch_array($database->requete);
Cela devrait fonctionner tout simplement.
Ta méthode requete() ne retourne rien, il n'y a pas de "return".
- Code: Tout sélectionner
function requete ($requete)
{
// Exécution de la requête
$result = @mysql_query ($requete, $this->connect);
// Vérification de la requête
if (!$result)
{
// Affichage du message d'erreur
exit("Erreur : Impossible d'effectuer la requête au serveur.");
}
else
{
// Initialisation de l'attribut de requête
return $this->requete = $result;
}
}
Mais je pense que sauvegade le résultat est inutile.
Je fais allusion à cela: $this->requete = $result;
alors j'ai ajouté le return dans la méthode function requete ($requete) comme indiqué!
Mais en executant la page, rien ne s'affiche, je comprends pas:
je devrais avoir le résulat de ma requete count qui devrait s'afficher...
Mais en executant la page, rien ne s'affiche, je comprends pas:
je devrais avoir le résulat de ma requete count qui devrait s'afficher...
- Code: Tout sélectionner
$result = $database->requete ("SELECT COUNT(*) AS ip_exist FROM staterror404 WHERE ip='" . $ip . "' AND urlRef='" . $http_referer . "' ");
$count = $database->mysql_fetch_array($result);
Remplace par:
- Code: Tout sélectionner
$result = $database->requete ("SELECT COUNT(*) AS ip_exist FROM staterror404 WHERE ip='" . $ip . "' AND urlRef='" . $http_referer . "' ");
$val_rq = $database->mysql_fetch_array($result);
$count = $val_rq['ip_exist'];
Ceci fonctionnera à condition que ta requête soit bonne.
Tu devrais acheter un bouquoin ou apprendre sur le net.
Sans base solide tu n'arrivera jamais à rien, et il n'y aura
pas toujours quelqu'un pour tout te faire.
EDIT:
Je suppose que $database->mysql_fetch_array($result);, est une fonction que tu à créé dans ta class. Sinon il est certain que ça ne fonctionnera pas.
Laisse tombé les class pour le moment et aprend la programmantion en ligne. Ce sera déjà un bon début.
en fait j'ai une classe mere sgbd et une classe fille mysqlsgbd
Voilà mais en faisant comme ceci ensuite ;
çà ne marche pas, rien ne s'affiche.
Sinon je m'interesse à la pao, je m'y connais assez en php pour faire le pas, malgrès que ce en soit pas si facile ;(
- Code: Tout sélectionner
class MySQL extends SGBD
{
// Méthode connect()
function connect ()
{
// Connection à MySQL
$connect = mysql_pconnect ($this->SGBD_host, $this->SGBD_login, $this->SGBD_password);
// Vérification de la connection
if (!$connect)
{
// Affichage du message d'erreur
echo "Erreur : Connection à MySQL impossible.";
exit;
}
// Connection à la base de données
if (!mysql_select_db ($this->SGBD_base, $connect))
{
// Affichage du message d'erreur
echo "Erreur : Connection à la base de données impossible.";
exit;
}
// Initialisation de l'attribut de connection
$this->connect = $connect;
}
// Méthode requete()
function requete ($requete)
{
// Exécution de la requête
$result = mysql_query ($requete, $this->connect);
// Vérification de la requête
if (!$result)
{
// Affichage du message d'erreur
echo "Erreur : Impossible d'effectuer la requête au serveur.";
exit;
}
else
{
// Initialisation de l'attribut de requête
$this->requete = $result;
}
}
// Méthode deconnect()
function deconnect ()
{
// Déconnection de la base de données
mysql_close ($this->connect);
}
}
?>
Voilà mais en faisant comme ceci ensuite ;
- Code: Tout sélectionner
$SQL = "MySQL";
$database = new $SQL('root', '', 'localhost', 'test');
$database->connect();
$result = $database->requete ("SELECT COUNT(*) AS ip_exist FROM staterror404 WHERE ip='" . $ip . "' AND urlRef='" . $http_referer . "' ");
$count = mysql_fetch_array($database->requete);
echo $count['ip_exist'];
çà ne marche pas, rien ne s'affiche.
Sinon je m'interesse à la pao, je m'y connais assez en php pour faire le pas, malgrès que ce en soit pas si facile ;(
voilà le code que j'ai sur ma page de test =W test.php
J'ai essayé de mettre un return mais çà change rien en fait
- Code: Tout sélectionner
include ("SGBD.class.php");
/* Initialisation de la variable du SGBD correspondant */
$SQL = "MySQL";
// Inclusion de la classe fille du SGBD correspondant
include ($SQL.".SGBD.class.php");
$database = new $SQL('root', '', 'localhost', 'test');
$ip = $_SERVER["REMOTE_ADDR"];
$http_referer = "http://127.0.0.1";
$http_request = $_SERVER["REQUEST_URI"];
$timestamp = time();
// Connection à la base de données
$database->connect();
$result = $database->requete ("SELECT COUNT(*) AS ip_exist FROM staterror404 WHERE ip='" . $ip . "' AND urlRef='" . $http_referer . "' ");
$count = mysql_fetch_array($database->requete);
echo $ip.'<br />';
echo $http_referer;
echo $count['ip_exist'];
// Déconnection de la base de données
$database->deconnect();
J'ai essayé de mettre un return mais çà change rien en fait
9 messages • Page 1 sur 1
Formation recommandée sur ce thème :
Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Comparer les classes C de 2 adresses IP
- Comment Google indexe et classe les documents
- Comment faire ignorer des zones de page pour Yahoo (robots-nocontent)
- Google Code Jam 2003
- Google compter lever entre 2 et 3 milliards de dollars
- Des informations sur l'algorithme de Yahoo Search fournies par Priyank Garg
- Référencement d'un forum phpBB
- Google lance Picasa en français
- Matt Cutts déclare la guerre au spamdexing en français (et autres langues)
- Changement d'algorithme Google : nom de code Dewey
- dernier de la classe
- je ne suis plus classé
- PR 1 classé avant PR 2 ?
- Il est tellement classe !
- Testeur de classe C et traceroute
- Whois - Google - Classe C
- Classe de gestion de calendrier PHP 5
- [Depôt de marque] Catégories d'une classe
- GreenPeace classe la high-tech
- Moins bien classé sur google.fr
- mal classé sous google
- meme classe d'hebergement > débat positionnement et PR
- Pb de mail PHP classé SPAM
- Mon hébergeur est en classe C
- backlink venant de site classé x ?!
- Analyse de la classe C (adresse IP)
Cet outil vous permet de vérifier si plusieurs sites sont hébergés sur la même classe C (adresse IP du serveur).
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité



le forum