[RESOLU] Impossible de se conencter à la base de donnée

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Impossible de se conencter à la base de donnée

Re: Impossible de se conencter à la base de donnée

par Spols » 12 mai 2017, 08:07

regarde les exemples dans cette page de doc
http://php.net/manual/en/mysqli-stmt.execute.php

et voi la différence entre la méthode avec des classes et la méthode procédurale. tu ne peux pas passer de l'un à l'autre, il te faut choisir une méthode et t'y tenir jusqu'au bout.

Et c'est pareil dans ton autre sujet.

Re: Impossible de se conencter à la base de donnée

par LerikalBless » 11 mai 2017, 18:22

Je m'y suis perdu, tu peux, me dire ce qu'il y a a remplacer s'il te plaît ?

Re: Impossible de se conencter à la base de donnée

par Spols » 11 mai 2017, 18:15

Tu mélange tou, si tu utilise l'extension mysqli, il faut s'y tenir jusqu'au bout et pas tenter de l'objet par après

Re: Impossible de se conencter à la base de donnée

par LerikalBless » 11 mai 2017, 17:45

J'ai donc réussis a mettre les 2 paramètre mais lors de l'enrengistrement et de l'envoie vers la base de donnée, je voudrai que ça renvois a l'index.php mais aussi quand je vérifie ma base de donnée, les informations saisie et envoyé non pas été stocké dans la base de donnée
<?php
$msg_erreur = "Erreur. Les champs suivants doivent être obligatoirement remplis:
<br/><br/>";
$msg_ok = "Votre demande a bien été prise en compte.";
$message = $msg_erreur;
// vérification des champs 
if (empty($_POST['Nom_jeune'])) 
  $message .= "Votre Nom<br/>";
if (empty($_POST['Prenom_jeune'])) 
  $message .= "Votre prénom<br/>";
if (empty($_POST['Adresse_mail_jeune'])) 
  $message .= "Votre email<br/>";
if (empty($_POST['Mot_de_passe_jeune'])) 
  $message .= "Votre mot de passe<br/>";
if (empty($_POST['Date_de_naissance_jeune'])) 
  $message .= "Votre date de naissance<br/>";
if (empty($_POST['Sexe_jeune'])) 
  $message .= "Votre sexe<br/>";
if (empty($_POST['Numero_de_telephone_mobile_jeune'])) 
  $message .= "Votre numero de téléphone<br/>";
 
// si un champ est vide, on affiche le message d'erreur
if (strlen($message) > strlen($msg_erreur)) {
 
  echo $message;
 
// sinon c'est ok 
} else {
 include('connexion.php');
$Nom_jeune = mysqli_real_escape_string($bdd,($_POST['Nom_jeune']));
$Prenom_jeune = mysqli_real_escape_string($bdd,($_POST['Prenom_jeune'])); 
$Adresse_mail_jeune = mysqli_real_escape_string($bdd,($_POST['Adresse_mail_jeune'])); 
$Mot_de_passe_jeune = mysqli_real_escape_string($bdd,($_POST['Mot_de_passe_jeune']));
$Date_de_naissance_jeune = mysqli_real_escape_string($bdd,($_POST['Date_de_naissance_jeune']));
$Sexe_jeune = mysqli_real_escape_string($bdd,($_POST['Sexe_jeune']));	
$Numero_de_telephone_mobile_jeune = mysqli_real_escape_string($bdd,($_POST['Numero_de_telephone_mobile_jeune'])); 
	
	
	
  $req = "INSERT INTO jeune VALUES ('', '".$Nom_jeune."','".$Prenom_jeune."', '".$Adresse_mail_jeune."','".$Mot_de_passe_jeune."','".$Date_de_naissance_jeune."','".$Sexe_jeune."','".$Numero_de_telephone_mobile_jeune."', now())";
  $res = $bdd->query($req);
 
  if ($res) {
    echo $msg_ok;
	  
  } else {
    echo mysql_error();
  }
 
}
?>

Re: Impossible de se conencter à la base de donnée

par LerikalBless » 11 mai 2017, 17:31

Bonjour, merci de ta réponse, il me donne comme réponse :

Warning: mysqli_real_escape_string() expects exactly 2 parameters, 1 given in C:\wamp64\www\Mon_projet2.0\traitement.php on line 30

Merci de ton aide voici mon code PHP modifier :
<?php
$msg_erreur = "Erreur. Les champs suivants doivent être obligatoirement remplis:
<br/><br/>";
$msg_ok = "Votre demande a bien été prise en compte.";
$message = $msg_erreur;
// vérification des champs 
if (empty($_POST['Nom_jeune'])) 
  $message .= "Votre Nom<br/>";
if (empty($_POST['Prenom_jeune'])) 
  $message .= "Votre prénom<br/>";
if (empty($_POST['Adresse_mail_jeune'])) 
  $message .= "Votre email<br/>";
if (empty($_POST['Mot_de_passe_jeune'])) 
  $message .= "Votre mot de passe<br/>";
if (empty($_POST['Date_de_naissance_jeune'])) 
  $message .= "Votre date de naissance<br/>";
if (empty($_POST['Sexe_jeune'])) 
  $message .= "Votre sexe<br/>";
if (empty($_POST['Numero_de_telephone_mobile_jeune'])) 
  $message .= "Votre numero de téléphone<br/>";
 
// si un champ est vide, on affiche le message d'erreur
if (strlen($message) > strlen($msg_erreur)) {
 
  echo $message;
 
// sinon c'est ok 
} else {
 include('connexion.php');
$Nom_jeune = mysqli_real_escape_string($_POST['Nom_jeune']);
$Prenom_jeune = mysqli_real_escape_string($_POST['Prenom_jeune']); 
$Adresse_mail_jeune = mysqli_real_escape_string($_POST['Adresse_mail_jeune']); 
$Mot_de_passe_jeune = mysqli_real_escape_string($_POST['Mot_de_passe_jeune']);
$Date_de_naissance_jeune = mysqli_real_escape_string($_POST['Date_de_naissance_jeune']);
$Sexe_jeune = mysqli_real_escape_string($_POST['Sexe_jeune']);	
$Numero_de_telephone_mobile_jeune = mysqli_real_escape_string($_POST['Numero_de_telephone_mobile_jeune']); 
	
	
	
  $req = "INSERT INTO jeune VALUES ('', '".$Nom_jeune."','".$Prenom_jeune."', '".$Adresse_mail_jeune."','".$Mot_de_passe_jeune."','".$Date_de_naissance_jeune."','".$Sexe_jeune."','".$Numero_de_telephone_mobile_jeune."', now())";
  $res = $bdd->query($req);
 
  if ($res) {
    echo $msg_ok;
  } else {
    echo mysql_error();
  }
 
}
?>

Re: Impossible de se conencter à la base de donnée

par Spols » 11 mai 2017, 08:12

Tu te connecte avec l'extension php mysqli et ensuite tu tente d'utiliser des fonction de mysql (sans le i) qui est une extension obsolète désormais. modifie tes fonctions mysql_real_escape_string en mysqli_real_escape_string ca devrait aider.

Je te déconseillerai de garder le compte root sans mot de passe pour te connecter, utilise phpmyadmin pour créer un utilisateur dédié à ta base de données et utilise le.

Impossible de se conencter à la base de donnée

par LerikalBless » 11 mai 2017, 06:10

Bonjour, je n'arrive pas a me connecter a ma base de donnée. Je veux pouvoir transmettre les informations du formulaire dans ma base de donnée, mais malheureusement, il me renvoie comme code d'erreur :
" mysql_real_escape_string(): Acc�s refus� pour l'utilisateur: ''@'@localhost' (mot de passe: NON) in C:\wamp64\www\Mon_projet2.0\traitement.php on line 30 "
" Warning: mysql_real_escape_string(): A link to the server could not be established in C:\wamp64\www\Mon_projet2.0\traitement.php on line 30 "
" Deprecated: mysql_real_escape_string(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO "

Voici mon code HTML :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//FR">
<html><head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Ajout d'un nouvel adhérent</title>

<link rel="stylesheet" type="text/css" href="css/styles.css">
</head>
<body >
<header>
<div class="logo"><img src="images/logo.png" alt=""></div>
<div class="titre"><h1>Service des sports de la ville d’Agnetz</h1></div>	
</header>
<div class="content">
	<nav>
		<ul>
			<li><a href="index.html">Accueil</a></li>
			<li><a href="inscription.html">Inscription</a></li>
			<li><a href="#">Connexion Jeune</a></li>
			<li><a href="#">Connexion Parents</a></li>
			<li><a href="#">Les Sports</a></li>
			<li><a href="#">Les Coachs</a></li>
			<li><a href="#">À propos</a></li>
			<li><a href="#">Nous contacter</a></li>
		</ul>
	</nav>
	<div class="formulaire">
		<h2>Ajout d'un nouvel adhérent</h2>
		
		<form method="post" action="traitement.php">
			<fieldset>
				<legend class="img" align="center">Veuillez remplir
				ce formulaire</legend>

				Nom :<br>
				<input name="Nom_jeune" type="text"><br>
				Prenom :<br>
				<input name="Prenom_jeune" type="text" ><br>
				Adresse e-mail :<br>
				<input name="Adresse_mail_jeune" type="email" ><br>
				Mot de passe :<br>
				<input name="Mot_de_passe_jeune" type="password" ><br>
				Date de naissance : <br>
				<input name="Date_de_naissance_jeune" type="date" ><br>
				Téléphone :<br>
				<input name="Numero_de_telephone_mobile_jeune" type="tel" ><br>
				Sexe :<input name="Sexe_jeune" value="m" type="radio">
				masculin <input name="Sexe_jeune" value="f" checked="checked" type="radio" > féminin<br>
				<input value="VALIDER" type="submit" >
			</fieldset>
		</form>
	</div>
</div>
<footer></footer>
</body>
</html>
Voici mon code traitement php :
<?php
$msg_erreur = "Erreur. Les champs suivants doivent être obligatoirement remplis:
<br/><br/>";
$msg_ok = "Votre demande a bien été prise en compte.";
$message = $msg_erreur;
// vérification des champs 
if (empty($_POST['Nom_jeune'])) 
  $message .= "Votre Nom<br/>";
if (empty($_POST['Prenom_jeune'])) 
  $message .= "Votre prénom<br/>";
if (empty($_POST['Adresse_mail_jeune'])) 
  $message .= "Votre email<br/>";
if (empty($_POST['Mot_de_passe_jeune'])) 
  $message .= "Votre mot de passe<br/>";
if (empty($_POST['Date_de_naissance_jeune'])) 
  $message .= "Votre date de naissance<br/>";
if (empty($_POST['Sexe_jeune'])) 
  $message .= "Votre sexe<br/>";
if (empty($_POST['Numero_de_telephone_mobile_jeune'])) 
  $message .= "Votre numero de téléphone<br/>";
 
// si un champ est vide, on affiche le message d'erreur
if (strlen($message) > strlen($msg_erreur)) {
 
  echo $message;
 
// sinon c'est ok 
} else {
 include('connexion.php');
$Nom_jeune = mysql_real_escape_string($_POST['Nom_jeune']);
$Prenom_jeune = mysql_real_escape_string($_POST['Prenom_jeune']); 
$Adresse_mail_jeune = mysql_real_escape_string($_POST['Adresse_mail_jeune']); 
$Mot_de_passe_jeune = mysql_real_escape_string($_POST['Mot_de_passe_jeune']);
$Date_de_naissance_jeune = mysql_real_escape_string($_POST['Date_de_naissance_jeune']);
$Sexe_jeune = mysql_real_escape_string($_POST['Sexe_jeune']);	
$Numero_de_telephone_mobile_jeune = mysql_real_escape_string($_POST['Numero_de_telephone_mobile_jeune']); 
	
	
	
  $req = "INSERT INTO jeune VALUES ('', '".$Nom_jeune."','".$Prenom_jeune."', '".$Adresse_mail_jeune."','".$Mot_de_passe_jeune."','".$Date_de_naissance_jeune."','".$Sexe_jeune."','".$Numero_de_telephone_mobile_jeune."', now())";
  $res = $bdd->query($req);
 
  if ($res) {
    echo $msg_ok;
  } else {
    echo mysql_error();
  }
 
}
?>
Voici mon code de connexion php :
<?php
$hote="localhost";
$login="root";
$mdp="";
$nombdd="service_des_sports"; // Nom de la base de données
$bdd=mysqli_connect($hote, $login, $mdp, $nombdd);
if (!$bdd) {
    echo 'Erreur de connexion (' . mysqli_connect_errno() . ') ' . mysqli_connect_error();
}
?>