从数据库中插入并选择字符串数组。

时间:2011-09-01 21:44:03

标签: php codeigniter

我希望所有字符串数组连续插入数据库,然后在其他地方只选择它们的第一部分(字符串数组)并通过循环foreach显示它们(第一部分字符串数组)点。

我可以执行哪些功能[serializedimplodejson_encode?]?你能举个例子吗?

示例:
data(strings array):

  
      
  1. “input name ='units []'”= value =>你好,怎么样,在哪里
  2.   
  3. “input name ='units []'”= value =>嗨,什么,其他
  4.   

我想要这个输出:

  
      
  • 你好
  •   
  •   

1 个答案:

答案 0 :(得分:0)

正确的方法是使用'implode'并使用while和一个mysql_fetch函数循环:

$units = $_REQUEST['units'];
$units = array_map( 'mysql_real_escape_string', $units );
mysql_query( "INSERT INTO <table name> VALUES('" . 
    implode("'),('", $units)."')" );

然后:

$q = mysql_query( 'select * from <table name>' );
while( $row = mysql_fetch_row( $q ) )
{
   echo $row[0];
}

但有时,serialize是更好的选择:

$units = $_REQUEST['units'];
$units = array_map( 'mysql_real_escape_string', $units );
mysql_query( "INSERT INTO <table name> VALUES('" . 
    serialize($units)."')" );

然后:

$q = mysql_query( 'select * from <table name>' );
while( $row = mysql_fetch_row( $q ) )
{
   $units = unserialize( $row[0] );
}
var_dump($units); // use foreach here.