Heim >Backend-Entwicklung >PHP-Tutorial > 怎么把一个数组合适的插入到数据库

怎么把一个数组合适的插入到数据库

WBOY
WBOYOriginal
2016-06-13 13:30:36937Durchsuche

如何把一个数组合适的插入到数据库?
html代码:


图片1
图片2
图片3


php代码:
//图片附件区
$attachment = $this->var['gp_attachment'];

foreach($attachment as $value){
p($value);
//把值保存到数据库
}

数组格式
Array
(
  [0] => 1.jgp
  [1] => 2.jpg
)
 php: 5.3.10


------解决方案--------------------
在数据库中定义:

SQL code

data varchar(100) not null
<br><font color="#e78608">------解决方案--------------------</font><br>
PHP code
foreach($attachment as $v)
     mysql_query("insert...........");  //不知道你的字段,只能这么写了.
<br><font color="#e78608">------解决方案--------------------</font><br>把数组的值取出来存到库中,用特殊字符隔开,需要用的时候取出来再处理
<br><font color="#e78608">------解决方案--------------------</font><br>比较支持3楼的建议
<br><font color="#e78608">------解决方案--------------------</font><br>存储时候:<br>$date = "1.jgp/1.jgp";<br>用到时候:  <br>list($one, $two) = split ('[/.-]', $date);  <br>echo "one: $one;two: $two<br>\n";<br>  
<br><font color="#e78608">------解决方案--------------------</font><br>第一,你觉得你是字符数组,还是数字数组,如果用数字数组,用foreach($attachment as $v)<br><br>、、<br>第二,是字符数组,就用三楼的,把字符隔开,,一起存入数据库。
<br><font color="#e78608">------解决方案--------------------</font><br>所有附件应该都属于一个主题 而且也不需要经常修改,一个字段搞定.需要的时候还原一下<br><br>
PHP code

$arr=array('1.jpg','2.jpg','3.jpg');
$value=serialize($arr);
<br><font color="#e78608">------解决方案--------------------</font><br>无论如何,请使用addslashes之后入库,没有人知道用户提交的到底是什么。<br><br>上面的json_encode,serialize,之后都要addslashes,避免引号或者用户恶意注入带来的不必要的麻烦,出库时候strip_slashes。<br>
<br><font color="#e78608">------解决方案--------------------</font><br>序列化
<br><font color="#e78608">------解决方案--------------------</font><br>
探讨

无论如何,请使用addslashes之后入库,没有人知道用户提交的到底是什么。

上面的json_encode,serialize,之后都要addslashes,避免引号或者用户恶意注入带来的不必要的麻烦,出库时候strip_slashes。
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn