Php 我可以在mysql中保存一个包含多个值的列吗?

Php 我可以在mysql中保存一个包含多个值的列吗?,php,mysql,Php,Mysql,我想在同一列中添加许多值,我试着这样做 $strsaveImage="insert into image(Image_Id,Image_Name,Image_Detail ,Image_Date)"; $strsaveImage=$strsaveImage."values('$Profile_id','$target_path',$Mouths && $Bodies,'$date')"; $objsaveImage= mysql_query($strsave

我想在同一列中添加许多值,我试着这样做

$strsaveImage="insert into  image(Image_Id,Image_Name,Image_Detail  ,Image_Date)";
    $strsaveImage=$strsaveImage."values('$Profile_id','$target_path',$Mouths && $Bodies,'$date')";
    $objsaveImage=  mysql_query($strsaveImage) or die ("Error Query [" . $strsaveImage . "]"); 
<input type="text" class="form-control" name="Bodies" >
<input type="text" class="form-control" name="Mouths" >
输入是这样的

$strsaveImage="insert into  image(Image_Id,Image_Name,Image_Detail  ,Image_Date)";
    $strsaveImage=$strsaveImage."values('$Profile_id','$target_path',$Mouths && $Bodies,'$date')";
    $objsaveImage=  mysql_query($strsaveImage) or die ("Error Query [" . $strsaveImage . "]"); 
<input type="text" class="form-control" name="Bodies" >
<input type="text" class="form-control" name="Mouths" >

我想在“图像细节”列中添加一些值,如“身体”和“嘴巴”。 我应该使用哪种方法,我尝试了运算符,但失败了。请帮我解决这个问题。谢谢:)

  • 确保您的输入是安全的
  • 将要保存在列中的数据制作一个数组
  • serialize()
    您的数组
  • 在检索时,
    unseralize()
    您的数组

    $imageDetail = serialize(array('Mouths' => $Mouths, 'Bodies' => $Bodies));    
    $strsaveImage="insert into  image(Image_Id,Image_Name,Image_Detail ,Image_Date)";
    $strsaveImage=$strsaveImage."values('$Profile_id','$target_path',$imageDetail,'$date')";
    $objsaveImage=  mysql_query($strsaveImage) or die ("Error Query [" . $strsaveImage . "]"); 
  • 然后,在访问数据时

    $imageDetail = unserialize($queryData['Image_Detail']);
    // Results in:
    array(
         'Mouths' => 'ValueOfMouths',
         'Bodies' => 'ValueOfBodies',
    )
    
  • 确保您的输入是安全的
  • 将要保存在列中的数据制作一个数组
  • serialize()
    您的数组
  • 在检索时,
    unseralize()
    您的数组

    $imageDetail = serialize(array('Mouths' => $Mouths, 'Bodies' => $Bodies));    
    $strsaveImage="insert into  image(Image_Id,Image_Name,Image_Detail ,Image_Date)";
    $strsaveImage=$strsaveImage."values('$Profile_id','$target_path',$imageDetail,'$date')";
    $objsaveImage=  mysql_query($strsaveImage) or die ("Error Query [" . $strsaveImage . "]"); 
  • 然后,在访问数据时

    $imageDetail = unserialize($queryData['Image_Detail']);
    // Results in:
    array(
         'Mouths' => 'ValueOfMouths',
         'Bodies' => 'ValueOfBodies',
    )
    

    您可以将其更改为CSV(逗号分隔值),但这将严重限制搜索,如果存在一对多关系,通常最好创建另一个表(或2)。无论如何,这是什么位
    $mouts&&$Bodies
    可能是您的错误。没有错误,只保存值“1”,我在这些字段中输入的内容。@artisiticphoenix因为您正在执行比较操作,例如,
    if($mouts&&$body)
    这将具有相同的有效输出。如果其中一个值为0',false或Null,它将为您提供一个0,您可以像
    $mouts一样操作$正文
    concatenation,但您必须理解,您正在丢弃信息。例如,它们来自哪个字段,因此您在构建编辑器、搜索或分离数据时会遇到困难。最好为其添加另一个字段。您可以将其更改为CSV(逗号分隔值),但这将严重限制搜索,如果存在一对多关系,通常最好创建另一个表(或2)。无论如何,这是什么位
    $mouts&&$body
    可能是您的错误。没有错误,它只保存值“1”,我在这些字段中输入的内容。@artisiticphoenix因为您正在执行比较操作,例如,
    if($mouts&&$body)
    这将具有相同的有效输出。如果其中一个值为0',false或Null,它将为您提供一个0,您可以像
    $mouts一样操作$正文
    concatenation,但您必须理解,您正在丢弃信息。例如,它们来自哪个字段,因此您在构建编辑器、搜索或分离数据时会遇到困难。最好为它添加另一个字段。