Page 1 sur 2

Copie de base de donnée; résultat message erreur

Posté : 11 févr. 2006, 17:32
par Harris
Salut à tous,

J'ai déjà un site avec BdD + un autre sans base, alors je viens de faire une deuxième base complètement identique à la première pour mon 2° site et lorsque je me connecte avec ce 2° site j'ai un message

Code : Tout sélectionner

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/webmotor/public_html/index.php on line 73
et

Code : Tout sélectionner

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/webmotor/public_html/index.php on line 101
et

Code : Tout sélectionner

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/webmotor/public_html/menu.php on line 135
En fait il y a une erreur à toute ses lignes mais je ne sais pas les réparer.
Il y a les erreurs aux endroits des requettes

Merci pour les réponses des forts en PHP

haris

Posté : 11 févr. 2006, 17:43
par charabia
Des morceaux de code ne seraient pas de refus pour t'aider ;)

Posté : 11 févr. 2006, 18:04
par Harris
Des morceaux de code ne seraient pas de refus pour t'aider ;)
Merci Eléphant pour ton aide.
Le premier code de ma page d'index: du message d'erreur

Code : Tout sélectionner

$query="SELECT * FROM gest_news ORDER by date DESC LIMIT 2"; $result=mysql_query($query); while($tab=mysql_fetch_array($result)){
Le deuxième code de la page d'index: du message d'erreur

Code : Tout sélectionner

$table="gest_articles"; $query_articles="SELECT * FROM $table WHERE affaire='true' ORDER BY rand() LIMIT 4"; $result_articles=mysql_query($query_articles); while($tab_articles=mysql_fetch_array($result_articles)){ $title = remove_accents($tab_articles[4]); ?> <table width="100%" border="0" cellspacing="5" cellpadding="0">
En fait il n'y a pas de relation avec la base.
Ce ne sont que les erreurs de la page d'index, il y a une erreur à chaque requette mais le message est le même

Posté : 11 févr. 2006, 18:20
par mafio
$table="gest_articles";
$query_articles="SELECT * FROM $table WHERE affaire='true' ORDER BY rand() LIMIT 4";
$result_articles=mysql_query($query_articles) or die (mysql_error());
                     
while($tab_articles=mysql_fetch_assoc($result_articles)){
            $title = remove_accents($tab_articles[4]); ?>
                <table width="100%"  border="0" cellspacing="5" cellpadding="0">
Test sa et di nous se que ca donne

Posté : 11 févr. 2006, 18:31
par Harris
$table="gest_articles";
$query_articles="SELECT * FROM $table WHERE affaire='true' ORDER BY rand() LIMIT 4";
$result_articles=mysql_query($query_articles) or die (mysql_error());
                     
while($tab_articles=mysql_fetch_assoc($result_articles)){
            $title = remove_accents($tab_articles[4]); ?>
                <table width="100%"  border="0" cellspacing="5" cellpadding="0">
Test sa et di nous se que ca donne
Il y a du mieux, maintanant j'ai traduit le message d'erreur:

Code : Tout sélectionner

Le Tableau 'webmotor_base.gest_articles'n'existe pas
Il existe bien la table nomée "gest_articles"

Il ne la trouve pas comme toutes les tables

Posté : 11 févr. 2006, 18:48
par mafio
Revoi ton fichier config je pense

enfin ta connexion, a la base de donné

Posté : 11 févr. 2006, 18:51
par HD
Des morceaux de code ne seraient pas de refus pour t'aider ;)
Merci Eléphant pour ton aide.
:shock: trop lol !
bon je vous laisse bosser en paix :oops:

Posté : 11 févr. 2006, 19:10
par Harris
Revoi ton fichier config je pense

enfin ta connexion, a la base de donné
c'est clair que ce n'est pas bon pourtant je renseigne bien les champs dans mon fichier MySQL, je te joints les codes de ce fichier

Code : Tout sélectionner

<? //----------------------------------------------------------------------- // WWW.4FEELING.COM WEBAGENCY //----------------------------------------------------------------------- // Nom du Fichier : MySQL.php //----------------------------------------------------------------------- // Description /Fonction : Gerer la base de données MySQL // //----------------------------------------------------------------------- //-------------------------------------------------------------------------- // Connexion a la base MySQL //-------------------------------------------------------------------------- function SQLConnect() { global $connexion; global $mysqlDb; $mysqlUser="webmotor_wms"; // Utilisateur MySQL $mysqlPwd="admin"; // Password MySQL $mysqlHost="localhost"; // Host $mysqlDb="webmotor_base"; // MySQL Base //distant /*$mysqlUser="webmotor_wms"; // Utilisateur MySQL $mysqlPwd="admin"; // Password MySQL $mysqlHost="localhost"; // Host $mysqlDb="webmotor_base"; */ // MySQL Base $connexion = mysql_connect($mysqlHost, $mysqlUser, $mysqlPwd) or die ("Connexion impossible"); mysql_select_db($mysqlDb, $connexion); //Connexion a la base } //-------------------------------------------------------------------------- // Envoi d'une requete //-------------------------------------------------------------------------- function SQLSendRocket($requete) { global $connexion; global $sql; $sql=mysql_query($requete, $connexion); //envoi de la requete } ?>
Ma base s'appelle webmotor_base, l'utilisateur est webmotor_wms et le password est admin.

Que dois-je faire de plus, y a t'il des champs que je n'ai pas renseigné?

Posté : 11 févr. 2006, 19:59
par mafio
            $connexion = mysql_connect($mysqlHost, $mysqlUser, $mysqlPwd) or die ("Connexion impossible");
         mysql_select_db($mysqlDb);      //Connexion a la base
        } 
Essaye sa , moi c'est comme sa que je marche

Posté : 11 févr. 2006, 20:03
par didgar
Salut !

Chez moi, le code ci-dessous fonctionne :
<?php
//               Connexion a la base MySQL
//--------------------------------------------------------------------------
function SQLConnect()
      {

         
         $mysqlUser="root";          // Utilisateur MySQL
         $mysqlPwd="";          // Password MySQL
         $mysqlHost="localhost";    // Host
         $mysqlDb="ma_base";          // MySQL Base

   
            $connexion = mysql_connect($mysqlHost, $mysqlUser, $mysqlPwd) or die ("Connexion impossible");
         mysql_select_db($mysqlDb, $connexion);      //Connexion a la base
         
         return $connexion;
        }
      
//--------------------------------------------------------------------------
//               Envoi d'une requete
//--------------------------------------------------------------------------
function SQLSendRocket($requete,$connexion)
      {
         
         $sql=mysql_query($requete, $connexion); //envoi de la requete
         while($rec = mysql_fetch_assoc($sql))
         {
         	$tab_result[] = $rec;
         }
         return($tab_result);
       }
        
        
$connexion = SQLConnect();        
echo $connexion;

$requete = "SELECT * FROM ma_table";

$tab_result = SQLSendRocket($requete,$connexion);

echo '<pre>';
print_r($tab_result);
echo '<pre>';
?>

J'ai écarté l'histoire des global $connexion etc ... j'aime pas trop ces trucs la moi. J'espère que ça t'aide.

A+

Didier

[edit]

Mon code, c'est du brut de décoffrage ! La gestion des erreurs peut et même doit être améliorée !!!

[/edit]

Posté : 11 févr. 2006, 20:11
par Harris
            $connexion = mysql_connect($mysqlHost, $mysqlUser, $mysqlPwd) or die ("Connexion impossible");
         mysql_select_db($mysqlDb);      //Connexion a la base
        } 
Essaye sa , moi c'est comme sa que je marche
:evil: Toujours rien, je ne me connecte pas à la base :twisted:
c'est HARD

Posté : 11 févr. 2006, 20:13
par Harris
Salut !

Chez moi, le code ci-dessous fonctionne :
<?php
//               Connexion a la base MySQL
//--------------------------------------------------------------------------
function SQLConnect()
      {

         
         $mysqlUser="root";          // Utilisateur MySQL
         $mysqlPwd="";          // Password MySQL
         $mysqlHost="localhost";    // Host
         $mysqlDb="ma_base";          // MySQL Base

   
            $connexion = mysql_connect($mysqlHost, $mysqlUser, $mysqlPwd) or die ("Connexion impossible");
         mysql_select_db($mysqlDb, $connexion);      //Connexion a la base
         
         return $connexion;
        }
      
//--------------------------------------------------------------------------
//               Envoi d'une requete
//--------------------------------------------------------------------------
function SQLSendRocket($requete,$connexion)
      {
         
         $sql=mysql_query($requete, $connexion); //envoi de la requete
         while($rec = mysql_fetch_assoc($sql))
         {
         	$tab_result[] = $rec;
         }
         return($tab_result);
       }
        
        
$connexion = SQLConnect();        
echo $connexion;

$requete = "SELECT * FROM ma_table";

$tab_result = SQLSendRocket($requete,$connexion);

echo '<pre>';
print_r($tab_result);
echo '<pre>';
?>

J'ai écarté l'histoire des global $connexion etc ... j'aime pas trop ces trucs la moi. J'espère que ça t'aide.

A+

Didier

[edit]

Mon code, c'est du brut de décoffrage ! La gestion des erreurs peut et même doit être améliorée !!!

[/edit]
Merci Didier mais c'est pareil, je ne me connecte pas à la base alors que je suis sur de son nom de son nom d'utilisateur et de son password;
Mais ou je fais la boulette???????? :twisted:

Posté : 11 févr. 2006, 20:18
par didgar
Merci Didier mais c'est pareil, je ne me connecte pas à la base alors que je suis sur de son nom de son nom d'utilisateur et de son password;
Mais ou je fais la boulette???????? :twisted:
Dans le code que je t'ai donné, il y a :
$connexion = SQLConnect();        
echo $connexion;
Est-ce quelque chose s'affiche ??

Si non, quel est le message d'erreur ?

Autre question, désolé si elle te parait stupide ;-)

La seconde base ( clone de la première si j'ai bien pigé ) est bien sur le même serveur que le second site ??

A+

Didier

Posté : 11 févr. 2006, 20:26
par Harris
Merci Didier mais c'est pareil, je ne me connecte pas à la base alors que je suis sur de son nom de son nom d'utilisateur et de son password;
Mais ou je fais la boulette???????? :twisted:
Dans le code que je t'ai donné, il y a :
$connexion = SQLConnect();        
echo $connexion;
Est-ce quelque chose s'affiche ??

Si non, quel est le message d'erreur ?

Autre question, désolé si elle te parait stupide ;-)

La seconde base ( clone de la première si j'ai bien pigé ) est bien sur le même serveur que le second site ??

A+

Didier
Oui un message d'erreur en dehors eu dessus de la page d'index qui dit

Code : Tout sélectionner

Resource id #3 Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home/webmotor/public_html/PWAdmin/MySQL.php on line 27
Pour répondre à ta 2° question, non je ne suis pas sur le même seveur et pas chez le même hébergeur et pas le même nom de domaine :roll:

Posté : 11 févr. 2006, 20:35
par didgar
Oui un message d'erreur en dehors eu dessus de la page d'index qui dit

Code : Tout sélectionner

Resource id #3 Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home/webmotor/public_html/PWAdmin/MySQL.php on line 27
Je me trompe peut-être mais, si Resource id #3 est indiqué, ça veut dire que la connexion est établie, non ?
Pour répondre à ta 2° question, non je ne suis pas sur le même seveur et pas chez le même hébergeur et pas le même nom de domaine :roll:
Pas tout compris ;-)

Donc tu as ton site hébergé chez X, ta base de donnée chez Y. Le pb c'est que Y n'autorise peut-être que l'interrogation de base de données que par des scripts hébergés chez lui. Chuis pas sur d'être clair la !

A+

Didier