这是表单处理
if(isset($_POST['clear'])) {
mysql_query("DELETE FROM md5dictionary");
}
if(isset($_POST['submit'])) {
if(strlen($_POST['keywords']) < 1 || ctype_space($_POST['keywords']) == true) {
$errors['blank'] = "<span class='error'> Please insert a word </span>";
} else {
$newword = $_POST['keywords'];
$db_checkExist = mysql_query('SELECT * FROM md5dictionary WHERE keywords="' . $newword . '"');
echo mysql_num_rows($db_checkExist) . "<br />";
if(mysql_num_rows($db_checkExist) > 0) {
echo "outside else " . mysql_num_rows($db_checkExist);
$finalResult = "<span class='error'> Failed!!! </span>";
} else {
echo "inside else " . mysql_num_rows($db_checkExist);
$md51 = md5($newword);
$md52 = md5($md51);
mysql_query('INSERT INTO md5dictionary(keywords, mdFive, mdFive2) VALUES ("' . $newword . '", "' . $md51 . '", "' . $md52 . '")');
$finalResult = "<span class='success'> Thank you! Wanna add another one? </span>";
}
}
}
这是表格
<form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post">
<fieldset> Input Form </fieldset>
<label for="keywords"> Input new Keywords into dictionary: </label>
<?php echo $finalResult; ?>
<?php echo $errors['blank']; ?>
<input name="keywords" type="text" />
<input name="submit" type="submit" value="Add!!" />
<input name="clear" type="submit" value="Clear Database" />
</form>
<h1> Datas: </h1>
<?php
$result = mysql_query("SELECT * FROM md5dictionary");
$rows = mysql_num_rows($result);
for ($i = 0; $i < $rows; ++$i) {
echo "Data " . $i . "<br />";
echo "keywords: " . mysql_result($result, $i, "keywords") . "<br />";
echo "md5: " . mysql_result($result, $i, "mdFive") . "<br />";
echo "md5_2: " . mysql_result($result, $i, "mdFive2") . "<br />";
}
?>
结果如下:http://md5dictionary.hoangminhdat.com
问题:为什么一直说“失败!”为什么它已成功将信息插入我的数据库? 应该没有拼写错误
我知道通过我的愚蠢问题会耗费时间,但我自己无法解释!
答案 0 :(得分:2)
我测试了您提供的网络链接。
如果我插入一个单词,那么我会'在其他地方'并且看起来它已插入。
如果我再次快速输入这个词,那么我就会'失败'。
所以我认为没有问题,这不是你想要实现的吗? 否则,请重新考虑您的问题并改进不适合您和何时的问题。
修改强> 如果您想要成功的消息,那么您需要另一个消息:
echo $finalResult;
定义$ finalResult后。
答案 1 :(得分:0)
当你说它插入时,我不确定你的意思,它给出了“失败”。 你是否真的意味着“INSERT INTO md5dictionary ...”被执行了,你有“失败的!!!”代码显示?
如果是这样,我建议你调查和修改表单流,因为最有可能调用自身,表单尝试运行两次,第二次有空值。
这就是我想出的。
祝你有个美好的一天, S上。