Erreur php mysql
Fermé
benjy56
Messages postés
150
Date d'inscription
mercredi 18 avril 2007
Statut
Membre
Dernière intervention
30 septembre 2009
-
8 juil. 2008 à 21:36
jlfoot - 3 nov. 2008 à 22:10
jlfoot - 3 nov. 2008 à 22:10
A voir également:
- Erreur php mysql
- Erreur 0x80070643 - Accueil - Windows
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Mysql community server - Télécharger - Bases de données
- Erreur 1001 outlook - Accueil - Bureautique
- Erreur g030 - Forum Bbox Bouygues
16 réponses
Ton erreur se trouve ci-dessous :
mysql_connect("localhost", "root", "");
mysql_select_db("test");
Ta base de donnée est en local "localhost"
Pas étonnant que tu as ce message d'accès à ta base de donné
Il faut mettre si tu es hébergé chez free par exemple
"sql.free.fr" lenomdelabase le mot de passe
et le nom de la base en bas "test" par le vrai nom et cela
devrait marcher
mysql_connect("localhost", "root", "");
mysql_select_db("test");
Ta base de donnée est en local "localhost"
Pas étonnant que tu as ce message d'accès à ta base de donné
Il faut mettre si tu es hébergé chez free par exemple
"sql.free.fr" lenomdelabase le mot de passe
et le nom de la base en bas "test" par le vrai nom et cela
devrait marcher
thifoolish
Messages postés
79
Date d'inscription
jeudi 11 janvier 2007
Statut
Membre
Dernière intervention
11 juillet 2008
18
8 juil. 2008 à 23:04
8 juil. 2008 à 23:04
Quand on créé une connexion, il faut affecter cette connexion à une variable pour créer une référence en mémoire vers la connexion créée.
Il faut donc faire :
$link = @mysql_connect( /* les paramètres qui vont bien pour se connecter */);
Ce lien va servir à chaque appel/traitement vers la base de données.
Il faut ensuite passer la référence vers la connexion (cad $link) à chaque appel de fonction mysql.
Exemple:
@mysql_select_db("mabase", $link);
En l'occurence, tout est dans ton message d'erreur :
Etant donné qu'il n'y a pas de référence vers la connexion mysql en mémoire, elle est purement et simplement supprimée au bout d'un certain temps (qui varie en fonction du système d'exploitation)
La fonction mysql_fetch_array() ne trouve pas de connexion mysql, donc renvoie une erreur...
Bonne soirée !
Il faut donc faire :
$link = @mysql_connect( /* les paramètres qui vont bien pour se connecter */);
Ce lien va servir à chaque appel/traitement vers la base de données.
Il faut ensuite passer la référence vers la connexion (cad $link) à chaque appel de fonction mysql.
Exemple:
@mysql_select_db("mabase", $link);
En l'occurence, tout est dans ton message d'erreur :
Etant donné qu'il n'y a pas de référence vers la connexion mysql en mémoire, elle est purement et simplement supprimée au bout d'un certain temps (qui varie en fonction du système d'exploitation)
La fonction mysql_fetch_array() ne trouve pas de connexion mysql, donc renvoie une erreur...
Bonne soirée !
benjy56
Messages postés
150
Date d'inscription
mercredi 18 avril 2007
Statut
Membre
Dernière intervention
30 septembre 2009
95
8 juil. 2008 à 21:50
8 juil. 2008 à 21:50
desole mais j'ai pas vraiment compris la parce que tu mais autre script par exemple les news ou le minichat ca marche comme des roulette alors que j'utilise une base de donnee
tu peus me redire
tu peus me redire
benjy56
Messages postés
150
Date d'inscription
mercredi 18 avril 2007
Statut
Membre
Dernière intervention
30 septembre 2009
95
9 juil. 2008 à 11:14
9 juil. 2008 à 11:14
javais essayer mercie !!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
benjy56
Messages postés
150
Date d'inscription
mercredi 18 avril 2007
Statut
Membre
Dernière intervention
30 septembre 2009
95
9 juil. 2008 à 11:17
9 juil. 2008 à 11:17
javais essayer mercie !!
benjy56
Messages postés
150
Date d'inscription
mercredi 18 avril 2007
Statut
Membre
Dernière intervention
30 septembre 2009
95
9 juil. 2008 à 12:34
9 juil. 2008 à 12:34
voici le code :
<html>
<body><form name="forumulaire">
<p>pseudo : <input type="text" name="pseudo" size="20"></p>
<p>password : <input type="password" name="passe" size="20"></p>
</form>
<?php
$link = @mysql_connect("localhost", "root", "");
@mysql_select_db("test", $link);
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));
$passe = mysql_real_escape_string(htmlspecialchars($_POST['passe']));
//Je crypte $passe avec la fonction "sha1"
$passe = sha1($passe);
$nbre = mysql_query("SELECT COUNT(*) AS exist FROM connexion WHERE pseudo='$pseudo'");
$donnees = mysql_fetch_array($nbre);
if($donnees['exist'] != 0) //si le pseudo existe
{
$quete = mysql_query("SELECT * FROM connexion WHERE pseudo='$pseudo'");
$infos = mysql_fetch_array($quete);
if($passe == $infos['passe'])
{
include("verification.php");
}
else //Si ce n'est pas le bon couple pseudo/mdp
{
echo 'Vous n\'avez pas rentré les bons identifiants';
}
}?>
</body>
</html>
ca ne marche quand meme pas :-(
erreur :
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\inscription\connexion.php on line 14
repondez moi mercie
<html>
<body><form name="forumulaire">
<p>pseudo : <input type="text" name="pseudo" size="20"></p>
<p>password : <input type="password" name="passe" size="20"></p>
</form>
<?php
$link = @mysql_connect("localhost", "root", "");
@mysql_select_db("test", $link);
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));
$passe = mysql_real_escape_string(htmlspecialchars($_POST['passe']));
//Je crypte $passe avec la fonction "sha1"
$passe = sha1($passe);
$nbre = mysql_query("SELECT COUNT(*) AS exist FROM connexion WHERE pseudo='$pseudo'");
$donnees = mysql_fetch_array($nbre);
if($donnees['exist'] != 0) //si le pseudo existe
{
$quete = mysql_query("SELECT * FROM connexion WHERE pseudo='$pseudo'");
$infos = mysql_fetch_array($quete);
if($passe == $infos['passe'])
{
include("verification.php");
}
else //Si ce n'est pas le bon couple pseudo/mdp
{
echo 'Vous n\'avez pas rentré les bons identifiants';
}
}?>
</body>
</html>
ca ne marche quand meme pas :-(
erreur :
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\inscription\connexion.php on line 14
repondez moi mercie
benjy56
Messages postés
150
Date d'inscription
mercredi 18 avril 2007
Statut
Membre
Dernière intervention
30 septembre 2009
95
9 juil. 2008 à 12:44
9 juil. 2008 à 12:44
enfait je crois que j'avais oublierde mettre ma base de donnee :-0
salut
salut
thifoolish
Messages postés
79
Date d'inscription
jeudi 11 janvier 2007
Statut
Membre
Dernière intervention
11 juillet 2008
18
9 juil. 2008 à 13:02
9 juil. 2008 à 13:02
Précédemment énoncé, je le répète un peu plus fort :
Il faut ensuite passer la référence vers la connexion (cad $link) à chaque appel de fonction mysql
Toutes les fonctions qui commençent par mysql_ ... doivent recevoir la référence de la connexion active.
Il faut ensuite passer la référence vers la connexion (cad $link) à chaque appel de fonction mysql
Toutes les fonctions qui commençent par mysql_ ... doivent recevoir la référence de la connexion active.
benjy56
Messages postés
150
Date d'inscription
mercredi 18 avril 2007
Statut
Membre
Dernière intervention
30 septembre 2009
95
10 juil. 2008 à 11:20
10 juil. 2008 à 11:20
salut
un peu plus fort... euh
j'ai que 10ans je comprend pas ce que tu me dis (cad &link)...
tu peut me faire un exemple
s'il te plait
A++++++
un peu plus fort... euh
j'ai que 10ans je comprend pas ce que tu me dis (cad &link)...
tu peut me faire un exemple
s'il te plait
A++++++
thifoolish
Messages postés
79
Date d'inscription
jeudi 11 janvier 2007
Statut
Membre
Dernière intervention
11 juillet 2008
18
10 juil. 2008 à 14:25
10 juil. 2008 à 14:25
Bonjour benji,
Ton code modifié de manière à illustrer ce que je t'ai dit.
A vérifier, l'ordre des paramètres dans les différents appels de fonctions mysql.
A vérifier aussi l'appel dans ton formulaire...
Il faudrait au moins ceci pour qu'un formulaire fonctionne :
Où l'attribut action contient le fichier qui va faire les traitements nécessaires
et l'attribut method contient le mode de transmission des informations (GET ou POST principalement).
D'autres attributs existent, et peuvent être importants... mais ils varient en fonction du contexte de l'application que tu dois développer.
Pour information, le caractère arobase @ devant les fonctions mysql sert uniquement à ôter les messages d'erreur pouvant survenir à l'execution. Pour le développement, il est donc interressant de ne pas les mettre.
Dans un environnement de production, une seule référence à un système de fichiers peut être la source d'une faille de sécurité, c'est pourquoi on désactive ces messages d'erreurs (ou on utilise des handlers spécifiques développés pour gérer ce type d'erreurs, sans rien afficher à l'écran qu'un message à dimension humaine dy style : "Un problème est survenu lors de la récupération des données dans la base."
Ca ne risquait pas de marcher si ton serveur de base de données (mysql) n'était pas démarré.
Windows -> Services -> MySQL -> Start
L'âge est une variable que certains font varier de manière aléatoire. Par internet, les assertions ne sont pas des faits. Et la confiance reste l'histoire de rencontres dans le monde réel.
Ton code modifié de manière à illustrer ce que je t'ai dit.
A vérifier, l'ordre des paramètres dans les différents appels de fonctions mysql.
A vérifier aussi l'appel dans ton formulaire...
<form name="">
Il faudrait au moins ceci pour qu'un formulaire fonctionne :
<form name="" action="traitements.php" method="post">
Où l'attribut action contient le fichier qui va faire les traitements nécessaires
et l'attribut method contient le mode de transmission des informations (GET ou POST principalement).
D'autres attributs existent, et peuvent être importants... mais ils varient en fonction du contexte de l'application que tu dois développer.
Pour information, le caractère arobase @ devant les fonctions mysql sert uniquement à ôter les messages d'erreur pouvant survenir à l'execution. Pour le développement, il est donc interressant de ne pas les mettre.
Dans un environnement de production, une seule référence à un système de fichiers peut être la source d'une faille de sécurité, c'est pourquoi on désactive ces messages d'erreurs (ou on utilise des handlers spécifiques développés pour gérer ce type d'erreurs, sans rien afficher à l'écran qu'un message à dimension humaine dy style : "Un problème est survenu lors de la récupération des données dans la base."
Ca ne risquait pas de marcher si ton serveur de base de données (mysql) n'était pas démarré.
Windows -> Services -> MySQL -> Start
L'âge est une variable que certains font varier de manière aléatoire. Par internet, les assertions ne sont pas des faits. Et la confiance reste l'histoire de rencontres dans le monde réel.
<html> <body><form name="forumulaire"> <p>pseudo : <input type="text" name="pseudo" size="20"></p> <p>password : <input type="password" name="passe" size="20"></p> </form> <?php $link = @mysql_connect("localhost", "root", ""); @mysql_select_db("test", $link); $pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']), $link); $passe = mysql_real_escape_string(htmlspecialchars($_POST['passe']), $link); //Je crypte $passe avec la fonction "sha1" $passe = sha1($passe); $nbre = mysql_query($link, "SELECT COUNT(*) AS exist FROM connexion WHERE pseudo='$pseudo'"); $donnees = mysql_fetch_array($nbre, $link); if($donnees['exist'] != 0) //si le pseudo existe { $quete = mysql_query($link, "SELECT * FROM connexion WHERE pseudo='$pseudo'"); $infos = mysql_fetch_array($quete,$link); if($passe == $infos['passe']) { include("verification.php"); } else //Si ce n'est pas le bon couple pseudo/mdp { echo 'Vous n\'avez pas rentré les bons identifiants'; } }?> </body> </html>
benjy56
Messages postés
150
Date d'inscription
mercredi 18 avril 2007
Statut
Membre
Dernière intervention
30 septembre 2009
95
10 juil. 2008 à 19:07
10 juil. 2008 à 19:07
mercie
benjy56
Messages postés
150
Date d'inscription
mercredi 18 avril 2007
Statut
Membre
Dernière intervention
30 septembre 2009
95
11 juil. 2008 à 11:45
11 juil. 2008 à 11:45
mais cela mais toujours a la ligne 14 waring : mysql_feth...
thifoolish
Messages postés
79
Date d'inscription
jeudi 11 janvier 2007
Statut
Membre
Dernière intervention
11 juillet 2008
18
11 juil. 2008 à 14:29
11 juil. 2008 à 14:29
1. Le nom de ton formulaire, tu dois faire les modifications au début de ton code (que j'ai reposté sans corriger à ce niveau, étant donné que les corrections sont évidentes)...
En l'état, cela ne risque pas de marcher... et ajoutes-y les attributs dont je t'ai parlé... name="" action="" et method="" ...
2. la documentation, ça peut servir des fois ... une complète, téléchargeable et gratuite se trouve sur ce site pas tip top, mais c'est pas mal pour commencer : http://www.nexen.net et tu cherches la doc mysql et la doc php.
Tu les télécharges, et tu les lis tranquillement....
3. après, tu sauras pourquoi ça ne marche pas, ton mysql_fetch_array()
En l'état, cela ne risque pas de marcher... et ajoutes-y les attributs dont je t'ai parlé... name="" action="" et method="" ...
2. la documentation, ça peut servir des fois ... une complète, téléchargeable et gratuite se trouve sur ce site pas tip top, mais c'est pas mal pour commencer : http://www.nexen.net et tu cherches la doc mysql et la doc php.
Tu les télécharges, et tu les lis tranquillement....
3. après, tu sauras pourquoi ça ne marche pas, ton mysql_fetch_array()
benjy56
Messages postés
150
Date d'inscription
mercredi 18 avril 2007
Statut
Membre
Dernière intervention
30 septembre 2009
95
16 juil. 2008 à 11:32
16 juil. 2008 à 11:32
je vais voir sur le site que tu ma donner :-)
et je vais le modifier =)
salut
et je vais le modifier =)
salut
benjy56
Messages postés
150
Date d'inscription
mercredi 18 avril 2007
Statut
Membre
Dernière intervention
30 septembre 2009
95
23 juil. 2008 à 11:52
23 juil. 2008 à 11:52
ça ne marche toujours pas :(
mais j'ai trouve un notre sujet http://www.commentcamarche.net/forum/affich 7542326 message d erreur#dernier
mercie quand meme.
mais j'ai trouve un notre sujet http://www.commentcamarche.net/forum/affich 7542326 message d erreur#dernier
mercie quand meme.
Ton erreur se trouve ci-dessous :
remplace donc ceci :
mysql_connect("localhost", "root", "");
mysql_select_db("test");
par
mysql_connect("ladressedetabasededonnee", "lenomdelabasededonnee", "lemotdepassedelabasededonnee");
mysql_select_db("lenomdetabasededonnee");
cela devrait marcher. Toi seul et ton administrateur de réseau connait ces informations importantes pour te connecter à ta base de donnée
remplace donc ceci :
mysql_connect("localhost", "root", "");
mysql_select_db("test");
par
mysql_connect("ladressedetabasededonnee", "lenomdelabasededonnee", "lemotdepassedelabasededonnee");
mysql_select_db("lenomdetabasededonnee");
cela devrait marcher. Toi seul et ton administrateur de réseau connait ces informations importantes pour te connecter à ta base de donnée