if else fra database, brug class.

Her kan du få hjælp og stille spørgsmål til PHP!
Besvar
frost77
Begynder
Indlæg:6
Tilmeldt:11. aug 2017, 11:20
if else fra database, brug class.

Indlæg af frost77 » 13. apr 2018, 11:02

Hej

Jeg har lige et problem som jeg ikke selv kan løse, så jeg håber, at der er nogen herinde som kan hjælpe mig på vej.

Jeg har en liste over produkter, hvor jeg skal have farvet feltet i pakket, om den er pakket eller ej.

Jeg vil bruge denne css til at definerer farverne.

Kode: Vælg alt

.green{
	background-color:#00FF00;
}
.red{
	background-color:#FF0000;
}
Og de betingelser jeg skal bruge er, jeg skal bruge den som er rød (jeg har forbundet til databasen)

Kode: Vælg alt

$tsql = "SELECT ORDKART.LEVERES, ORDKART.LEVERINGSTIDSPUNKT, ORDKART.LEVERING, ORDKART.LEVLXS, ORDKART.LEVPRINTET, ORDKART.NUMMER, ORDKART.NAVN, ORDKART.LEVERING1, ORDKART.LEVERING2, ORDKART.LEVERING4  FROM ORDKART WHERE ((ORDKART.ERLEVERET)=0 AND ((ORDKART.ORDRETYPE)=2) AND ((ORDKART.DATASET)='DAT') ) 
ORDER BY ORDKART.LEVERES;
";
Mit forsøg er:

Kode: Vælg alt

$pakket = ORDKART.LEVLXS == 1;
 
if ( $pakket == 1 )
	echo "green";
else
	echo "red";
Håber at nogen kan hjælpe mig, jeg er nemlig rimelig ny i php script. :)

cristian
Moderator
Moderator
Indlæg:882
Tilmeldt:26. sep 2011, 21:31
Kontakt:

Re: if else fra database, brug class.

Indlæg af cristian » 13. apr 2018, 17:47

Jeg forstår ikke rigtig hvad det er du vil have hjælp til.
Virker din SQL ikke som forventet?
Vil du gerne have et forslag til PHP siden hvordan du henter SQL værdien?

Du må lige præcisere.

jepperask
Geni
Geni
Indlæg:378
Tilmeldt:4. nov 2012, 17:57

Re: if else fra database, brug class.

Indlæg af jepperask » 14. apr 2018, 21:45

frost77 skrev:Hej

Jeg har lige et problem som jeg ikke selv kan løse, så jeg håber, at der er nogen herinde som kan hjælpe mig på vej.

Jeg har en liste over produkter, hvor jeg skal have farvet feltet i pakket, om den er pakket eller ej.

Jeg vil bruge denne css til at definerer farverne.

Kode: Vælg alt

.green{
	background-color:#00FF00;
}
.red{
	background-color:#FF0000;
}
Og de betingelser jeg skal bruge er, jeg skal bruge den som er rød (jeg har forbundet til databasen)

Kode: Vælg alt

$tsql = "SELECT ORDKART.LEVERES, ORDKART.LEVERINGSTIDSPUNKT, ORDKART.LEVERING, ORDKART.LEVLXS, ORDKART.LEVPRINTET, ORDKART.NUMMER, ORDKART.NAVN, ORDKART.LEVERING1, ORDKART.LEVERING2, ORDKART.LEVERING4  FROM ORDKART WHERE ((ORDKART.ERLEVERET)=0 AND ((ORDKART.ORDRETYPE)=2) AND ((ORDKART.DATASET)='DAT') ) 
ORDER BY ORDKART.LEVERES;
";
Mit forsøg er:

Kode: Vælg alt

$pakket = ORDKART.LEVLXS == 1;
 
if ( $pakket == 1 )
	echo "green";
else
	echo "red";
Håber at nogen kan hjælpe mig, jeg er nemlig rimelig ny i php script. :)
Som Cristian skriver, er det lidt svært at forstå hvad du mener. Som jeg forstår dit spørgsmål, så har du lavet en query hvor 'ORDKART.LEVLXS' forklarer om produktet er pakket eller ej.

Et sted i dit PHP script, antager jeg at du kører querien og gemmer resultatet i en liste.
Listen kan du så iterere, og udskrive produktet, hvor du tilføjer CSS-klassen alt efter hvad 'ORDKART.LEVLXS' er sat til?

Det kunne se sådan her ud, erstat $queryResult med dit resultat fra databasen. Hvis du benytter templating så som Twig kan det måske gøres endnu pænere. Jeg har ikke testet det helt vildt meget efter, men måske det kan inspirere dig. :-)

Kode: Vælg alt

<?php
$queryResult = array(
    array(
        "ORDKART.LEVLXS" => 1,
    ),
    array(
        "ORDKART.LEVLXS" => 0,     
    )
);
?>
<style>
.green{
   background-color:#00FF00;
}
.red{
   background-color:#FF0000;
}
</style>

<table>
    <?php foreach($queryResult as $key => $product): ?>
    <tr>
        <td class='<?php echo ($product["ORDKART.LEVLXS"] == 1) ? "green" : "red" ?>'>
			<?php echo $product["ORDKART.LEVLXS"] ?>
		</td>
    </tr>
    <?php endforeach; ?>
</table>

Besvar