Hallo,
Ik ben hier nieuw op deze site. Ik ben onlangs begonnen met PHP en ik ben bezig met gegevens uit een mysql database halen en dit middels een php script tonen op een pagina.

dit heb ik :


     $order = "SELECT * FROM data where q='123456' ORDER BY jaar ASC";
      $result = mysql_query($order);
      



while ($row=mysql_fetch_array($result)){
        echo ("<td align=center>$row[jaar]</td>");
        echo ("<td align=center>$row[q]</td>");
        echo ("<td align=center>$row[getrouwd]</td>");




Nu geeft row[getrouwd] de tekst die in de mysql database staat (ja of nee)

Ik zou graag willen dat:
IF row[getrouwd] = ja, dat hij dan de tekst weergeeft: GETROUWD
IF row[getrouwd] = nee, dat hij dan de tekst weergeeft: NIET GETROUWD
IF row[getrouwd] = EMPTY, dat hij dan de tekst weergeeft: ONBEKEND

Hoe doe ik dit?

Vriendelijke groet,
Henrik
<?php
echo '<td align="center">' .
(($row['getrouwd'] == 'ja') ? 'JAMMEL' :
($row['getrouwd'] == 'nee') ? 'SLIM' : 'TJA');
// of
echo '<td align="center">';
if ($row['getrouwd'] == 'ja') {
echo 'JAMMEL';
elseif ($row['getrouwd'] == 'nee') {
echo 'SLIM';
}
else {
echo 'TJA';
}
?>[/code]
 echo ("<td>(($row['getrouwd'] == 'ja') ? '1' : ($row['getrouwd'] == 'nee') ? '2' : 'TJA')</td>");


werkt niet.

Staat de tekst wel goed in de echo?
Hij moet namelijk op dezelfde wijze als ik hierboven al heb..
Henrik Maartens op 02/06/2014 19:30:01

 echo ("<td>(($row['getrouwd'] == 'ja') ? '1' : ($row['getrouwd'] == 'nee') ? '2' : 'TJA')</td>");

werkt niet.

En wat gebeurt er dan wel?
Haakjes en puntjes?
<?php
echo '<td>'.(($row['getrouwd'] == 'ja') ? '1' : (($row['getrouwd'] == 'nee') ? '2' : 'TJA')).'</td>';
?>
Henrik Maartens op 02/06/2014 20:35:08

Niks :) witte pagina.
Ik zie grote verschillen tussen de code van Ger en jou...
Bedankt San The. Deze werkt.

De reden van de verschillen is omdat ik echo " " gebruik. En SanThe doet met ' '. Wat is hierin het verschil eigenlijk?


Henrik Maartens op 02/06/2014 21:13:36

De reden van de verschillen is omdat ik echo " " gebruik. En SanThe doet met ' '.

Kijk dan nog eens goed naar de beide codes; dat je " wilt gebruiken is jouw keuze, maar doe het dan wel goed ;)

Binnen HTML wordt doorgaans gebruikt gemaakt van ".
Als je binnen PHP ook " gebruikt, zou dat conflicten kunnen geven:
<?php
echo "<li class="test">";
?>

gaat je problemen geven. Je zou dat kunnen oplossen door de " in html te gaan escapen. Betekent echter meer code en een stuk onoverzichtelijker. Vandaar: HTML " en PHP '
Ok. Duidelijk! (ik doe dan altijd \"test\" om de fouten te vermijden.

Hoe kan ik in die code nu 2 teksten toevoegen?
nu doet hij
als x=a dan 1
als x=b dan 2
anders 3

maar hoe maak ik dit bijv:
als x=a dan 1 (tekst: 1 laten zien)
EN als x=b dan 2 (tekst: 1 EN 2 laten zien)

en uiteraard als alleen x=b dan alleen de 2 laten zien.



Henrik Maartens op 02/06/2014 21:13:36

Bedankt San The. Deze werkt.

De reden van de verschillen is omdat ik echo " " gebruik. En SanThe doet met ' '. Wat is hierin het verschil eigenlijk?


Nee, dat maakt niet zo veel uit.
Het zijn de puntjes waarmee je if buiten de tekst haalt.
En dan niet te vergeten de haakjes.

Reageren