Erreur sql no data base selected

Fermé
limbaon9 Messages postés 42 Date d'inscription lundi 14 octobre 2019 Statut Membre Dernière intervention 12 mars 2022 - 10 déc. 2019 à 15:11
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 - 10 déc. 2019 à 16:48
Bonjour tout le monde j'ai un petit soucis avec mon site (site de débutant) enfaite quand j'essaye de le lancer ça me met
mais j'ignore pourquoi sachant que j'ai deja ma bdd et je l'ai bien defini.
Merci de bien vouloir m'aider
A voir également:

3 réponses

jee pee Messages postés 39649 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 26 avril 2024 9 238
10 déc. 2019 à 15:14
Bonjour,

Il faudrait préciser le langage utilisé (php ?) pour que la question soit redirigée vers le forum approprié. Et mettre le code utilisé (connexion à la base et execution des requetes, ...)
0
limbaon9 Messages postés 42 Date d'inscription lundi 14 octobre 2019 Statut Membre Dernière intervention 12 mars 2022
10 déc. 2019 à 15:20
c'est du javascript..
0
limbaon9 Messages postés 42 Date d'inscription lundi 14 octobre 2019 Statut Membre Dernière intervention 12 mars 2022
Modifié le 10 déc. 2019 à 15:41
voila les 3 codes que j'ai:
constante.inc.php
<?php
//constantes @ip host
define('CONST_HOST', "127.0.0.1");
//constante user
define('CONST_USER', ".....");
//constante nom bdd
define('CONST_BDD',"site_tp4");
//constante password bdd
define('CONST_PWD',"....");



fonction.inc.php
<?php
include "constante.inc.php";
/*** Fonctions de connexion a la base de donn�e * return instance de connexion � la bdd */
function connexion_DB() {//TODO D�claration des param�tres de connexion $host = CONST_HOST; $user = CONST_USER; $bdd = CONST_BDD; $passwd  = CONST_PWD ;// Connexion au serveur $connexion=mysqli_connect($host, $user,$passwd) or die("erreur de connexion au serveur"); mysqli_select_db($connexion,CONST_BDD) or die("erreur de connexion a la base de donnees"); return $connexion;}
// --------------------------------------------------------------------------------------------------------------------------/** * Fonctions de d�connexion de la base de donn�e */
function deconnexion_DB($connexion) { //TODO fermer la connexion mysql @mysql_close($db);}
// --------------------------------------------------------------------------------------------------------------------------/** * * Fonction de requetage sql * @param $strSQL -requete sql * return les enregistrements correspondant au r�sultat de la requete */
function requete_SQL($connexion,$strSQL) { $result = mysqli_query($connexion,$strSQL); if (!$result) {  $message  = 'Erreur SQL : ' . mysqli_error($connexion) . "<br>\n";  $message .= 'SQL string : ' . $strSQL . "<br>\n";  $message .= "Merci d'envoyer ce message au webmaster";  die($message); } return $result;}
// --------------------------------------------------------------------------------------------------------------------------/** * * Fonctions qui r�cupere les informations en bdd et l'id de la page pass�e en paramtre * Les variables sont stock�es en variable d'environnement */
function extraction_infos_DB($con) { $strSQL = 'SELECT * FROM `pages` WHERE `Id_page` = '.$_ENV['id_page']; $resultat = requete_SQL($con,$strSQL); $tabl_result = mysqli_fetch_array($resultat); $_ENV['mots_cles'] = $tabl_result['Mots_cles']; $_ENV['description'] = $tabl_result['Description']; $_ENV['titre'] = $tabl_result['Titre']; $_ENV['contenu'] = $tabl_result['Contenu']; $_ENV['id_parent'] = $tabl_result['Id_parent'];}
//---------------------------------------------------------------------------------------------------------------------------/** * * Fonction d'affichage du fil d'ariane * @param $idpage id de la page en cours -> $idpage * @param $con connexion � l'instance de base de donn�es * return chemin complet -> $chemin_complet */
function affiche_fil_ariane($con,$idpage) { // on d�finit la variable pour �viter le warning $chemin_complet = ""; // Si l'id de la page en cours est diff�rent de 0 // (0 = page parente de la page racine = inexistante) if ($idpage != 0) {  // on r�cup�re les informations de la page en cours dans la DB  $strSQL = 'SELECT `Titre`, `Id_parent` FROM `pages` WHERE `Id_page` = '.$idpage;  $resultat = requete_SQL($strSQL);  $tabl_result = mysqli_fetch_array($resultat);  $titrepage = $tabl_result['Titre'];  $idparent = $tabl_result['Id_parent'];  // cr�ation du lien vers la page en cours  //$chemin_page_en_cours = ' -> <a href="index.php?id_page='.$idpage.'">'.$titrepage.'</a>';  $chemin_page_en_cours = ' <img src="images/right.gif"><a href="index.php?id_page='.$idpage.'">'.$titrepage.'</a>';  // Concat�nation du lien de la page N-1 et  // du lien de la page en cours  $chemin_complet = affiche_fil_ariane($con,$idparent).$chemin_page_en_cours; } // renvoie le chemin complet return $chemin_complet;}?>


et dans ma page index.php j'ai
<?php
 // Active tout les warning. Utile en phase de d�veloppement
 // En phase de production, remplacer E_ALL par 0
 error_reporting(E_ALL);

 // Inclus le fichier contenant les fonctions personnalis�es
 include_once 'fonctions.inc.php';

 // Fonction de connexion � la base de donn�es
 connexion_DB();

 // D�finit l'Id de la page d'accueil (1 dans cet exemple)
 // Pensez � le modifier si ce n'est pas le cas chez vous.
 $id_page_accueil = 1;

 // R�cup�re l'id de la page courante pass�e par l'URL
 // Si non d�fini, on consid�re que la page est la page d'accueil
 if (isset($_GET['id_page'])) {
  $_ENV['id_page'] = intval($_GET['id_page']);
 } else {
  $_ENV['id_page'] = $id_page_accueil;
 }

 $host = CONST_HOST;
 $user = CONST_USER;
 $bdd = CONST_BDD;
 $passwd  = CONST_PWD ;
// Connexion au serveur
 $con=mysqli_connect($host, $user,$passwd) or die("erreur de connexion au serveur");
 // Extrait les informations correspondantes � la page en cours de la DB
 extraction_infos_DB($con);
?>

<!DOCTYPE html>
<html lang="fr">
<head>
<!-- Ins�re les mots-cl�s extraits de la DB dans les meta -->
<META NAME="keywords" lang="fr" CONTENT="<?php echo $_ENV['mots_cles']; ?>">
<!-- Ins�re la description extraite de la DB dans les meta -->
<META NAME="Description" CONTENT="<?php echo $_ENV['description']; ?>">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<!-- Ins�re le titre extrait de la DB dans la balise correspondante -->
<title><?php echo $_ENV['titre']; ?></title>

<!--  TODO style css du site -->


<!-- TODO style css pour le menu -->


<!--  TODO Tjavascript pour menu dynamique -->
<script>
ddsmoothmenu.init({
 mainmenuid: "smoothmenu1", //menu DIV id
 orientation: 'h', //Horizontal or vertical menu: Set to "h" or "v"
 classname: 'ddsmoothmenu', //class added to menu's outer DIV
 //customtheme: ["#1c5a80", "#18374a"],
 contentsource: "markup" //"markup" or ["container_id", "path_to_menu_file"]
})

ddsmoothmenu.init({
 mainmenuid: "smoothmenu2", //Menu DIV id
 orientation: 'v', //Horizontal or vertical menu: Set to "h" or "v"
 classname: 'ddsmoothmenu-v', //class added to menu's outer DIV
 //customtheme: ["#804000", "#482400"],
 contentsource: "markup" //"markup" or ["container_id", "path_to_menu_file"]
})

</script>



<!--TODO initialisation du menu -->
<script type="text/javascript">
// TODO definition du menu


</script>


</head>
<body>
<header id="hd1">
<img src="images/banniere.jpg" alt="image Astronomie" title="L'astronomie de A � Z" width="100%"/>


<!-- affichage du menu horyzontal -->
<div id="smoothmenu1" class="ddsmoothmenu">
<ul>
<li><a href="index.php?id_page=1">Accueil</a></li>
<li><a href="#">Photos</a>
  <ul>
  <li><a href="index.php?id_page=6">Planetes</a></li>
  <li><a href="index.php?id_page=7">Satellites</a></li>
  </ul>
</li>
<li><a href="#">Vidéos</a>
 <ul>
  <li><a href="index.php?id_page=8">Planetes</a></li>
  <li><a href="index.php?id_page=9">Satellites</a></li>
  </ul>
</li>
<li><a href="#">Contact</a>

</li>
<li><a href="#">Plan de Site</a></li>
</li>
<li><a href="admin.php?id_page=14">Acces Privé</a></li>
</ul>
<br style="clear: left" />
</div>
</header>
 <nav id="fil_ariane">
  <?php
   //TODO Affiche le fil d'ariane

  ?>
 </nav>
<div id="main">

  <article>
  <header>
    <?php  echo $_ENV['description'];?>
  </header>
  <section>

   <?php
    // Affiche le contenu de la page en cours
    echo $_ENV['contenu'];
   ?>
   </section>
    <footer>
     </footer>
  </article>
  <div id="aside">
    <aside>
        <h1>Catégories</h1>
        <ul>
            <li><a href="http://www.futura-sciences.com/fr/sciences/actualites/univers/">Actualité</a></li>
            <li><a href="http://www.blog-nouvelles-technologies.fr/archives/category/developpement/">Matériel</a></li>
        </ul>
    </aside>
    <aside>
        <h1>Liens</h1>
        <ul>
            <li><a href="http://www.webastro.net/">Webastro </a></li>
            <li><a href="http://www.planete-astronomie.com/">Planete-Astronomie</a></li>
        </ul>
    </aside>
   </div>
  </div>
 <footer id="ft1">
  <?php //TODO inclure le pied de page ?>
 </footer>
 <?php //TODO deconnexion bdd ?>
</body>
</html>

0
jee pee Messages postés 39649 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 26 avril 2024 9 238
10 déc. 2019 à 15:46
une remarque toute bête (je ne fais ni php, ni javascript, ni mysql) mais ta fonction connexion, ne recoit pas de paramètre, et ne contient aucun code (TODO !), pareil pour déconnexion.
0
limbaon9 Messages postés 42 Date d'inscription lundi 14 octobre 2019 Statut Membre Dernière intervention 12 mars 2022 > jee pee Messages postés 39649 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 26 avril 2024
Modifié le 10 déc. 2019 à 15:53
justement c'est pas ca cela ne change rien j'ai passé 3h la dessus
0
jee pee Messages postés 39649 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 26 avril 2024 9 238 > limbaon9 Messages postés 42 Date d'inscription lundi 14 octobre 2019 Statut Membre Dernière intervention 12 mars 2022
10 déc. 2019 à 15:55
je fais juste, de bon sens, remarquer que quand tu appelles la fonction DB_connexion, le programme ne fait rien, donc n'est pas connecté à la base de données, si après tu lances un ordre select, ce serait tout à fait normal qu'il y ait une erreur "no database selected.
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
10 déc. 2019 à 16:21
Bonjour,

1 - Non ce n'est pas du javascript ... mais du PHP !

2 - Comme Jee_pee l'a remarqué... il manque du code... tel que la connexion à la bdd
Au passage, vu que tu fais du PDO je t'invite à lire ET à appliquer le contenu de ces deux liens :

- https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs

- https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code

Reviens nous voir avec le code modifié si ton souci persiste.
.
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
10 déc. 2019 à 16:24
Petite correction....

Le code connexion_DB n'est pas utilisé....

Visiblement... tu as tenté de refaire du mysqli
$con=mysqli_connect($host, $user,$passwd) or die("erreur de connexion au serveur");

Et donc.. dans cette ligne de code... tu n'as pas précisé la BDD à utiliser
https://www.php.net/manual/fr/function.mysqli-connect.php

La "bonne" écriture pour ta connexion serait donc :
$host = CONST_HOST;
 $user = CONST_USER;
 $bdd = CONST_BDD;
 $passwd  = CONST_PWD ;
// Connexion au serveur
 $con=mysqli_connect($host, $user,$passwd,$bdd); // ne plus utiliser de or die en mysqli !
if (!$con) {
    echo "Erreur : Impossible de se connecter à MySQL." . PHP_EOL;
    echo "Errno de débogage : " . mysqli_connect_errno() . PHP_EOL;
    echo "Erreur de débogage : " . mysqli_connect_error() . PHP_EOL;
    exit;
}
 // Extrait les informations correspondantes � la page en cours de la DB
 extraction_infos_DB($con);




0
jee pee Messages postés 39649 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 26 avril 2024 9 238 > jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024
10 déc. 2019 à 16:42
"Le code connexion_DB n'est pas utilisé.... " si en ligne 10, mais bon dans ce code, même avec ceinture et bretelles, le pantalon ne tient pas ;-)
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650 > jee pee Messages postés 39649 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 26 avril 2024
10 déc. 2019 à 16:48
il est appelé;..oui... mais pas utilisé.
Surtout qu'il est vide donc ne fera rien.

Visiblement il retransforme un vieux code mysql en mysqli ( et c'est très bien...)
reste à utiliser (et compléter) les fonctions au lieu de mettre du code un peu n'importe où sans comprendre à quoi il sert.
0