这是我的代码:
<?php
echo '<fieldset><form action="gerer_adherents.php" method="post" >
<h3>Identification pour gérer les adhérents :<br></h3>
Hôte :<input type="text" name="hote"/><br>
BDD :<input type="text" name="bdd"/><br>
Utilisateur :<input type="text" name="user"/><br>
Mot de passe :<input type="text" name="password"/><br>
<input type="hidden" name="validation" /><br>
<input type="submit" name="bouton" value="Envoyer" /></fieldset>';
$host = filter_input(INPUT_POST, 'hote');
$database = filter_input(INPUT_POST, 'bdd');
$user = filter_input(INPUT_POST, 'user');
$password = filter_input(INPUT_POST, 'password');
if (isset($host) && isset($database) && isset($user) && isset($password)) {
try
{
//$base = new PDO('mysql:host=localhost;dbname=court;charset=utf8', "root", "");
$base = new PDO('mysql:host=' . $host . ';dbname=' . $database . ';charset=utf8', $user, $password);
var_dump($host, $database, $user, $password);
}
catch (exception $e) {
die('Erreur ' . $e->getMessage());
}
echo '
<form action="gerer_adherents.php" method="post">
<h3>Ajouter une personne :<br></h3>
Nom :<input type="text" name="nom"/><br>
Prenom :<input type="text" name="prenom"/><br>
Date de naissance :<input type="date" name="date"/><br>
Téléphone :<input type="text" name="tel"/><br>
Ville :<input type="text" name="ville"/><br>
Mail :<input type="text" name="mail"/><br>
Login :<input type="text" name="login"/><br>
Password :<input type="text" name="password2"/><br>
Re-Password :<input type="text" name="repassword2"/><br>
<input type="submit" name="bouton2" value="Envoyer" />
</form>';
$nom = filter_input(INPUT_POST, 'nom');
$prenom = filter_input(INPUT_POST, 'prenom');
$date = filter_input(INPUT_POST, 'date');
$tel = filter_input(INPUT_POST, 'tel');
$ville = filter_input(INPUT_POST, 'ville');
$mail = filter_input(INPUT_POST, 'mail');
$login = filter_input(INPUT_POST, 'login');
$password2 = filter_input(INPUT_POST, 'password2');
$repassword2 = filter_input(INPUT_POST, 'repassword2');
if (isset($nom) && isset($prenom) && isset($date) && isset($tel) && isset($ville) && isset($mail) && isset($login) && isset($password2) && isset($repassword2)) {
if ($nom && $prenom && $date && $tel && $ville && $mail && $login && $password2 && $repassword2) {
if ($password2 == $repassword2) {
var_dump($nom, $prenom, $date, $tel, $ville, $mail, $login, $password2);
var_dump($host, $database, $user, $password);
$base->exec("INSERT INTO adherent (`nom`, `prenom`, `date`, `tel`, `ville`, `mail`,`login`, `password`) VALUES ('$nom','$prenom','$date','$tel','$ville','$mail','$login','$password2')");
$base->exec("CREATE USER '$login'@'localhost' IDENTIFIED BY '$password2';GRANT ALL PRIVILEGES ON `court`.* TO '$login'@'localhost';");
echo ("<SCRIPT LANGUAGE='JavaScript'>window.alert('Adhérent crée, redirection en cours....')window.location.href='administration.php';</SCRIPT><NOSCRIPT><a href='administration.php'>Adhérent crée, cliquez-ici, si vous n'êtes pas redirigé.</a></NOSCRIPT>");
} else {
echo "les 2 password doivent etre identique";
}
} else {
echo "Veuillez saisir tous les champs";
}
} else {
echo "ok";
}
}
?>
</body>
我编写了这段代码,允许我连接到MySql数据库,该数据库由两种形式组成(至少对于连接过程而言)。
第一个用于连接数据库,第二个用于执行查询。
我的问题是,我能够连接硬编码值
$base = new PDO('mysql:host=localhost;dbname=court;charset=utf8', "root", "");
但如果我想连接这一行,似乎查询无法正常工作
$base = new PDO('mysql:host='.$host.';dbname='.$database.';charset=utf8', $user, $password);
当我尝试从第二个表单发送查询时,只删除了第一个表单的值,所以我不知道如何保留第一个表单中输入的一部分的值。