Melding Ja - Nee ?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Kevichill

Kevichill

04/03/2009 01:45:00
Quote Anchor link
Hallo allemaal ,
Ik wil een melding systeempje maken voor m,n site , vrij simpel eigenlijk alleen heb ik wel een paar vraagjes , o.a voor de DB Tabel en zowel voor het PHP Script .

Ik heb even snel een DB Tabel aangemaakt
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
CREATE TABLE `Website`.`Melding` (
`Status` ENUM( 'Aan', 'Uit' ) NOT NULL ,
`Melding` VARCHAR( 500 ) NOT NULL ,
`Datum` DATE NOT NULL
) ENGINE = MYISAM

Ik wil de Status via een Selectbox doen dus als de status op 'aan' komt moet de melding vertoont worden op de pagina's waar het dus bijv opgevraagt word , En als de status op 'uit' staat dan moet hij niks laten zien
Nu was mijn vraag, kan deze tabel beter ? Zoja hoe en op welke manier zou jij het doen ( ik zelf op deze manier.. ).

En de vraag kwa PHP gedeelte is .
Als ik op een pagina dus wil opvragen wat de Melding is .. hoe zou ik dat het beste kunnen doen aangezien ik het wel uit de DB kan ophallen alleen ik zou eigenlijk niet weten hoe ik dat moet doen i.v.m status ... als de status nee is dan moet hij niks laten zien maar zodra de status op Aan staat dan moet de melding wel getoont worden .. Hoe kan ik dit het beste doen ?

B.v.d Kevin
 
PHP hulp

PHP hulp

08/12/2021 17:21:38
 
Timen kut

Timen kut

04/03/2009 07:28:00
Quote Anchor link
je zou ipv aan en uit ook 0 voor uit en 1 voor aan kunnen gebruiken..
Bij het ophalen van de melding alles opvragen waar de melding 1 is(WHERE melding=1)... dan laat ie alle "uit" meldingen niet zien.
 
Terence Hersbach

Terence Hersbach

04/03/2009 07:39:00
Quote Anchor link
laat ziezo de hoofdletters in veld-, tabel- en databasenamen weg en maak daar kleine letters van. Daar kan je alleen maar fouten mee maken.

Het veld Melding kan je het best een TEXT van maken, want wat als je een heel lang bericht wilt plaatsen.

Voor het statusveld kan je meerdere dingen verzinnen:
Als je het veld melding ook null kan laten zijn, kan je het status-veld weglaten. Je hoeft dan alleen te controleren of er wat in het melding veld staat.

Als je de kolommen begin- en einddatum maakt, kan je selecteren of een melding vandaag getoont moet worden. Je kan dan ook alvast een melding voor volgende week erin zetten, of meerdere meldingen tegelijk.

Verder zou ik als Engine innoDB gebruiken, maar dat is meer persoonlijk.
Gewijzigd op 01/01/1970 01:00:00 door Terence Hersbach
 
Dennis Mertens

Dennis Mertens

04/03/2009 09:06:00
Quote Anchor link
OFF: het is sowieso en geen zoiezo.

Je kan idd met 0 (uit) en 1 (aan) werken of met false (uit) en true (aan) boolean.

Backtics zijn ook nergens voor nodig. En een varchar kan geen 500 tekens. Gebruik dan een long versie.
 
Joakim Broden

Joakim Broden

04/03/2009 10:31:00
Quote Anchor link
Ik zelf zou ook gewoon voor 0 en 1 gaan.

En een varchar kan maar 255 tekens bevatten toch?
 
Dennis Mertens

Dennis Mertens

05/03/2009 09:14:00
Quote Anchor link
Yep, max 255.
 
Frank -

Frank -

05/03/2009 09:31:00
Quote Anchor link
Dennis Mertens schreef op 04.03.2009 09:06:
En een varchar kan geen 500 tekens. Gebruik dan een long versie.

Dat is niet zo zwart-wit te stellen, het is afhankelijk van welke versie van MySQL je gebruikt.
Quote:
Values in VARCHAR columns are variable-length strings. The length can be specified as a value from 0 to 255 before MySQL 5.0.3, and 0 to 65,535 in 5.0.3 and later versions. The effective maximum length of a VARCHAR in MySQL 5.0.3 and later is subject to the maximum row size (65,535 bytes, which is shared among all columns) and the character set used.

Als ik dit goed lees, kan een VARCHAR maximaal 65.535 tekens bevatten maar kan 1 tabel voor álle kolommen samen ook maximaal 65.535 tekens bevatten. Wil je veilig kunnen werken, dan gebruik uiteraard geen MySQL maar dat terzijde, dan zul je dit maximum moeten verdelen over de verschillende kolommen en hun constraints. Kortom, het is weer redelijk *beep* in MySQL.

MySQL kent geen echte BOOLEAN, een BOOLEAN is in MySQL een alias voor TINYINT(1). Met ee 1 of 0 kun je daar prima aangeven of iets true of false is.
Gewijzigd op 01/01/1970 01:00:00 door Frank -
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.