【发布时间】:2013-08-31 15:52:53
【问题描述】:
<!DOCTYPE>
<html>
<head>
<meta charset=utf-8" />
<title> data input form </title>
<link rel="stylesheet" type="text/css" href="css/form.css"/>
</head>
<body>
<h1> Insert data here</h1>
<form method="get" action="insert-data.php">
<input type="hidden" name="submitted" value="true" />
<fieldset>
<ul>
<li><label> English Word <input type="text" name="englishWord"/> </label></li>
<li><label> Beginner German <input type="text" name="beginnerGerman"/> </label></li>
</ul>
<input type="submit" value="add new record" />
</fieldset>
</form>
<? php
echo $newrecord;
?>
</body>
</html>
<?php
//connect to database
$host = "localhost";
$username = "root";
$password = "mypass";
$database = "dictionary";
$table = "engdic";
mysql_connect("$host", "$username", "$password") or die(mysql_error());
mysql_select_db("$database") or die(mysql_error());
$englishWord = $_GET['englishWord'];
$beginnerGerman=$_GET['beginnerGerman'];
$mysql = "INSERT INTO $table (englishWord,beginnerGerman) VALUES ('$englishWord','<div class='beginner_german'>$beginnerGerman</div>')";
if(!mysql_query($mysql))
die(mysql_error());
echo "data inserted";
mysql_close();
?>
//INSIDE DATABASE
<div class=`beginner_german`>Beginner German Word</div>
所以我将有一个输入表单,用户将在其中将翻译词添加到数据库中,当用户添加让我们说单词 Apple 时,它也会将带有 css 类的 div 添加到数据库中。这样当另一个用户搜索单词 Apple 时我可以使用 css 类对其进行样式设置。我的问题是 当我尝试使用 class="beginner_german" 添加 div 时,我在 php 中遇到错误,当我使用 clas='beginner_german' 时,它可以很好地插入数据库,但是当我无法调用 css 类时,因为语法必须是 class="初学者德语”。那么解决办法是什么。感谢您的宝贵时间。
【问题讨论】:
-
无关: 您的查询容易受到 SQL 注入的攻击。请正确转义用户输入。此外,
mysql_*函数不再支持,它们是 officially deprecated,不再维护,将来会是 removed。您应该使用PDO 或MySQLi 更新您的代码,以确保您的项目在未来的功能。 -
您正在输出一个未定义的变量 $newrecord。第一个错误。
标签: php mysql css database interaction