2016-12-02 56 views
-1

想问问雅,有从combobox插入数据的时间问题的数据是comboboxnya动态,所以时间从我们选择的组合框中插入数据hanya1像“新”这样的词是安全的,但是,如果我们选择谁是多于一个单词的时候,例如“纽约”,那么就是仅仅将单词“新”单词插入数据库谁palembangnya不来保存,如何雅认为”解决方案从combobox保存数据只存储在一个单词中,下一个单词不存储

下面的脚本:。

<Form method = "post" action = ""> 
<Select name = "city"> <? Php 

require_once ('../ library/koneksi.php'); 
$ Result = "SELECT * FROM city"; 
$ Query = mysql_query ($ result); 
while ($ row = mysql_fetch_assoc ($ query)) { 
$ City = $ row ['city']; 
echo "<option value = $ city> $ city </ option>"; 
} 
?> </ Select> 
<Input type = "submit" name = "submit" value = "Save"> 
</ Form> 

<? Php 
if (isset ($ _ POST ['submit'])) { 
$ City = $ _ POST ['city']; 
$ Insert = mysql_query ("INSERT INTO city (city) values ('$ city')"); 
} 
?> 
+1

你确定这个代码即使所有的空间存在的工作大开? – Dekel

+0

我试过了,现在的问题是数据直接从数据库中获得动态的dombobox上显示的数据,当数据被存储时,只存储在刚开始时只存储诸如“New York”的单词只有新单独说。 –

+1

我记得你之前发布过这个并删除了这个问题。 TBH,我不知道你在问什么,我现在也不知道。另外,你的代码包含很多不应该有的空间,但在其他问题中不包含空格。 –

回答

1

你需要引用的属性值

echo "<option value ='$city'>$city </ option>"; 

您还需要修复您的间距问题,更新数据库驱动程序(PDO或mysqli),并开始使用参数化查询。

这是SQL注入(或者更确切地说,该位)

$Insert = mysql_query ("INSERT INTO city (city) values ('$city')"); 
+0

这是我想在他们删除的答案中张贴的内容,但担心会有一个深深的兔子洞。当然希望它不会。 –

+0

@ Fred-ii-我得到了一些额外的污垢,我可以很快填补这个漏洞。 – chris85

+0

如果你需要一些帮助,我有一个相当不错的铁锹和手电筒;-) –

相关问题