嗨我是新的php / sql编程,我在html制作一个网站,当我输入texbox上的字段时,我可以将数据传递给mysql数据库。
html示例:
<form action="insert.php" method="get">
<TABLE>
<TR>
<TH style="width: 454px">
<select name="marcas">
<option value ="1"> Peugeot </option>
<option value = "2"> Renault </option>
<option value ="3"> Opel </option>
</select>
<select name="modelo">
<option value ="1"> 105 </option>
<option value = "2"> 205 </option>
<option value ="3"> 507 </option>
</select>
<P align="left">Matricula: <INPUT NAME="matricula" TYPE=text SIZE="20">
<P align="left">Ano: <INPUT NAME="ano" TYPE=text SIZE="60">
<p align="left">Quilometros: <INPUT NAME="kms" TYPE=text SIZE="20">
<tr><td>Estado:</td><td>
<input type="radio" name="estado"value="usado">Usado<br>
<input type="radio" name="estado" value="novo">Novo
</td></tr>
</TH>
</TR>
</TABLE>
现在我用PHP连接到桌面车:
<?php
include "connect.php";
$sql = "INSERT INTO carro (id_modelo, id_cor,id_extras, matricula, ano, kms, estado) values (?,?,?,?,?,?,?)";
if ($stmt = $mysqli->prepare($sql)) {
$stmt->bind_param("sssssss",$_REQUEST["id_modelo"],$_REQUEST["id_cor"],$_REQUEST["id_extras"], $_REQUEST["matricula"], $_REQUEST["ano"], $_REQUEST["kms"], $_REQUEST["estado"]);
$stmt->execute();
if ($stmt->affected_rows == -1) {
echo "<p>". $mysqli->error. "</p>";
}
else {
echo "<sp>Carro Inserido com Sucesso!</p>";
}
$stmt->close();
}
$mysqli->close();
?>
我的问题是,我希望textbox中的某些字段与其他不同的表连接,但我不知道这是否可能,例如:
$sql = INSERT INTO car
$sql2 = INSERT INTO engine
$sql3 = INSERT INTO brand
可以让我在同一页面的一些代码输入不同表格的数据
由于
答案 0 :(得分:2)
您已经在正确的轨道上了,但您无法在单个INSERT INTO
查询中插入不同的表格。
相反,您需要做的就是执行三个单独的INSERT INTO
个查询,即每个表一个。
在每个查询中,只需使用您需要的$_REQUEST
数据中的值即可。例如,一旦您完成了向Cars表格添加数据的查询,您就可以执行另一个查询,例如引擎如:
$sql2 = "INSERT INTO Engines (** Columns **) values (?,?,?,?,?,?,?)";
if ($stmt = $mysqli->prepare($sql)) {
$stmt->bind_param(...);
$stmt->execute();
...
}
并像以前一样绑定您想要的输入。您需要做的就是在表单中添加额外的input
字段,以获取所需的额外数据。