If you compare your tables in order to get everything inside select
so I'll show you a code in MYSQL
using JOIN
clause that basically unites / concatenates tables
Try to use this select within a While and return a feedback in my answer to see what the result was.
<select id="uf" name="uf" onchange="carrega(this.value)"; class="selectoso">
<option></option>
<option value="0">UF</option>
<?php
$query = "SELECT * FROM A.id_endereco, A.tipo, B.id_bairro, C.id_cidade, D.id_uf FROM pessoa A"
. " LEFT OUTER JOIN endereco B ON (A.id_endereco = B.id_endereco)"
. " LEFT OUTER JOIN bairro C ON (B.id_endereco = C.id_endereco)"
. " LEFT OUTER JOIN cidade D ON (C.id_endereco = D.id_cidade) WHERE A.tipo = 'Anfitrião' ;
$resultado = mysqli_query($con, $query);
while($row = mysqli_fetch_assoc($resultado)) {
echo '<option value="'.$row['id_uf'].'">'.$row['id_uf'].'</option>';
}
?>
</select>
Note that your select has 4 while
and 4 selects
with querys
so for just select
you should only have while
and query
. You see ? And whenever I make a <option> dentro de um bloco de
PHP você deve colocar um
value também assim como fez nesta linha
UF Pois assim que for selecionado
UF irá ser inserido no banco de dados o valor 0. E no código que fiz acima eu indiquei que o
value do
é o próprio
id_uf você pode alterar para o que quiser. Caso o código acima não funcione, utilize o debaixo com
INNER JOIN 'and give me a feedback of what your result will be.
<select id="uf" name="uf" onchange="carrega(this.value)"; class="selectoso">
<option></option>
<option value="0">UF</option>
<?php
$query = "SELECT * FROM pessoas A
. " INNER JOIN enderecos B"
. " INNER JOIN bairros C"
. " INNER JOIN cidades D WHERE A.tipo = 'Anfitriao'"
. " AND B.id_endereco = A.id_endereco"
. " AND C.id_bairro = B.id_bairro"
. " AND D.id_cidade = C.id_cidade";
$resultado = mysqli_query($con, $query);
while($row = mysqli_fetch_assoc($resultado)) {
echo '<option value="'.$row['id_uf'].'">'.$row['id_uf'].'</option>';
}
?>
</select>