Connection bd

Bonjour,
au secours je n' arrive pas a m connecter a ma base de donnée
Configuration: Windows XP
Opera 9.80

6 réponses

  • Votes
  • Date
  • Date décroissante
  1. Salut,
    Tu peux être plus précis, on ne peux rien faire pour toi avec les informations que tu nous donne.

    Te connecté a ta BDD comment?
    via un site internet, (quel langage de programmation, php/mysql?), si oui, donne nous le code que l'on regarde
    avec phpmyAdmin, autre?
    1. ok voici le codes

      if (is_numeric ($tel)) //&& !is_numeric ($nom) && !is_numeric ($pren))
      {
      mysql_connect ("localhost", "root", "") or die ("Noon ! ! !"); // Connexion à MySQL
      mysql_select_db ("exo_bd_01"); // Connexion à la base de données "exo_bd_01"
      $requete = "INSERT INTO gagnants VALUES ('', '$nom', '$pren', '$tel');"; // Réquête SQLrequete = "INSERT INTO gagnants VALUES ('', 'caca', 'pipi', '33259874');"; // Réquête SQL
      mysql_query ($requete); // Exécution de la réquête
      mysql_close (); // Déconnexion de MySQL
      echo "Youpi ! ! !";
      }
    2. merci CAMUKE pour ta reponse et surtout pour ta rapidité, mais ça ne marche toujours pas.
      les données ne s' enregistrent toujours pas dans la base de données
  2. ok voici mon code

    if (is_numeric ($tel)) //&& !is_numeric ($nom) && !is_numeric ($pren))
    {
    mysql_connect ("localhost", "root", "") or die ("Noon ! ! !"); // Connexion à MySQL
    mysql_select_db ("exo_bd_01"); // Connexion à la base de données "exo_bd_01"
    $requete = "INSERT INTO gagnants VALUES ('', '$nom', '$pren', '$tel');"; // Réquête SQLrequete = "INSERT INTO gagnants VALUES ('', 'caca', 'pipi', '33259874');"; // Réquête SQL
    mysql_query ($requete); // Exécution de la réquête
    mysql_close (); // Déconnexion de MySQL
    echo "!";
    }
    1. Voila, ton code en corrigé :
      <?php
      	$nom = 'toto';
      	$pren = 'titi';
      	$tel = 021425; //si c'est bien un numéro de telephone, te conseil de le mettre en chaine de caractére, 
      	//car avec un 0 devant, le type numeric va l'enlever vu qu'il ne sert a rien
      	$connect = mysql_connect("localhost", "root", "") or die ("Noon ! ! !"); 
      	mysql_select_db("exo_bd_01", $connect); 
      	$requete = "INSERT INTO gagnants(nom, prenom, tel) VALUES ('$nom', '$pren', '$tel');";  //je supose que la 1er champs etait un id en auto-increment non?
      	mysql_query($requete);
      	echo "!";
      ?>
      1. Rien ne s'insère, etrange, moi sa marche....

        Je vois 2 raisons a sa :
        - les noms des champs sont les bons dans la ligne $requete = "INSERT INTO gagnants(nom, prenom, tel) VALUES ('$nom', '$pren', '$tel'); les noms des champs que j'ai mit dans ma requete corresponde a ceux de ma base, faut pas oublié de les modifiers si il sont différents.
        - Tu rentre pas dans ton if car $tel est pas numéric, tu recupere les valeurs a partir d'un formulaire je suppose?

        Essai se code :
        <?php
        	if (is_numeric($tel)) {
        		$connect = mysql_connect("localhost", "root", "") or die ("Noon ! ! !"); 
        		mysql_select_db("exo_bd_01", $connect); 
        		$requete = "INSERT INTO gagnants(nomchamp2, nomchamp3, nomchamp4) VALUES ('$nom', '$pren', '$tel');";  //je supose que la 1er champs etait un id en auto-increment non?
        		echo $requete;
        		mysql_query($requete);
        		echo "!";
        	}else
        	{
        		echo "raté";
        	}
        ?>


        et dit moi se qu'il t'affiche
        1. Bon! Voici tout le code:

          ************************
          <html>
          <head><title>  </title></head>
          <body>
          
          <form action = "bd_01.php" method = "POST">
          
          <h2 align = "center"> Enregistrement des gagnants </h2>
          <hr /> <br />
          
          <table align = "center">
          	<tr>
          		<td> Nom : </td>
          		<td colspan = 2> <input type = "text" name = "nom"> </td>
          	</tr>
          	<tr>
          		<td> Prénoms : </td>
          		<td colspan = 2> <input type = "text" name = "pren"> </td>
          	</tr>
          	<tr>
          		<td> N° de téléphone : </td>
          		<td colspan = 2> <input type = "text" name = "tel"> </td>
          	</tr>
          	<tr>
          		<td> </td>
          		<td> <input type = "submit" value = "OK"> </td>
          		<td> <input type = "reset" value = "Cancel"> </td>
          	</tr>
          </table>
          
          </form>
          
          
          <?php
          
          if (isset ($_POST['nom']) && isset ($_POST['pren']) && isset ($_POST['num']))
          {
          	$nom = $_POST['nom'];
          	$pren = $_POST['pren'];
          	$tel = $_POST['tel'];
          }
          
          else
          {
          	$nom = 0;
          	$pren = 0;
          	$tel = "";
          	echo "NB : veuillez renseigner tous les champs... <br> <br>";
          }
          
          	if (is_numeric ($tel)) //&& !is_numeric ($nom) && !is_numeric ($pren))
          	{
          		$connexion = mysql_connect ("localhost", "root", "") or die ("Noon ! ! !"); // Connexion à MySQL
          		mysql_select_db ("exo_bd_01", $connexion); // Connexion à la base de données "exo_bd_01"
          		$requete = "INSERT INTO gagnants ('id', 'nom', 'prenoms', 'numtel') VALUES ('', '$nom', '$pren', '$tel');";  // Réquête SQL
          		mysql_query ($requete); // Exécution de la réquête
          		mysql_close (); // Déconnexion de MySQL
          		echo "Youpi ! ! !";
          	}
          
          ?>
          
          	
          </body>
          </html>
          

          *********************************

          Il n'affiche rien de particulier sur la page;
          n'envoie aucune erreur;
          n'enregistre rien dans la base de données non plus.

          Je commence à désespérer...
          1. Le formulaire est bon donc je ne le remet pas, voici le code php corrigé avec en commentaires, les erreurs trouver:
            <?php
            //Je t'ai simplifier un peu ton code, il est inutile d'initialiser des variables si elle ne servent a rien!!
            if (isset ($_POST['nom']) && isset ($_POST['pren']) && isset ($_POST['tel'])) //tu avait mit $_POST['num'] au lieu de $_POST['tel'] donc tu ne rentrais jamais dans ton code...
            {
            	$nom = $_POST['nom'];
            	$pren = $_POST['pren'];
            	$tel = $_POST['tel'];
            	if (is_numeric($tel)) //&& !is_numeric ($nom) && !is_numeric ($pren))
            	{
            		$connexion = mysql_connect ("localhost", "root", "") or die ("Noon ! ! !"); 
            		mysql_select_db ("exo_bd_01", $connexion); 
            		$requete = "INSERT INTO gagnants (nom, prenoms, numtel) VALUES ('$nom', '$pren', '$tel');";//Inutile de mettre l'id si il est en auto_increment., de plus, il n'y a pas de ' ' pour le nom des champs. Pour eviter se genre d'erreur, affiche la requête  dans un écho et test la directement dans PhpMyAdmin, tu verra si il y a pas une erreur de syntaxe
            		mysql_query ($requete);
            		echo "Youpi ! ! !";
            	}
            }
            else
            {
            	echo "NB : veuillez renseigner tous les champs... <br> <br>";
            }
            
            ?>


            Voila, enjoy!!