Connexion avec une base donnée
tazieff
Messages postés
14
Statut
Membre
-
alexdelareunion Messages postés 555 Statut Membre -
alexdelareunion Messages postés 555 Statut Membre -
Bonjour,
je veux crée une page sur mon site ou l'accés à un fichier se fait par identification.mais je n'arrive pas; c'est à dire je veux une page ou l'on accède par identifiant et mot de passe qui réagissent ave'c une base de donnée avant d'afficher le contenu de la page.
je veux crée une page sur mon site ou l'accés à un fichier se fait par identification.mais je n'arrive pas; c'est à dire je veux une page ou l'on accède par identifiant et mot de passe qui réagissent ave'c une base de donnée avant d'afficher le contenu de la page.
A voir également:
- Connexion avec une base donnée
- Gmail connexion - Guide
- Base de registre - Guide
- Connexion chromecast - Guide
- Meetic dernière connexion ✓ - Forum Réseaux sociaux
- France connect connexion - Guide
4 réponses
Tu peux te créer un petit formulaire HTML pour permettre à l'utilisateur de rentrer ses informations du genre :
Puis ensuite dans le script PHP, tu récupères les infos de connection et tu les compares avec ce que tu as dans ta base de données (par exemple une base MySQL)
où "NOM_SERVEUR" est le nom du serveur hébergeant la base de donnée, "NOM_UTILISATEUR_BASE" est le nom du propriétaire de la base (à priori ton identifiant de connection à la base de donnée) et "MOT_DE_PASSE_BASE" est le mot de passe pour se connecter à la base de donnée.
Voilà. Honnêtement je ne l'ai pas débugué mais à priori s'est sensé marcher... Pour l'autorisation d'accès en lui-même je ne sais pas trop mais tu dois avoir moyen de gérer ça avec les variables de sessions ou des cookies.
En espérant avoir pu te débloquer un peu
<form action="access.php" method="post">
Identifiant : <input type="text" name="id" /><br />
Password : <input type="password" name="pass" /><br />
</form>
Puis ensuite dans le script PHP, tu récupères les infos de connection et tu les compares avec ce que tu as dans ta base de données (par exemple une base MySQL)
if(isset($_POST['id']) && isset($_POST['pass'])){
// On se connect à la base de donnée
$dbh = mysql_connect(NOM_SERVEUR, NOM_UTILISATEUR_BASE, MOT_DE_PASSE_BASE);
if($dbh){
// Au cas où tu aies plusieurs base de données
$iddata = mysql_select_db(NOM_BASE_DE_DONNEE);
if($iddata){
// Requete pour récupérer les infos dans la base de donnée
$requete = "SELECT id, pass FROM ".NOM_TABLE;
$requete .= " WHERE id='".$_POST['id']."'";
$requete .= " AND pass='".$_POST['pass']."'";
// On lance la requete
$result = mysql_query($requete);
// Si la requête a retournée une ligne alors on autorise l'accès
if(mysql_num_rows($result)){
// Accès autorisé
....
} else {
// Accès non-autorisé
....
}
} else {
echo "Erreur lors de la sélection de la base<br />";
}
// On n'oublie pas de fermer la connection à la base de donnée
mysql_close($dbh);
} else {
echo "Erreur lors de la connection à la base de donnée<br />";
}
}
où "NOM_SERVEUR" est le nom du serveur hébergeant la base de donnée, "NOM_UTILISATEUR_BASE" est le nom du propriétaire de la base (à priori ton identifiant de connection à la base de donnée) et "MOT_DE_PASSE_BASE" est le mot de passe pour se connecter à la base de donnée.
Voilà. Honnêtement je ne l'ai pas débugué mais à priori s'est sensé marcher... Pour l'autorisation d'accès en lui-même je ne sais pas trop mais tu dois avoir moyen de gérer ça avec les variables de sessions ou des cookies.
En espérant avoir pu te débloquer un peu
Salut j'ai un problème assez similaire.
J'ai programmé mon site avec un formulaire pour que l'utilisateur rentre son nom et son email. C'est fait avec phpMyadmin et cela fonctionne très bien en local.
Le problème c'est que lorsque je l'upload sur le serveur d'hébergement cela ne fonctionne plus du tout. Je pense que je dois uploader ma bdd mais comment? est-ce un fichier? sous quel format dois-je l'exporter sur phpMyadmin?
Merci d'avance pour votre aide.
J'ai programmé mon site avec un formulaire pour que l'utilisateur rentre son nom et son email. C'est fait avec phpMyadmin et cela fonctionne très bien en local.
Le problème c'est que lorsque je l'upload sur le serveur d'hébergement cela ne fonctionne plus du tout. Je pense que je dois uploader ma bdd mais comment? est-ce un fichier? sous quel format dois-je l'exporter sur phpMyadmin?
Merci d'avance pour votre aide.
Voila mon code
$host = "******";
$user = "*******";
$passwd = "******";
$bdd = "identification" ;
$ide= MYSQL_CONNECT($host,$user,$passwd) or die('Erreur de connexion '.mysql_error());
mysql_select_db("$bdd", $ide);
Et voila l'erreur
Warning: mysql_connect() [function.mysql-connect]: #HY000Host '88.191.253.130' is not allowed to connect to this MySQL server in verif.php on line 31
Erreur de connexion #HY000Host '88.191.253.130' is not allowed to connect to this MySQL server
Est-ce que quelqu'un a une idée?
$host = "******";
$user = "*******";
$passwd = "******";
$bdd = "identification" ;
$ide= MYSQL_CONNECT($host,$user,$passwd) or die('Erreur de connexion '.mysql_error());
mysql_select_db("$bdd", $ide);
Et voila l'erreur
Warning: mysql_connect() [function.mysql-connect]: #HY000Host '88.191.253.130' is not allowed to connect to this MySQL server in verif.php on line 31
Erreur de connexion #HY000Host '88.191.253.130' is not allowed to connect to this MySQL server
Est-ce que quelqu'un a une idée?
Tu dois importer ta base de données sur le serveur qui t'héberge, et dans ton code tu dois renseigner les variables qui contiennent le nom de la base, ton identifiant et mon de passe, ainsi que l'adresse du serveur my sql d'après les paramètres qui te sont fournis à cet effet par ton hébergeur. (c'est logique, tu n'es plus en local)
Dans phpMyAdmin sélectionne ta base de données et choisis 'exporter'. Exporte ta base au format '.sql'. Il s'agit tout simplement d'un fichier texte qui contient toutes les lignes de commandes à entrer pour 'reconstituer' à l'identique ta base de données. Tu peux même l'ouvrir avec le Bloc-Notes si tu es curieux.
Ensuite connecte toi au phpMyAdmin de ton hébergeur, et importe tout simplement ce fichier dans ta base de données.
Attention! comme ton hébergeur t'imposera sans doute un nom pour ta base de données qui ne sera pas le même que celui que tu as utilisé en local, cette restauration peut planter. Si c'est le cas, il te suffit de modifier le nom de la base dans ton fichier de sauvegarde .sql, grace à la fonction "Rechercher/Remplacer" du bloc notes.
par exemple ta base en local s'appelle MA_BASE_LOCALE, donc dans ton fichier .sql de sauvegarde tu va trouver au début une ligne qui ressemble à ça :
CREATE DATABASE IF NO EXIST "MA_BASE_LOCALE";
CREATE TABLE "MA_BASE_LOCALE"."USER" etc....
etc...
etc...
Malheureusement ton hébergeur t'oblige à utiliser ce nom pour ta base : "POUETPOUET_BASE"
Donc tu ouvre le fichier sauvegarde.sql dans le bloc-notes (je te conseille de télécharger notepad++ à ce propos), et tu remplace toutes les occurences de "MA_BASE_LOCALE" par "POUETPOUET_BASE"
ensuite tu pourra restaurer sans soucis...
Dans phpMyAdmin sélectionne ta base de données et choisis 'exporter'. Exporte ta base au format '.sql'. Il s'agit tout simplement d'un fichier texte qui contient toutes les lignes de commandes à entrer pour 'reconstituer' à l'identique ta base de données. Tu peux même l'ouvrir avec le Bloc-Notes si tu es curieux.
Ensuite connecte toi au phpMyAdmin de ton hébergeur, et importe tout simplement ce fichier dans ta base de données.
Attention! comme ton hébergeur t'imposera sans doute un nom pour ta base de données qui ne sera pas le même que celui que tu as utilisé en local, cette restauration peut planter. Si c'est le cas, il te suffit de modifier le nom de la base dans ton fichier de sauvegarde .sql, grace à la fonction "Rechercher/Remplacer" du bloc notes.
par exemple ta base en local s'appelle MA_BASE_LOCALE, donc dans ton fichier .sql de sauvegarde tu va trouver au début une ligne qui ressemble à ça :
CREATE DATABASE IF NO EXIST "MA_BASE_LOCALE";
CREATE TABLE "MA_BASE_LOCALE"."USER" etc....
etc...
etc...
Malheureusement ton hébergeur t'oblige à utiliser ce nom pour ta base : "POUETPOUET_BASE"
Donc tu ouvre le fichier sauvegarde.sql dans le bloc-notes (je te conseille de télécharger notepad++ à ce propos), et tu remplace toutes les occurences de "MA_BASE_LOCALE" par "POUETPOUET_BASE"
ensuite tu pourra restaurer sans soucis...
Je te remercie alex je pense que ton idée aurait marché malheuresement je suis en stage et c'est mon patron qui c'était occupé d'acheter le nom de domaine et il avait pris le moins cher celui dans lequel il n'y a pas de base de donnée et pas la possibilité d'en ajouter une non plus!!
Vive le patronnat.
Vive le patronnat.
ah... ben il a du talent ton patron, pas facile de dénicher un hébergement sans base de données de nos jours...
Si le serveur de l'hébergeur doit venir taper dansd ton serveur de base de donnée perso, c'est aussi simple, tu dois juste t'assurer que ton seveur est accessible depuis l'extérieur (routage, pare-feu)
Si le serveur de l'hébergeur doit venir taper dansd ton serveur de base de donnée perso, c'est aussi simple, tu dois juste t'assurer que ton seveur est accessible depuis l'extérieur (routage, pare-feu)