problème pour lire ma base de données, PROBLEME REGLE ;)

problème pour lire ma base de données, PROBLEME REGLE ;) - PHP - Programmation

Marsh Posté le 21-02-2004 à 07:14:18    

CE PROBLEME VIENT D'ETRE REGLE !  Merci à tous  :pt1cable:  
 
Salut, Je me connecte à "sql.free.fr" avec mon login et mon pass, la connection à la base de données est bonne et l'erreur vient juste aprés :
 
ma page Web affiche :
Warning: mysql_query(): Access denied for user: 'belwork@212.27.40.154' (Using password: NO) in /var/www/free.fr/f/7/belwork/mutrade/joueurs.php on line 64
 
Voici la ligne incriminée :
$resultat=mysql_query("SELECT * FROM $nomdetable WHERE 1 LIMIT $debut, $fin" );


Message édité par dragonminus le 22-02-2004 à 05:54:52
Reply

Marsh Posté le 21-02-2004 à 07:14:18   

Reply

Marsh Posté le 21-02-2004 à 09:48:23    

access denied donc tu n'arrive pas à te connecter


---------------
« La boîte du logiciel disait que j'avais besoin de "Windows 95 ou mieux" - alors j'ai acheté un Mac. »
Reply

Marsh Posté le 21-02-2004 à 11:26:20    

Using password: NO
 
Y'a un problème là... ça m'étonnerait que chez free ils utilisent pas les passwords pour se connecter à la bdd
Balance ton code pour te connecter à la base...

Reply

Marsh Posté le 21-02-2004 à 12:41:56    

en même temps, en ce moment chez free, y'a de grosses merdes, sont en train de démenager ou une connerie du genre..... ca ne vient pas forcement de toi dragonminus


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 21-02-2004 à 21:18:17    

dragonminus a écrit :

Voici la ligne incriminée :
$resultat=mysql_query("SELECT * FROM $nomdetable WHERE 1 LIMIT $debut, $fin" );


Le problème vient de la connexion à la BDD, donc la requête qui foire, ça peut être que la première (donc on s'en fout un peu, c'est pas la requête le problème). T'es tu bien connecté comme suit ?

$base = mysql_connect ('nom_du_server', 'login', 'mot_de_passe');  
mysql_select_db ('nom_de_la_base', $base) ;

Reply

Marsh Posté le 21-02-2004 à 21:19:10    

Sinon chez Free ça marche pas trop mal en ce moment  :D

Reply

Marsh Posté le 21-02-2004 à 22:19:39    

merci les gars de vos réponses ;)
mais là vraiment je comprend pas, ma connection à la db sql est ok ! je la teste 1 ligne de code avant le message d'erreur et c'est ok !
c'est aprés la connection que ça va pas.
quoique voilà le code : (sans les pass ;)
Voici le fichier de connection à la base et lui c'est ok !
 
//CONNECTION AU SERVEUR INTERNE DE LA BASE.
$dbhost="sql.free.fr";
$dblogin="monlogin";
$dbpassword="monpass";
$dbname="mabase";//le nom de ma base de données.
 
$connecter=mysql_connect($dbhost,$dblogin,$dbpassword);
if (!$connecter){echo "La connection a échoué. Essayez plus tard";}else
{
//............ Connection à la base de données .........
$okbase=mysql_selectdb($dbname);
}
//... Si la base de donnée a un probleme on le dit........  
if (!$okbase){echo "Problème de connection à la base de données.";}
else
{
//...... Vérifie la table unetable ...................
$Resultat = mysql_query("SELECT * FROM unetable" );
if (!$Resultat)
{//....Si la table unetable a un probleme on la recrée.........
$creation="CREATE TABLE unetable
(id int(4) Not NULL,login TEXT NOT NULL,pseudo TEXT NOT NULL,pass TEXT NOT NULL,proposition TEXT NOT NULL)";
if (mysql_query($creation,$connecter)){echo "table unetable créée !";}
}
//Ici tout est bon !
 
}//fin du else et donc du travail avec la base.
mysql_close();
?>
......................................
là c'est le fichier qui donne le message d'erreur :
Il m'affiche le message de félicitation que j'ai mis pour tester.
............ Debut .........
<?php
include('connect.php');
if (!$okbase){echo "Problème de connection à la base de données.";}
else
{
echo "<b>Félicitations!!!</b> <br>Vous avez réussi à vous connecter correctement à votre base de données <b>$dbname</b>";  
 
//Crée le début d'une page HTML et y inclut un fichier javascript.
echo "<html><head>
<script src=\"compteur.js\"></script>
<script language=\"javascript\">
max=LitValeurs(\"max\" );
 
function prec(decale)
{
max=eval(max);
debut=LitValeurs(\"sens\" );
debut=eval(debut);  
debut-=10;
if(debut<1)debut=0;
decale.sens.value=debut;
creecookie(\"sens\",debut);
decale.submit();
}
 
function next(decale)
{
max=eval(max);  
debut=LitValeurs(\"sens\" );
debut=eval(debut);  
debut+=10;
if (debut>=max){debut=max;}
decale.sens.value=debut;
creecookie(\"sens\",debut);
decale.submit();
}
   
</script>
</head>
<body bgcolor=\"#BFEFEF\"> ";
 
//Ecrit dans un fichier le nombre d'inscrits.
if (!file_exists("maxplayers" )){
   //Si le fichier Maxplayers n'existe pas Enregistre dans un fichier le nombre d'inscrits lu dans la table.
   $Resultat = mysql_query("SELECT * FROM mutrade" );
   $max = mysql_num_rows($Resultat);  
   $ftable=fopen('maxplayers','w');
   fputs($ftable,$max);
   fclose($ftable);
}
 
//Lit dans un fichier le nombre de joueurs inscrit.
$ftable=fopen('maxplayers','r');
$max=fgets($ftable,30);
fclose($ftable);
 
//initialise les variables de recherche.
$fin=10;
if ($sens<1){$sens=0;}
if ($sens>=$max){$fin=1;$sens=$max;}else{$fin=10;}
$debut=$sens;
$rang=$debut; //$rang sert à donner un numéro à un enregistrement affiché afin que le visiteur puisse cliquer dessus.
$nomdetable="unetable";
 
// la recherche proprement dite et faite ;)
$resultat=mysql_query("SELECT * FROM $nomdetable WHERE 1 LIMIT $debut, $fin" );
   
........... FIN ......je met pas en entier c trop long et puis l'erreur est au debut de ce fichier mais pourquoi ?


Message édité par dragonminus le 22-02-2004 à 05:35:08
Reply

Marsh Posté le 21-02-2004 à 22:58:42    

J'ai trop la flemme de tous lire mais j'ai été choqué par le mysql_close(). Il faut le mettre quand tu n'utilises plus la base, pas avant. Par contre, ça aura pas changé la valeur de $connecter.

Reply

Marsh Posté le 22-02-2004 à 05:24:55    

héhé, je savais bien que c'été trops long comme texte ;
mais bon on dit met le code ;)
je réfléchit encore au probleme, celui qui trouve je le met président ;)

Reply

Marsh Posté le 22-02-2004 à 05:28:19    

En plus, malgré le mysql_close(), le message test, de "félicitation" s'affiche, c'est donc que c'est ok !.
histoire de fous ça...
Je me demandais si Free a besoin d'un user htaccess pour une requete comme select et where, dna ce cas je sais pas comment l'écrire, ya rien sur mes doc php/sql.

Reply

Marsh Posté le 22-02-2004 à 05:28:19   

Reply

Marsh Posté le 22-02-2004 à 05:48:31    

Salut tous !!!! je suis content !!!!!
ça marCHEEEEEEE !!!!!
En fait, t'avais raison pour le mysql_close() MASTER P, t'est vraiment un master ;)
Même en flegme il a trouvé, hé hé hé....
Je comprenais pas en tous cas pourquoi il affichait quand même le message de bonne connection, bein c'est parce que le serveur gardait en mémoire la valeur de "$ok" donnée par le fichier de connection à la base.(j'ai supprimé le mysql_close() et c'est tout !!!!
Trop top. Master Top....heu..Pot...heu..P...Programmeur ?

Reply

Marsh Posté le 22-02-2004 à 13:26:56    

De rien.
Pour la valeur de $connecter, je t'avais dit que ça gardais la valeur précédente. Sinon moi, j'utilise tjs le mysql_close() en fin de script.
Heureux d'avoir pu t'aider

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed