sql >> Database >  >> RDS >> Mysql

Meerdere dropdown-waarden die in een enkele rij worden ingevoegd, niet in meerdere rijen

Gebruik ten eerste geen mysql_* aangezien het verouderd is, gebruik je mysqli_ of PDO in plaats daarvan.

als je nu alleen de waarden van opties wilt, doe het dan als volgt

<select name="game[]" multiple="multiple">
      <option value="1">Football</option>
      <option value="2">Volleyball</option>
      ...
</select>

op deze manier krijg je 1,2,.... . Ik hoop dat je dat zoekt.

en als u op zoek bent naar een zoekopdracht als deze

INSERT INTO tb (`game`) VALUES ('Football'),('Volleyball')

ervan uitgaande dat id veld wordt automatisch verhoogd, wijzig dan de code als volgt:
html code

<select name="game[]" multiple="multiple">
  <option>Football</option>
  <option>Volleyball</option>
  ...
</select>

php-code

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

op deze manier zou je

. kunnen krijgen
id         game
1          cricket
2          football


  1. Vreemde sleutels in Laravel 4-migratieprobleem

  2. Selecteer elke maand, ook al bestaat de maand niet in de mysql-tabel

  3. Beste nieuwe functies in PostgreSQL 14

  4. Hoe werkt COPY en waarom is het zoveel sneller dan INSERT?