quote:Op zondag 15 april 2007 15:17 schreef Nevermind het volgende:
Ik heb geboortedatums in de database staan door middel van DATE-velden van MySQL. Een geboortedatum is dus bijvoorbeeld 1985-07-19. Nu wil ik vanaf vandaag een overzicht van de aankomende verjaardagen, gesorteerd op hoe lang het nog duurt (liefst in dagen). Ik heb de manual er bij gepakt, maar ik kan het nog niet vinden
-edit-
Inmiddels ben ik iets verder:
[ code verwijderd ]
Maar nu nog vanaf vandaag gerekend, daar kom ik nog niet uit.
1 2 3 4 5 | date_format(people_birthday, '%d %m') AS verjaardag, unix_timestamp( if( date_format( people_birthday, '2000-%m-%d 00:00:00' ) >= date_format( now( ) , '2000-%m-%d 00:00:00' ) , date_format( people_birthday, '2000-%m-%d 00:00:00' ) , date_format( people_birthday, '2004-%m-%d 00:00:00' ) ) ) AS datum2 FROM people WHERE people_birthday != 'NULL' ORDER BY datum2 |
Afgezien van het feit dat mijn browser (Konqueror) die %23 niet omzet naar een hekje maar dat gewoon verstuurt (zoals het ook hoort) lijkt het me niet echt een fijn plan om hekjes in je URI te gaan verwerken daaraan wordt dus een anchor herkend.quote:Op maandag 16 april 2007 10:35 schreef hornage het volgende:
Ff vraag tussendoor die niet perse PHP is maar meer HTML. Ik wil verwijzen naar een adres waarin een # voorkomt. Dit werkt niet omdat dit uiteraard het teken voor een bladwijzer is in html.
Toch kan ik hier komen in de browser, maar dan zie je %23 staan. Als ik dit direct in het adres invul om erheen te gaan maakt ie er toch weer hekjes van waardoor ik er niet kom.
Ik kan niet even snel makkelijk regelen dat die hekjes weg zijn uit het adres want ze hebben een specifieke functie. Iemand misschien een idee om dit toch voor elkaar te krijgen?
Tja, volgens mij zit er toch weinig anders op dan de namen van die mappen/bestanden te hernoemenquote:Op maandag 16 april 2007 10:44 schreef hornage het volgende:
Het is ook niet een goed idee maar de structuur is ooit eens opgezet en er was nooit de bedoeling geweest om te gaan linken hiernaar. Je kan het zien op http://www.mobilia-interieurtextiel.nl/
Op de voorpagina op een artikel klikken en dan op een plaatje. Hij kan hem niet vinden dan terwijl ik verwijs naar %23 ipv een hekje
Aangezien je daar een m:n-relatie (één tag kan meerdere nieuwsberichten hebben, één nieuwbericht kan meerdere tags hebben) wilt creëeren, heb je daar een koppeltabel voor nodig in de vorm (nieuwsbericht_pk, tag_pk). Je kunt dan in die tabel een PRIMARY KEY plaatsen op (nieuwsbericht_pk, tag_pk) en een INDEX op (tag_pk) zodat je ook snel kunt zoeken op nieuwsberichten wanneer iemand op een tag klikt.quote:Op maandag 16 april 2007 11:25 schreef super-muffin het volgende:
Ik wil voor een nieuws systeem een tag lijst gaan maken.
Hoe moet ik dat gaan doen? Een extra veld in de nieuws tabel of een aparte tabel?
Er moet wel opgeklikt worden, zodat je alle berichten met de zelfde tag te zien krijgt
Oh ja, zo had ik het nog niet bekekenquote:Op maandag 16 april 2007 11:31 schreef JeRa het volgende:
[..]
Aangezien je daar een m:n-relatie (één tag kan meerdere nieuwsberichten hebben, één nieuwbericht kan meerdere tags hebben) wilt creëeren, heb je daar een koppeltabel voor nodig in de vorm (nieuwsbericht_pk, tag_pk). Je kunt dan in die tabel een PRIMARY KEY plaatsen op (nieuwsbericht_pk, tag_pk) en een INDEX op (tag_pk) zodat je ook snel kunt zoeken op nieuwsberichten wanneer iemand op een tag klikt.
Ja, daarmee voorkom je SQL injection. Nee, het is nog niet veilig. Je moet ervoor zorgen dat je álle user input controleert en dus voorkomt dat users zichzelf adminrechten kunnen geven door een beetje te spelen met getallenquote:Op maandag 16 april 2007 23:38 schreef Intrepidity het volgende:
Vraagje.. ik gebruik PDO om met databases te verbinden, en dit in combinatie met prepared statements.. nou heb ik ergens gelezen dat het gebruik van prepared statements in principe genoeg beveiligt tegen SQL-injectie. Is dit waar? en welke maatregelen kan ik verder nog treffen?
Vreemd genoeg herkent hij je alias niet. Een oplossing is het stukje waar je de leeftijd in jaren berekent kopiëren naar je WHERE-clausulequote:Op woensdag 18 april 2007 13:34 schreef pimtenbrinke het volgende:
ok komt ie dan!
dit werkt:
select naam, voorl,
trunc((SYSDATE - GBDATUM)/365) leeftijd
from medewerkers
maar nu wil ik dus aangeven dat de leeftijd ouder moet zijn dan 35
ik dacht zelf aan dit:
where leeftijd > 35
order by leeftijd
maar dan krijg ik de melding:
where leeftijd < 30
*
ERROR at line 4:
ORA-00904: "LEEFTIJD": invalid identifier
Hoe kan ik die beperking anders opgeven dat de leeftijd ouder moet zijn dan 35?
ik werk trouwens met oracle
Nou, als je in je SELECT-clausule iets hebt staan als:quote:Op woensdag 18 april 2007 15:50 schreef pimtenbrinke het volgende:
en hoe gaat dat er dan uitzien...? enige tips om me op weg te helpen?
1 2 | ... |
1 2 | WHERE to_char(...) = zoveel |
quote:Op woensdag 18 april 2007 13:44 schreef Chandler het volgende:
tijd voor pizza :9
1 |
Ja hoor, table aliases. Simpelweg "lange_tabel_naam AS t" gebruiken (je kunt zelfs de AS weglaten).quote:Op woensdag 18 april 2007 18:43 schreef fokME2 het volgende:
Eerst wilde ik een ordinaire TVP plaatsen, maar ineens bedacht ik me! Een tijdje geleden werd ik een beetje moe van het "SELECT ... FROM hele_lange_tabelnaam_ofzo", dus vroeg ik me af of je net als bij kolommen ook een "AS" mogelijkheid hebt voor tabellen?
Heb hier destijds niets over op kunnen googlen.
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |