maxcoliban Posted July 8, 2012 at 01:15 AM Report #467875 Posted July 8, 2012 at 01:15 AM Boa noite queria pedir a vossa ajuda para a conclusão da minha PAP. Não pude ter a ajuda do meu professor e ficaram estas coisas por fazer, e eu não sei como. Briefing: A PAP(Projecto de Aptidão Professinal) é um trabalho que temos de realizar no final dos 3 anos do curso professional para mostrar as ''skills'' que aprendemos durante os 3 anos do curso. A minha PAP é um site de receitas, onde podemos pesquisar por receitas ou por ingredientes, ou ir a pagina das receitas e clicar simplesmente na receita e depois aparece a respectiva preparação. Faltam fazer três coisas: Na pagina ingredientes, mostrar à frente dos ingredientes o respectivo preço. Pesquisa organizada, por preço ou por relevancia(receitas com mais ingredientes em cima com menos em baixo) Eliminar os dados repetidos 1ª esta aqui no phpmyadmin a table dos ingredientes https://i.postimg.cc/vmTK4DxV/6kEvk.png tem o nome (abacate, arroz, etc) e tem o field do preço(preços dos ingredientes) eu gostava que o preço aparecesse a frente do nome do ingrediente https://i.postimg.cc/HkpRC6p3/M5t58.png o codigo esta aqui <?php $con = mysql_connect("localhost","root",""); if (!$con) { die('Could not connect: ' . mysql_error()); } mysql_select_db("pap", $con); $result = mysql_query("SELECT * FROM Ingredientes"); echo "<table border='0' id=\"tableIngredientes\"> <tr> <table style='margin: 20px auto;'> <th>Nome do Ingrediente</th> <table style='margin: 3px auto;'> </tr>"; while($row = mysql_fetch_array($result)) { $ing=$row['nome']; echo "<tr>"; echo "<td><a href='MostraReceita.php?ingredientes=$ing'>" . $row['nome'] . "</a></td>"; echo "</tr>"; } echo "</table>"; mysql_close($con); ?> 2ª Neste momento quando meto alguns ingredientes na pesquisa (ex: batatas, arroz, carne) a ordem que aparece é aleatória. Eu queria modificar o código de maneira que desse para escolher o filtro da pesquisa, por preço (soma do preço dos ingredientes) e por relevancia (as primeiras receitas são as que teem mais ingredientes pesquisados) Aqui esta a pesquisa das receitas com batas, arroz e carne https://i.postimg.cc/Qd0PNcCD/NqQlv.png e aparece isto(modificado) https://i.postimg.cc/DzNMLF1Y/vJne0.png o código é o seguinte: <?php $nome = $_POST['txtPesquisa']; $nomes=explode(" ", $nome); echo "<table border='0' id=\"tableIngredientes\"> <tr> <table style='margin: 20px auto;'> <th>Nome do Receita</th> <table style='margin: 3px auto;'> </tr>"; $xsql="select receitas.id,receitas.nome as 'nome' from Receitas, Receita_Ingrediente, ingredientes where receitas.id=receita_id and ingredientes.id = receita_ingrediente.ingrediente_id"; if(count($nomes)) $xsql=$xsql." and ("; FOREACH ($nomes as $value){ $xsql=$xsql."ingredientes.nome like '%$value%' or "; } $xsql=substr ($xsql ,0 ,strlen($xsql)-4); $xsql=$xsql.")"; $con = mysql_connect("localhost","root",""); if (!$con) { die('Could not connect: ' . mysql_error()); } mysql_select_db("pap", $con); $result = mysql_query("$xsql"); while($row = mysql_fetch_array($result)) { $rec=$row['id']; echo "<tr><td><a href=Preparacao.php?id=$rec>" . $row['nome'] . "</td></tr>"; } mysql_close($con); ?> 3ª Não quero ''get to greedy'' e se me conseguirem ajudar nos 2 tópicos acima eu estarei muito agradecido. Obrigado
maxcoliban Posted July 8, 2012 at 07:58 PM Author Report #467964 Posted July 8, 2012 at 07:58 PM alguém??
KTachyon Posted July 8, 2012 at 08:25 PM Report #467967 Posted July 8, 2012 at 08:25 PM Em 08/07/2012 às 03:15, maxcoliban disse: 1ª esta aqui no phpmyadmin a table dos ingredientes https://i.postimg.cc/vmTK4DxV/6kEvk.png tem o nome (abacate, arroz, etc) e tem o field do preço(preços dos ingredientes) eu gostava que o preço aparecesse a frente do nome do ingrediente https://i.postimg.cc/HkpRC6p3/M5t58.png Isto é uma dúvida de HTML e não de PHP. Basicamente, deves estruturar o HTML de forma a que possas colocar o preço à frente dos ingredientes. Por exemplo, utilizando uma tabela, ou divs consecutivas de forma a que o posicionamento da informação seja adequado. Em 08/07/2012 às 03:15, maxcoliban disse: 2ª Neste momento quando meto alguns ingredientes na pesquisa (ex: batatas, arroz, carne) a ordem que aparece é aleatória. Eu queria modificar o código de maneira que desse para escolher o filtro da pesquisa, por preço (soma do preço dos ingredientes) e por relevancia (as primeiras receitas são as que teem mais ingredientes pesquisados) Aqui esta a pesquisa das receitas com batas, arroz e carne https://i.postimg.cc/Qd0PNcCD/NqQlv.png e aparece isto(modificado) https://i.postimg.cc/DzNMLF1Y/vJne0.png Usa o DISTINCT para obteres apenas uma vez. No teu caso: SELECT DISTINCT receita.id, receita.nome ... Em 08/07/2012 às 03:15, maxcoliban disse: 3ª Não quero ''get to greedy'' e se me conseguirem ajudar nos 2 tópicos acima eu estarei muito agradecido. Done. “There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.” -- Tony Hoare
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now