<?php
//fonction de connexion à la bd
function connexion_bd(){
$nom_du_serveur ="localhost";
$nom_de_la_base ="db";
$nom_utilisateur ="user";
$passe ="password";
$link = mysqli_connect ($nom_du_serveur,$nom_utilisateur,$passe,$nom_de_la_base);
if (!$link) {
die('Connexion impossible : ' . mysqli_connect_error() . "<br/>");
}
}
function close_bd()
{
mysql_close();
}
?>
Je ne vois vraiment pas d'ou peut venir le probleme de connexion, d'autant plus que j'utilse formulaire_bd.php ailleurs dans le programme et ca fonctionne.
Ce que je ne comprends pas c'est que j'utilise ailleurs mysql comme ceci :
<?php
if(isset($_POST['Envoyer'])){
//si l'email vide
if(empty($_POST['email'])){
echo '<div id="erreur">Veuillez saisir un email!</div>';
}
//si l'email est invalide
else if (!preg_match("$[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,4}$",$_POST['email'])){
echo '<div id="erreur">Veuillez saisir un email valide!</div>';
}
//c'est ok
else{
//connexion à la bd
include("auth-data_bd.php");
connexion_bd();
global $link;
//On sélectionne les données
$index = mysqli_query($link,"SELECT pseudo,pass FROM LOGIN WHERE email='".mysqli_real_escape_string($link,$_POST['email'])."'");
//si pas de résultat
if(mysqli_num_rows($index) == 0)
{
echo '<div id="erreur">Aucunes données ne correspond à votre saisie!</div>';
}
//si c'est ok
else{
//on boucle pour récupérer le pseudo et pass du membre pour lui envoyer
while($result = mysqli_fetch_array($index)){
//email de celui qui envoie
$webmaster = $email_webmaster;
//email de celui qui reçoit
$a_qui_j_envoie = $_POST['email'];
//sujet
$subject = "Vos identifiants";
//message
$msg = "Bonjour <br/><br/>";
$msg .= "Vous avez demandé à recevoir vos identifiants :<br/>Pseudo : ".htmlspecialchars($result['pseudo'])."<br/>Mot de passe : ".$result['pass']."<br/><br/>";
$msg .= "Domus";
//permet de savoir qui envoie le mail et d'y répondre
$mailheaders = "From: $webmaster\n";
$mailheaders .= "MIME-version: 1.0\n";
$mailheaders .= "Content-type: text/html; charset= utf-8";
//on envoie l'email
mail($a_qui_j_envoie, $subject, $msg, $mailheaders);
//on laisse un message de confirmation
echo '<div id="ok">Vos identifiants ont été envoyé sur votre boite email.</div> <script type="text/javascript"> window.setTimeout("location=(\'index.php?recup=ok\');",3000) </script>';
}
}
mysqli_close();
}
}
?>
et la je n'est aucun probleme avec la variable global $link tout fonctionne.
Merci PHILODICK probleme résolu j'avais oublié de declrarer la variable global dans formlaire_bd.php
mysqli_query() expects parameter 1 to be mysqli
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
N'oubliez pas d'activer les erreurs PDO.
N'oubliez pas d'activer les erreurs PDO.
N'oubliez pas d'activer les erreurs PDO.
N'oubliez pas d'activer les erreurs PDO.
N'oubliez pas d'activer les erreurs PDO.