cdmafra Posted March 15, 2015 at 10:13 PM Report Share #579503 Posted March 15, 2015 at 10:13 PM Olá! Como posso fazer para incluir uma imagem nos links dos artigos, mediante se verifique uma condição. Passo a explicar - quero que quando os artigos cuja "categoria2" é "multimédia", se inclua, ao lado da data, um logótipo que indique tratar-se um artigo multimédia. Nos outros casos, é para apresentar normalmente, sem nenhum logótipo. Sei que provavelmente tenho que incluir "if", "else" e "include", mas não estou a conseguir integrar nada no código abaixo. { echo "<div class='three columns'>"; echo "<a href='?artigo=".$row["news_slug"]."' class='div-link'>"; echo "<div class='desc-new'>"; //imagem echo "<div class='img-block'><img src='".$row['news_image']."' title='".$row["news_title"]."' alt='".$row["news_title"]."'/></div>"; //texto echo "<h4 class='new-title' onmouseover='none'>".$row["news_title"]."</h4>"; echo "<h4 class='new-subtitle' onmouseover='none'>".$row["news_subtitle"]."</h4>"; echo "<aside><p>".$row["news_desc"]."</p><p class='datapeq'>".$row["news_date"].", ".$row["hour"]."</p></aside>"; echo "</div>"; echo "</a>"; echo "</div>"; } Link to comment Share on other sites More sharing options...
danieljsfernandes Posted March 16, 2015 at 11:26 AM Report Share #579521 Posted March 16, 2015 at 11:26 AM if ($categoria2 == "multimédia") { echo "<img href='URL_IMG'>"; } É isto que pretendes? "Medir o progresso de um programa por linhas de código é como medir o processo de montagem de um avião pelo peso." Bill Gates Link to comment Share on other sites More sharing options...
cdmafra Posted March 16, 2015 at 04:17 PM Author Report Share #579549 Posted March 16, 2015 at 04:17 PM (edited) Mais ou menos. Porque quero integrar a imagem no mesmo parágrafo <p>...</p> do que o resto. E a imagem só pode aparecer quando a row "categoria2" da tabela apresente essa condição, enquanto o restante parágrafo deve aparecer sempre. Penso que serve: if ($categoria2 == "Multimedia") { echo "<aside><p><img href='images/'>".$row["news_desc"]."</p><p class='datapeq'>".$row["news_date"].", ".$row["hour"]."</p></aside>"; } else { echo "<aside><p>".$row["news_desc"]."</p><p class='datapeq'>".$row["news_date"].", ".$row["hour"]."</p></aside>"; } EDIT: Assim não estou a conseguir, pois dá o $categoria2 como undefined variable. Já tentei defini-la, mas aparecem outro tipo de erros. Este é o meu código: { $link = mysqli_connect("localhost","root","","motorra_mrn") or die("Error " . mysqli_error($link)); $query = "SELECT * FROM news WHERE destaque='Sim' and publicado='sim' ORDER BY news_id DESC LIMIT 4"; $result = $link->query($query); while ($row = mysqli_fetch_array($result)) { echo "<div class='three columns'>"; echo "<a href='?artigo=".$row["news_slug"]."' class='div-link'>"; echo "<div class='desc-new'>"; //imagem echo "<div class='img-block'><img src='".$row['news_image']."' title='".$row["news_title"]."' alt='".$row["news_title"]."'/></div>"; //texto echo "<h4 class='new-title' onmouseover='none'>".$row["news_title"]."</h4>"; echo "<h4 class='new-subtitle' onmouseover='none'>".$row["news_subtitle"]."</h4>"; if ($categoria2 == "Multimedia") { echo "<aside><p><img href='images/player.png'>".$row["news_desc"]."</p><p class='datapeq'>".$row["news_date"].", ".$row["hour"]."</p></aside>"; } else { echo "<aside><p>".$row["news_desc"]."</p><p class='datapeq'>".$row["news_date"].", ".$row["hour"]."</p></aside>"; } echo "<aside><p>".$row["news_desc"]."</p><p class='datapeq'>".$row["news_date"].", ".$row["hour"]."</p></aside>"; echo "</div>"; echo "</a>"; echo "</div>"; } } ?> Edited March 16, 2015 at 05:01 PM by apocsantos Link to comment Share on other sites More sharing options...
HappyHippyHippo Posted March 16, 2015 at 05:37 PM Report Share #579559 Posted March 16, 2015 at 05:37 PM quero que quando os artigos cuja "categoria2" é "multimédia" ónde está essa informação de "categoria2" ? IRC : sim, é algo que ainda existe >> #p@p Portugol Plus Link to comment Share on other sites More sharing options...
cdmafra Posted March 16, 2015 at 05:55 PM Author Report Share #579562 Posted March 16, 2015 at 05:55 PM (edited) ónde está essa informação de "categoria2" ? "categoria2" é um dos campos da tabela do MySQL, cujo valor é "Multimedia" ou nada campo deixado em branco) Edited March 16, 2015 at 05:55 PM by cdmafra Link to comment Share on other sites More sharing options...
HappyHippyHippo Posted March 16, 2015 at 06:11 PM Report Share #579565 Posted March 16, 2015 at 06:11 PM então a comparação do if terá de ter em conta que essa informção está no registo obtido da base de dados. IRC : sim, é algo que ainda existe >> #p@p Portugol Plus Link to comment Share on other sites More sharing options...
paulokruz Posted March 16, 2015 at 07:48 PM Report Share #579568 Posted March 16, 2015 at 07:48 PM (edited) Boas, vais ter que verificar se a variavel está declarada. if (isset($categoria2) && ($categoria2 == "Multimedia")) { echo "Variavel está declarada e é igual a Multimedia."; } else { echo "Variavel não está declarada ou é diferente de Multimedia"; } Obs: no entanto não vejo nada no teu código onde a variavel $categoria2 exista, se é um campo na base de dados entãio deverias fazer o if em função do nome desse campo , do tipo $row["nome_do_campo"] ou então definir a variavel $categoria2 = $row["nome_do_campo"] Edited March 16, 2015 at 07:53 PM by paulokruz Link to comment Share on other sites More sharing options...
danieljsfernandes Posted March 16, 2015 at 08:36 PM Report Share #579571 Posted March 16, 2015 at 08:36 PM Vê lá agora: $link = mysqli_connect("localhost","root","","motorra_mrn") or die("Error " . mysqli_error($link)); $query = "SELECT * FROM news WHERE destaque='Sim' and publicado='sim' ORDER BY news_id DESC LIMIT 4"; $result = $link->query($query); while ($row = mysqli_fetch_array($result)) { $categoria2 = $row["categoria2"]; echo "<div class='three columns'>"; echo "<a href='?artigo=".$row["news_slug"]."' class='div-link'>"; echo "<div class='desc-new'>"; //imagem echo "<div class='img-block'><img src='".$row['news_image']."' title='".$row["news_title"]."' alt='".$row["news_title"]."'/></div>"; //texto echo "<h4 class='new-title' onmouseover='none'>".$row["news_title"]."</h4>"; echo "<h4 class='new-subtitle' onmouseover='none'>".$row["news_subtitle"]."</h4>"; echo "<aside><p>"; // Condição if (isset($categoria2) && $categoria2 == "Multimedia") echo "<img href='images/player.png'>"; echo $row["news_desc"]."</p><p class='datapeq'>".$row["news_date"].", ".$row["hour"]."</p></aside>"; echo "<aside><p>".$row["news_desc"]."</p><p class='datapeq'>".$row["news_date"].", ".$row["hour"]."</p></aside>"; echo "</div>"; echo "</a>"; echo "</div>"; } "Medir o progresso de um programa por linhas de código é como medir o processo de montagem de um avião pelo peso." Bill Gates Link to comment Share on other sites More sharing options...
cdmafra Posted March 16, 2015 at 09:29 PM Author Report Share #579575 Posted March 16, 2015 at 09:29 PM Obrigado. Mas não, assim duplica a linha echo "<aside><p>".$row["news_desc"]."</p><p class='datapeq'>".$row["news_date"].", ".$row["hour"]."</p></aside>"; , e não insere a imagem. Link to comment Share on other sites More sharing options...
Solution danieljsfernandes Posted March 17, 2015 at 09:42 AM Solution Report Share #579599 Posted March 17, 2015 at 09:42 AM ups, enganei-me. Não é: <img href=""> mas sim: <img src=""> 1 Report "Medir o progresso de um programa por linhas de código é como medir o processo de montagem de um avião pelo peso." Bill Gates Link to comment Share on other sites More sharing options...
cdmafra Posted March 17, 2015 at 10:17 AM Author Report Share #579602 Posted March 17, 2015 at 10:17 AM Obrigado! Link to comment Share on other sites More sharing options...
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