mylastwords Postado Fevereiro 24, 2011 Denunciar Share Postado Fevereiro 24, 2011 (editado) Estou com um problema no meu código PHP numa das condições.Aqui fica o meu código<?php $d1 = $_POST ["d1"];if ($d1 == "Qualquer"){print "<table border=\"0\" width=\"100%\"><th><td align=\"center\">Por favor selecione um Distrito</td></td></table>";}else{include ("includes/ligacaobd.php");$sql=SELECT * FROM amigos WHERE distrito = '".$d1."'";$result = mysql_query($sql);$row = mysql_fetch_array($result);print "<table border='1' align=\"center\"><tr><th align=\"center\">Nome</th><th align=\"center\">Localidade</th><th align=\"center\">Concelho</th><th align=\"center\">Distrito</th><th align=\"center\">Telefone</th><th align=\"center\">Email</th><th align=\"center\">Mais Informações</th></tr>";if (empty($row)){print "<tr><td colspan=\"7\" align=\"center\">Não Existem Resultados</td></tr>";}elsewhile ($row = mysql_fetch_array($result)){ print "<tr>"; print "<td align=\"center\">" . $row['nome] . "</td>"; print "<td align=\"center\">" . $row['localidade'] . "</td>"; print "<td align=\"center\">" . $row['concelho'] . "</td>"; print "<td align=\"center\">" . $row['distrito'] . "</td>"; print "<td align=\"center\">" . $row['telefone'] . "</td>"; print "<td align=\"center\">" . $row['email'] . "</td>"; print "<td align=\"center\"><a href=. $row['informações] . ">Ver + Informações</a></td>"; print "</tr>";print "</table>";mysql_close($con);} }?>A vermelho está o meu problema, eu já testei o ciclo while sem o if (empty ($row)) e funciona, mas se puser o if (empty ($row)) não me aparecem resultados e o banco de dados tem lá dados...Ajudem-me por favor Editado Fevereiro 24, 2011 por mylastwords Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 marcosfj1 Postado Fevereiro 24, 2011 Denunciar Share Postado Fevereiro 24, 2011 Experimenta colocar assim:}else{ //comando do while } Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 mylastwords Postado Fevereiro 25, 2011 Autor Denunciar Share Postado Fevereiro 25, 2011 Experimenta colocar assim:}else{ //comando do while }o problema está na condição enquanto... eu já pus o codigo if depois do ciclo while e ele faz o while se houver resultados apresenta e executa o if e diz no fim da mostragem que não existem resultados...não estou mesmo a ver como ei de resolver tou a ficar com a cabeça em água...Obrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rickayron Postado Fevereiro 25, 2011 Denunciar Share Postado Fevereiro 25, 2011 Olá tudo bem, fiz algumas modificações no codigo e agora acredito que está funcional, se tiver mudado algo que lhe atrapalhe é so modificar novamente, qualquer duvida é so postar até mais.<?php $d1 = $_POST ["d1"]; if ($d1 == "Qualquer") { print "<table border='0' width='100'><tr><td align='center'>Por favor selecione um Distrito</td></tr></table>"; } else { require_once("includes/ligacaobd.php"); $sql=mysql_query("SELECT * FROM amigos WHERE distrito = '$d1'") or die("Falha ao tentar localizar amigos:".mysql_error()); $numero = mysql_num_rows($sql); if ($numero<=0) { echo "Não existem resultados"; exit; } print "<table border='1' align='center'> <tr> <th align='center'>Nome</th> <th align='center'>Localidade</th> <th align='center'>Concelho</th> <th align='center'>Distrito</th> <th align='center'>Telefone</th> <th align='center'>Email</th> <th align='center'>Mais Informações</th> </tr>"; while ($row = mysql_fetch_array($result)) { print "<tr>"; print "<td align='center'>" . $row['nome'] . "</td>"; print "<td align='center'>" . $row['localidade'] . "</td>"; print "<td align='center'>" . $row['concelho'] . "</td>"; print "<td align='center'>" . $row['distrito'] . "</td>"; print "<td align='center'>" . $row['telefone'] . "</td>"; print "<td align='center'>" . $row['email'] . "</td>"; print "<td align='center'><a href=". $row['informações'] . ">Ver + Informações</a></td>"; print "</tr>"; } print "</table>"; mysql_close($con); } ?> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 mylastwords Postado Fevereiro 27, 2011 Autor Denunciar Share Postado Fevereiro 27, 2011 (editado) Olá tudo bem, fiz algumas modificações no codigo e agora acredito que está funcional, se tiver mudado algo que lhe atrapalhe é so modificar novamente, qualquer duvida é so postar até mais.<?php $d1 = $_POST ["d1"]; if ($d1 == "Qualquer") { print "<table border='0' width='100'><tr><td align='center'>Por favor selecione um Distrito</td></tr></table>"; } else { require_once("includes/ligacaobd.php"); $sql=mysql_query("SELECT * FROM amigos WHERE distrito = '$d1'") or die("Falha ao tentar localizar amigos:".mysql_error()); $numero = mysql_num_rows($sql); if ($numero<=0) { echo "Não existem resultados"; exit; } print "<table border='1' align='center'> <tr> <th align='center'>Nome</th> <th align='center'>Localidade</th> <th align='center'>Concelho</th> <th align='center'>Distrito</th> <th align='center'>Telefone</th> <th align='center'>Email</th> <th align='center'>Mais Informações</th> </tr>"; while ($row = mysql_fetch_array($result)) { print "<tr>"; print "<td align='center'>" . $row['nome'] . "</td>"; print "<td align='center'>" . $row['localidade'] . "</td>"; print "<td align='center'>" . $row['concelho'] . "</td>"; print "<td align='center'>" . $row['distrito'] . "</td>"; print "<td align='center'>" . $row['telefone'] . "</td>"; print "<td align='center'>" . $row['email'] . "</td>"; print "<td align='center'><a href=". $row['informações'] . ">Ver + Informações</a></td>"; print "</tr>"; } print "</table>"; mysql_close($con); } ?>Obrigadosó que agora da me um erro no fetch array o erro é Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\xampp\htdocs\portaldasmotas\motoclubes.php on line 33<?php$d1 = $_POST ["d1"];if ($d1 == "Qualquer"){print "<table border=\"0\" width=\"100%\"><th><td align=\"center\">Por favor selecione um Distrito</td></td></table>";}else{require_once("includes/ligacaobd.php");$sql=mysql_query("SELECT * FROM amigos WHERE distrito = '$d1'") or die("Falha ao tentar localizar amigos:".mysql_error());$numero = mysql_num_rows($sql);if ($numero<=0) { print "<table border=\"0\" width=\"100%\"><th><td align=\"center\">Não existem resultados</td></th></table>"; }else{print "<table border=1' align='center'><tr><th align='center'>Nome</th><th align='center'>Localidade</th><th align='center'>Concelho</th><th align='center'>Distrito</th><th align='center'>Telefone</th><th align='center'>Email</th><th align='center'>Mais Informações</th></tr>";while ($row = mysql_fetch_array($result)){print "<tr>";print "<td align='center'>" . $row['nome] . "</td>";print "<td align='center'>" . $row['localidade'] . "</td>";print "<td align=center'>" . $row['concelho] . "</td>";print "<td align='center'>" . $row['distrito'] . "</td>";print "<td align=center'>" . $row['telefone] . "</td>";print "<td align='center'>" . $row['email'] . "</td>";print "<td align=center'><a href=". $row['informações] . ">Ver + Informações</a></td>";print "</tr>";}}print "</table>";mysql_close($con);}?> Já alterei o que é necessário só me dá o erro no fetch array Editado Fevereiro 27, 2011 por mylastwords Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rickayron Postado Fevereiro 27, 2011 Denunciar Share Postado Fevereiro 27, 2011 Olá tudo bem,substitua a linha while ($row = mysql_fetch_array($result)) por isso while ($row = mysql_fetch_array($sql))qualquer duvida é so postar ai até mais Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 mylastwords Postado Fevereiro 28, 2011 Autor Denunciar Share Postado Fevereiro 28, 2011 (editado) Olá tudo bem,substitua a linha while ($row = mysql_fetch_array($result)) por isso while ($row = mysql_fetch_array($sql))qualquer duvida é so postar ai até maisFogo você tirou me uma dor de cabeça com 2 semanas... Obrigado Editado Fevereiro 28, 2011 por mylastwords Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
mylastwords
Estou com um problema no meu código PHP numa das condições.
Aqui fica o meu código
<?php
$d1 = $_POST ["d1"];
if ($d1 == "Qualquer")
{
print "<table border=\"0\" width=\"100%\"><th><td align=\"center\">Por favor selecione um Distrito</td></td></table>";
}
else
{
include ("includes/ligacaobd.php");
$sql=SELECT * FROM amigos WHERE distrito = '".$d1."'";
$result = mysql_query($sql);
$row = mysql_fetch_array($result);
print "<table border='1' align=\"center\">
<tr>
<th align=\"center\">Nome</th>
<th align=\"center\">Localidade</th>
<th align=\"center\">Concelho</th>
<th align=\"center\">Distrito</th>
<th align=\"center\">Telefone</th>
<th align=\"center\">Email</th>
<th align=\"center\">Mais Informações</th>
</tr>";
if (empty($row))
{
print "<tr><td colspan=\"7\" align=\"center\">Não Existem Resultados</td></tr>";
}else
while ($row = mysql_fetch_array($result))
{
print "<tr>";
print "<td align=\"center\">" . $row['nome] . "</td>";
print "<td align=\"center\">" . $row['localidade'] . "</td>";
print "<td align=\"center\">" . $row['concelho'] . "</td>";
print "<td align=\"center\">" . $row['distrito'] . "</td>";
print "<td align=\"center\">" . $row['telefone'] . "</td>";
print "<td align=\"center\">" . $row['email'] . "</td>";
print "<td align=\"center\"><a href=. $row['informações] . ">Ver + Informações</a></td>";
print "</tr>";
print "</table>";
mysql_close($con);
}
}
?>
A vermelho está o meu problema, eu já testei o ciclo while sem o if (empty ($row)) e funciona, mas se puser o if (empty ($row)) não me aparecem resultados e o banco de dados tem lá dados...
Ajudem-me por favor
Editado por mylastwordsLink para o comentário
Compartilhar em outros sites
6 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.