Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Vários valores suspensos inseridos em uma única linha e não em várias linhas


Em primeiro lugar, por favor, não use mysql_* como está obsoleto, use mysqli_ ou PDO em vez de.

agora, se você quer apenas os valores das opções, faça assim
<select name="game[]" multiple="multiple">
      <option value="1">Football</option>
      <option value="2">Volleyball</option>
      ...
</select>

desta forma, você terá 1,2,.... . Espero que seja isso que você está procurando.

e se você estiver procurando por uma consulta como esta
INSERT INTO tb (`game`) VALUES ('Football'),('Volleyball')

assumindo que id campo é incrementado automaticamente, então altere o código da seguinte forma:
código html
<select name="game[]" multiple="multiple">
  <option>Football</option>
  <option>Volleyball</option>
  ...
</select>

código php

$choice=$_POST['game'];   
$sql = "INSERT INTO tb (`game`) VALUES ";
$sqlValues= null;
foreach($choice as $ch) {
    $sqlValues .= "('$ch')," ;                     
}
$sql.=rtrim($sqlValues, ",");                      
echo $sql;

desta forma você pode obter

id         game
1          cricket
2          football