我需要在页面加载时使用表格的值填充输入选择。 此页面将作为数据库中的新记录或MODIFY现有记录。 这是我的表结构。
CREATE TABLE `PERSONAS` (
`ID` int(11) NOT NULL AUTO_INCREMENT,
`NOMBRE` varchar(100) COLLATE latin1_general_ci NOT NULL,
`CUIL` varchar(45) COLLATE latin1_general_ci DEFAULT NULL,
`LOCALIDAD_ID` int(11) DEFAULT NULL,
`PARTIDO_ID` int(11) DEFAULT NULL,
`PROVINCIA_ID` int(11) DEFAULT NULL,
PRIMARY KEY (`ID`),
KEY `DNI` (`DNI`),
KEY `NOM_AP` (`NOMBRE`,`APELLIDO`),
KEY `CUIL` (`CUIL`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci$$
CREATE TABLE `LOCALIDADES` (
`ID` int(11) NOT NULL,
`PARTIDO_ID` int(11) NOT NULL,
`NOMBRE` varchar(80) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8$$
带有表单的页面名为legajos_abm.php所以,当我想要一个新的PERSONAS时,我将页面称为legajos_abm?id = null但是当我需要修改PERSONAS时,我称之为legajos_abm?id = 3 with PERSONAS .ID作为参数。
这是我的html表单的一个例子:
<html>
<head></head>
<body>
<div id=formulario>
<form id=formularioLegajo>
<fieldset>
Nombres: <input id=nombre type=text />
Localidad: <input id=localidad type=select />
<!-- The rest of the fields........ -->
</fieldset>
</form>
</div>
</body>
</html>
我需要的是使用表LOCALIDADES的结果填充LOCALIDAD_ID的选择输入。当?id = null时,用整个表结果填充它,当?id = x时,用行x的字段填充它。
希望我的英语没有弄乱这个问题。
答案 0 :(得分:0)
解决方案:
<td style="text-align:right"><label>Provincia: </label></td>
<td><select id="cmbProvincia" name="cmbProvincia" style="width:240px">
<option value="0">Elija la provincia...</option>;
<?php
require_once('dataaccess.php');
$legajos = new legajos();
$legajos->cmbProvincias();
?>
</td>
dataaccess.php
$con = $this->conectarDB();
$query = 'CALL SPR_CMB_PARTIDOS('.$provincia_id.')';
$result = $this->con->query($query);
while($row=$this->con->fetch($result)) {
echo '<option value="'.$row['PROVINCE_ID'].'">' .$row['PROVINCE_NAME_TX'].
'</option>';
}
echo "</select>";
$this->con->close();