【发布时间】:2014-05-21 08:22:20
【问题描述】:
我的数据库中有一个表,其中包含我的网站翻译成的语言 .. 假设我有 EN、AR 和 KU
表格如下:
<form id="addTags">
<label>Friendly Name</label><br />
<input type="text" name="FriendlyName" id="FriendlyName" /><br />
<span style="font-size:9pt;color:#555;"><i>This is used to mark the Category</i></span><br />
<label>URL ShortCode</label><br />
<input type="text" name="ShortName" id="ShortName" /><br />
<h3>
Translate for multilingual use <span style="font-size:9pt;color:red;"><i>*Required</i></span>
</h3><label>عربي</label><br />
<input type="text" name="AR" id="AR" /><br />
<label>English</label><br />
<input type="text" name="EN" id="EN" /><br />
<label>Kurdish</label><br />
<input type="text" name="KU" id="KU" /><br />
<input type="submit" value="Add Cat" class="button" align="center" />
</form>
最后三个文本输入是根据我提到的表中的语言动态添加的。 我的问题是.. 如果我添加第四种语言,如何在我的 php 脚本中动态捕获 $_POST 参数?我正在考虑从同一张表中获取 Langs 并将它们分配为变量。但是有可能做这样的事情吗?
<?
while($lang =$result->fetch_array()){
$langID=$lang['langid'];
$input_$langID=$_POST['$langID'];
}
?>
快速编辑 做了类似的事情..这是快速结果
$get_lang_id = $link->query("SELECT * FROM `tjcgLangs`");
$where = "";
$FriendlyName=mysqli_real_escape_string($link,$_POST['FriendlyName']);
$ShortName=mysqli_real_escape_string($link,$_POST['ShortName']);
$art_lang=$link->query("INSERT INTO table1 (tagFriendlyName,tagShortName) VALUES ('$FriendlyName','$ShortName');");
$insert_id=$link->insert_id;
while($get_lang=$get_lang_id->fetch_array(MYSQLI_ASSOC)){
$language = $get_lang['langISOCode'];
$where .= "($insert_id,'".$_POST[$language]."',".$get_lang['langID']."),";
}
$where = rtrim($where, ",");
$art_lang_m=$link->query("INSERT INTO Table2 (tagMRootID,tagMDispName,tagMLang) values $where");
$get_lang_id->free();
$link->close();
echo "DONE";
【问题讨论】:
-
你应该learn how to use the label element properly。如果没有 for 属性或其中的表单控件,标签是无用的。