Kan ik het resultaat van AS (int) uit de query die ik op plaatscode gezet heb, printen als een kleur of letter?
Ik wil bij R het resultaat als volgt weergeven:
0 punten: de cel waarin het resultaat geprint wordt, is rood
1 punt: de cel waarin het resultaat geprint wordt, is oranje
2 punten: de cel wordt geel
3 punten: de cel wordt lichtgroen
4 punten: de cel wordt groen
Of als dat niet mogelijk is, kan het dan als volgt?
Ik wil bij R het resultaat als volgt weergeven:
0 punten: in de cel waarin het resultaat geprint wordt, komt een o
1 punt: in de cel waarin het resultaat geprint wordt, komt een om
2 punten: in de cel komt een m
3 punten: in de cel komt een v
4 punten: in de cel komt een g
Ik ben heel benieuwd of het mogelijk is. Op internet zie ik hier geen uitleg over.
7 antwoorden
Gesponsorde links
Thomas - 02/08/2014 20:28 (laatste wijziging 02/08/2014 20:54)
Als je code aanmaakt met een [ plaatscode ] tag wordt automatisch een link aangemaakt naar de code... Hier hoef je verder niets speciaals voor te doen.
Dit is prima mogelijk. Je vergelijkt de opgehaalde waarde met andere waarden en op grond daarvan druk je HTML af. Dit kun je met een aantal if-statements doen of met een switch-statement. Ook kan het de moeite lonen om, als je deze bewerking vaak herhaalt, deze vast te leggen in een functie. Een functie hoef je maar 1x te declareren, daarna kun je deze vaker aanroepen.
Ik weet niet helemaal of de HTML-code voor je tabel klopt, maar het onderstaande codefragment laat zien hoe je een achtergrondkleur op een tabel-cel zou kunnen toepassen:
Ik denk dat het ook de moeite loont om de basis van (HTML, CSS en) PHP (nog) eens door te nemen want dit vraagstuk zou op het moment dat je met databases in de weer gaat al redelijk triviaal moeten zijn.
Thomas - 03/08/2014 20:08 (laatste wijziging 03/08/2014 20:15)
Moderator
Laat ik je wat hengels geven:
HTML tabellen. Ook is je charset (nog steeds) niet in orde.
In deze tutorial staat het een en ander uitgelegd over enkele controle-structuren in PHP. Hier kun je (kort door de bocht) blokken code mee afbakenen. De uitvoering van zo'n blok code geschiedt wel (mogelijk meerdere keren) of niet afhankelijk van condities die je hier aan toevoegt. Een blok code is begrensd door { accolades }. De reden dat je maar één rode cel ziet is omdat deze buiten je while-loop staat (valt buiten de accolades van je while-statement). Je hebt dus naast de pot gepist .
Daarnaast probeer je daar $klas af te drukken (ongedefineerd). Waarschijnlijk wil je daar een query-resultaat ($row['klas']) afdrukken.
Accolades hebben betekenis. Als je deze betekenis negeert gaan er weinig dingen goed.
Je script combineert een rudimentair loginsysteem met andere functionaliteit. Voor het overzicht lijkt het mij handiger om deze zaken te scheiden. Je maakt gebruik van sessies. Sessies zijn juist bedoeld om informatie langere tijd te onthouden, dus ook over verschillende pagina's. Als je gegevens beschermd moeten worden, maak dan een apart loginpaneel. Vervolgens bouw je in je te-beveiligen-pagina's een controle in.
Eerder schreef je dat de switch ook vastgelegd kon worden in een functie. Heb ik hier iets aan als ik de bewerking vaker wil herhalen, maar dan met verschillende waardes?
Voor de nehat1 (de eerste AS in de code) wil het resultaat anders weergeven, namelijk:
0 punten: de cel waarin het resultaat geprint wordt, is rood
4 punt: de cel waarin het resultaat geprint wordt, is oranje
8 punten: de cel wordt geel
12 punten: de cel wordt lichtgroen
16 punten: de cel wordt groen
Ik zet de twee functies bepaalKleur wel onder elkaar, maar dat levert niets op.
Wil je dat doen voor dat precieze aantal punten (0, 4, 8, 12, 16), of voor de intervallen
van (en met) 0 tot (en zonder) 4,
van (en met) 4 tot (en zonder) 8,
van (en met) 8 tot (en zonder) 12,
etc.
?
In het eerste geval kun je een soortgelijke functie opstellen voor dat precieze aantal punten, in het laatste geval lijkt het mij ook handig om hier een functie voor op te stellen, maar deze zal er iets anders uitzien.
Je zou zelfs één generieke functie kunnen overwegen, die een kleur aan een interval van waarden toekent.
Ik heb het nodig voor de intervallen, en niet alleen voor nehar en nehat1, maar ook voor nehat2 en nehai: allemaal verschillende intervallen, dus het moet dan een functie worden die er iets anders uitziet of een generieke functie.
De bouwstenen van deze functie zouden je al bekend moeten voorkomen. Je kunt aan de hand van deze functie ook andere functies met andere intervallen bouwen.