我尝试使用tinybox Javascript。
现在我将尝试在提交时使用它,但我不知道如何!?
<div id="add">
<form name="addVoc" action="javascript:TINY.box.show('system/import.php',1,300,150,1);" method="post" onsubmit='return checkForm();'>
<img src="images/gb.png" width="13px" height="8px"> English: <input type="text" name="English" class="addBox" />
<img src="images/de.png" width="13px" height="8px"> German: <input type="text" name="German" class="addBoxD" /><br><br>
<img src="images/icon_hinweis.gif" width="10px" height="10px"> Add Voc <input type="submit" class="sbutton" value="Add"/>
</form>
现在它显示了我的小盒子,但没有任何反应,盒子是空的。
这是我的JS checkForm()
function checkForm(){
if (document.forms["addVoc"].English.value==""){
alert('Upps!');
return false;
}
if (document.forms["addVoc"].German.value==""){
alert('Upps!');
return false;
}
return true;
}
在我的Html Head中,我链接了Tinybox CSS和JS
<link rel="stylesheet" type="text/css" href="css/tinybox.css" />
<script type="text/javascript" src="js/tinybox.js"></script>
这是import.php:
<?php
include 'include/connect.php';
$db_link = mysql_connect (MYSQL_HOST, MYSQL_BENUTZER, MYSQL_KENNWORT);
if (!$db_link)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("vokabel", $db_link);
$sql="INSERT INTO word (Englisch, Deutsch)
VALUES
('$_POST[Englisch]','$_POST[Deutsch]')";
if (!mysql_query($sql,$db_link))
{
die('Error: ' . mysql_error());
}
echo "Vokabel wurde hinzugefügt!";
mysql_close($db_link)
?>
我是JS的新手,我希望有人可以帮助我...没有tinybox它可以很好地运作
非常感谢mutch
答案 0 :(得分:1)
因为你有
<input type="text" name="Deutsch" class="addBoxD" />
我怀疑
if (document.forms["addVoc"].German.value==""){
应该阅读
if (document.forms["addVoc"].Deutsch.value==""){
另外,你应该添加
return true;
到checkForm()
函数的最后一行。
我怀疑其中任何一个都能修复你的tinybox问题 - 这很可能是因为system/import.php
没有输出任何内容。
在浏览器中加载system/import.php
,确保获得所需的输出。如果您这样做,请确保system/import.php
是从当前页面到import.php
的正确相对路径。如果所有这些都是正确的,请修改问题以包含import.php
的源代码。
说了这么多,将这个小框称为表单的action
属性似乎有点奇怪 - 你确定这是你想要做的吗?你究竟想在这里实现什么目标?
修改强>
试试这个:
<强> HTML 强>
<div id="add">
<form name="addVoc" action="javascript:void(0);" onsubmit="return checkForm();">
<img src="images/gb.png" width="13px" height="8px"> Englisch: <input type="text" name="Englisch" class="addBox" />
<img src="images/de.png" width="13px" height="8px"> Deutsch: <input type="text" name="Deutsch" class="addBoxD" /><br><br>
<img src="images/icon_hinweis.gif" width="10px" height="10px"> Add Voc <input type="submit" class="sbutton" value="Add"/>
</form>
<强>的Javascript 强>
function checkForm(){
if (document.forms["addVoc"].Englisch.value=="") {
alert('Upps!');
return false;
}
if (document.forms["addVoc"].Deutsch.value==""){
alert('Upps!');
return false;
}
TINY.box.show('system/import.php?Englisch='+document.forms["addVoc"].Englisch.value+'&Deutsch='+document.forms["addVoc"].Deutsch.value,1,300,150,1);
return false;
}
<强> PHP 强>
<?php
include 'include/connect.php';
if (!$db_link = mysql_connect(MYSQL_HOST, MYSQL_BENUTZER, MYSQL_KENNWORT)) {
die('Konnte keine Verbindung: ' . mysql_error());
}
mysql_select_db("vokabel", $db_link);
$sql = "INSERT INTO `word`
(`Englisch`, `Deutsch`)
VALUES
('".mysql_real_escape_string($_GET['Englisch'])."','".mysql_real_escape_string($_GET['Deutsch'])."')";
if (!mysql_query($sql,$db_link)) {
die('Fehler: ' . mysql_error());
}
echo "Vokabel wurde hinzugefügt!";
mysql_close($db_link)
?>
另一个编辑
如果您使用的是Tinybox 2,请更改此行:
TINY.box.show('system/import.php?Englisch='+document.forms["addVoc"].Englisch.value+'&Deutsch='+document.forms["addVoc"].Deutsch.value,1,300,150,1);
对此:
TINY.box.show({url:'system/import.php',post:'Englisch='+document.forms["addVoc"].Englisch.value+'&Deutsch='+document.forms["addVoc"].Deutsch.value,width:300,height:150});
并将$_GET
中import.php
的两次出现更改为$_POST
。