1
我有这种形式,以便人们可以将一些数据插入到数据库中。如何从表单输入选择选项获得字符串
<form action="publicar_action.php" method="POST">
<input type="text" name="concNome" placeholder="nome do concurso"> <br>
<select name="concInstrumento">
<option>guitarra</option>
<option>flauta</option>
</select>
<input type="date" name="concDataDE" ><br>
<input type="date" name="concDataATE" ><br>
<input type="text" name="concDescricao" placeholder="Descrição"><br><br>
<input type="submit">
</form>
,我有这个数据库mr_concursos
,至极有2个表:guitarra
和flauta
。 我想做的是将数据插入相应的表格中。该表将通过用户在表单上选择的选项来选择。
像这样:
<?php
$con = mysqli_connect('localhost', 'root', '', 'mr_concursos');
$concNome = $_POST['concNome'];
$concInstrumento = $_POST['concInstrumento'];
$concDataDE = $_POST['concDataDE'];
$concDataATE = $_POST['concDataATE'];
$concDescricao = $_POST['concDescricao'];
$sql = "INSERT INTO $concInstrumento (nome, instrumento, dataDE, dataATE, descricao) VALUES ('$concNome', '$concInstrumento', '$concDataDE', '$concDataATE', '$concDescricao')";
$result = mysqli_query($con,$sql);
header('Location: publicar.php');
两个表都有相同的列。
由于某种原因,它不起作用。
如果不是选择/选项标签,我只使用一个简单的文本字段,并写入表的名称,它只会被插入表guitarra
。它不起作用flauta
...
你知道为什么吗?
为什么你有2种仪器相同的表结构......所以,如果将来你有像100度的仪器,你将有一个具有相同结构100个表?...为什么不只是一个名为InstrumentDetails的表和另一个名为InstrumentTypes的表,或者类似的东西? – Hackerman
我对编码很陌生,我的很多行为都会缺乏经验。当我正在学习新的东西时,我会修改我写的东西。 我会确保你的建议。如果我想从'InstrumentDetails'表中检索数据,但只是从一种仪器中获取数据,我该如何做? (可能使用'InstrumentTypes'表格......但我不明白如何关联它们) –
在InstrumentDetails表格中,您需要包含您正在引用的InstrumentType的主键 – Hackerman