2012-04-02 33 views
-1

我有一个文本框,它存储在用户的选项中。可能的选项是选项3到26,“真或假”和“是或否”。如何将文本框的值链接到数据库行然后插入它

<input type="text" name="gridValues" class="gridTxt maxRow" readonly="readonly" /> 

现在在我的数据库中,我有一个名为'Options'的表,其中包含'OptionId'和'OptionType'字段。在表中的行是这样的下面:

OptionId OptionType 
O1  A-C 
O2  A-D 
O3  A-E 

... 

O24  Yes or No 

现在我想做的事情,如果有可能的是,我想选择3-26和选项“真或假”和“是或否”从应用程序与数据库中的'OptionId'链接。

例如:

If textbox equals 3 then this equals OptionId 'O1' 
If textbox equals 4 then this equals OptionId 'O2' 
If textbox equals 5 then this equals OptionId 'O3' 

... 

If textbox equals Yes or No then this equals OptionId 'O24'. 

我希望这种情况发生,因为当我插入值,我想将其它数据库表中的“OptionId”当我需要。

这是可能做到的,如果有的话,是否有人知道如何将文本框值链接到'OptionId',然后将其插入到名为'Questions'的数据库表中?

+0

哇,这是一个严重的问题。 – 2012-04-02 23:11:32

+0

在某种形式或其他形式中,这个问题已经在SO之前提出过了,一个简单的谷歌搜索将会帮助你在需要更快的地方进行搜索。 – iambriansreed 2012-04-02 23:18:31

+0

这是我的第一个问题,我怎么一遍又一遍问这个问题? – user1309180 2012-04-02 23:22:03

回答

0

如果我理解正确的问题,那么你要基于另一个表的值在一个表中插入,这可以用一个INSERT SELECT如同行在

INSERT INTO questions SELECT optionid FROM options WHERE optiontype = $selected_option 
+0

嗨,我认为像这样的东西可以工作,但“selected_option”变量? – user1309180 2012-04-02 23:17:26

+0

它通常应该是像$ _POST [“gridValus”],但从你的问题,它看起来不像值直接映射到表值,如果是这种情况,那么你可能必须手动使用“switch case” – 2012-04-02 23:20:38

+0

你可以给我看一个关于你的代码的例子,在一个switch语句中有一个选项,然后我可以用它来为其他选项做它,它对我非常有用:) – user1309180 2012-04-02 23:24:31

1

不可能将文本框链接到mysql行。

您必须发送带有附加在文本框的onChange事件上的函数的ajax请求才能执行此操作。

我不打算覆盖ajax部分,但你可以使用jQuery来做这样的事情。

$("#yourtextbox").change(function() { 
    var textval = this.value; //get the value 
    $.post(
     "yourpage.php", //the page to update the text box based on the values 
     { 
      'variablename': textval, 
      'action' : 'update' 
     }, //send the values 
     function(data) { 
      //do something on the success 
     } 
    ); 
}); 
+0

可以显示ajax和onchange事件的例子,我从来没有在 – user1309180 2012-04-02 23:14:40

+0

@ user1309180之前使用过ajax,我用jQuery做了一个简单的例子。检查出 – Starx 2012-04-02 23:22:14

+0

他可以在不使用Ajax的情况下提交表单,它不会从问题中出现,他会寻找将其发送到服务器的方式,而是他想要一种方法将其插入到数据库中,但也许我是这个错误 – 2012-04-02 23:25:51

相关问题