我想用下拉列表将数据插入到mysql数据库中,但是我有这个错误: 解析错误:语法错误,第37行的C:\ wamp \ www \ oustadee \ profil.php中的意外'$ bio'(T_VARIABLE) 这是代码: Oustadee
<!-- PHP -->
<?php
session_start();
echo '<p>Bonjour,'. ' ' . $_SESSION['email'] . '!</p>';
if (isset($_POST['submit'])){
$bio=htmlspecialchars(trim($_POST['bio']));
$numero=htmlspecialchars(trim($_POST['numero']));
$ville=htmlspecialchars(trim($_POST['ville']));
$niveau=htmlspecialchars(trim($_POST['niveau']));
$matiere=htmlspecialchars(trim($_POST['matiere']));
try
{
$bdd = new PDO('mysql:host=localhost;dbname=test;charset=utf8', 'root', '',array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
}
catch (Exception $e)
{
die('Erreur : ' . $e->getMessage());
}
$req=$bdd->prepare('INSERT INTO membres(bio,numero,ville,niveau,matiere) VALUES ('$bio', '$numero','$ville', '$niveau', '$matiere')');
$req->execute(array(
'bio' => $bio,
'numero' => $numero,
'ville'=> $ville,
'niveau' => $niveau,
'matiere' => $matiere
));
}
?>
<!-- END PHP -->
<p> Vous pouvez commencer à créer votre annonce! </p>
<form method="post" action="profil.php">
<label for="bio">Bio:</label><br/>
<textarea rows="4" cols="50"></textarea><br/>
<label for="numero">Numéro:</label><br />
<input type="text"><br><br>
<label for="ville">Ville:</label>
<select name="ville" id="ville">
<option value="casablanca">Casablanca</option>
<option value="rabat">Rabat</option>
<option value="marrakech">Marrakech</option>
</select>
<label for="niveau">Niveau:</label>
<select name="niveau" id="niveau">
<option value="bac">Bac</option>
<option value="6éme">Prépa</option>
<option value="université">Université</option>
</select><p>
<label for="matiere">Matières:</label>
<input type="checkbox" value="mathematique">Mathématiques
<input type="checkbox" value="francais">Francais
<input type="checkbox" value="informatique">Informatique
<input type="checkbox" value="anglais">Anglais</p>
<input type="submit" value="Valider">
</form>
</body>
</html>
这是第37行:
$req=$bdd->prepare('INSERT INTO membres(bio,numero,ville,niveau,matiere) VALUES ('$bio', '$numero','$ville', '$niveau', '$matiere')');
答案 0 :(得分:2)
尝试做:
$req=$bdd->prepare("INSERT INTO membres(bio,numero,ville,niveau,matiere) VALUES ('$bio', '$numero','$ville', '$niveau', '$matiere')");
含义添加双引号。
答案 1 :(得分:0)
$req=$bdd->prepare('INSERT INTO membres(bio,numero,ville,niveau,matiere) VALUES (' . $bio . ', ' . $numero . ',' . $ville . ', ' . $niveau . ', ' . $matiere . ')');