Nou ja, dat bedoel ik dusquote:Op zondag 16 augustus 2009 22:50 schreef Light het volgende:
[..]
Dan moet die bestandsnaam wel altijd even lang zijn. Anders ben je nog weer bezig met extra functies om uit te zoeken waar de bestandsnaam eindigt. Kan natuurlijk wel.
Dit is een stuk korter (en niet getest):
[ code verwijderd ]
Hij was idd greedy. Ik had de modifier U moeten gebruiken, ipv u.quote:Op maandag 17 augustus 2009 08:28 schreef Xcalibur het volgende:
[..]
Nou ja, dat bedoel ik dus
Deze is een stuk flexibeler en overzichtelijker, je bestandsnaam staat altijd voor de sluittag van de img bijvoorbeeld.
Ik denk dat deze wel greedy is of niet? Als er twee images instaan pakt hij de opentag van de eerste en de sluittag van de tweede, en is je resultaat alles wat er tusseninstaan. Maar daar is een modifier voor om dat te fixen, maar die weet ik even niet uit m'n hoofd
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | foreach ($prijzen as $dienst->d_prijs){ echo $dienst->d_prijs.'<br>'; $prijs = explode('.',($dienst->d_prijs/100)); if($prijs[1]){ echo $prijs[1].'<br>'; echo strlen($prijs[1]).'<br>'; $prijs[1] = (strlen($prijs[1]=='1')) ? '.'.$prijs[1].'0' : '.'.$prijs[1]; echo $prijs[1].'<br>'; echo strlen($prijs[1]).'<br>'; } $dienst->d_prijs = $prijs[0].$prijs[1]; echo $dienst->d_prijs.'<br><br>'; } |
1 2 3 4 5 6 7 8 9 10 11 12 13 | 1 1 .10 3 10.10 1050 5 1 .5 2 10.5 |
quote:Op maandag 17 augustus 2009 21:15 schreef Darkomen het volgende:
Ik sla het dus al ook op in hele centen ;-)
maar ik ga mn gebruikers geen centen voorschotelen zodat ze het in hun hoofd moeten omrekenen.
(Van http://nl2.php.net/sprintf)quote:Example #8 sprintf(): formatting currency
<?php
$money1 = 68.75;
$money2 = 54.35;
$money = $money1 + $money2;
// echo $money will output "123.1";
$formatted = sprintf("%01.2f", $money);
// echo $formatted will output "123.10"
?>
De haakjes staan ook niet goedquote:Op maandag 17 augustus 2009 21:30 schreef Darkomen het volgende:
HenryHill, daar begin je dus al met een gedeeld bedrag.
@glowmuis, ja daar gaat het fout, bij strlen==1
heb het even omgedraaid, strlen=2 en dan gaat het wel goed?!
Ja, daar was ik al bang voor, dat je dat zou zeggenquote:Op maandag 17 augustus 2009 21:30 schreef Darkomen het volgende:
HenryHill, daar begin je dus al met een gedeeld bedrag.
Als het dan toch via MySQL gaat, dan raad ik DECIMAL aan.quote:Op maandag 17 augustus 2009 21:37 schreef HenryHill het volgende:
[..]
Ja, daar was ik al bang voor, dat je dat zou zeggen
Sla gewoon het bedrag in hele centen op in je database. Als je het getal wilt afdrukken, deel het eerst door 100 en geef het mee aan de sprintf-functie. Komt helemaal goed.
Ik heb geen idee. Maar misschien weten ze het in Het grote (?) .NET en MSSQL topic welquote:Op dinsdag 18 augustus 2009 14:04 schreef Swetsenegger het volgende:
Ik moet recursief een aantal records uit MSSQL DB trekken, hoe kan ik dat het beste doen?
Eerste record wordt met SELECT * FROM db WHERE parent=x uit de db gehaald. Vervolgens zou ik met het id van dat record deze exercitie moeten herhalen. Hoe doe ik dat het makkelijkst? Een join ofzo?
Weet je wat nu het erge is, ik zit een stukje code van een paar dagen geleden te bekijken, daar gebruik ik wel gewoon number_format!quote:
Hmm, recursief... heeft het toevallig met een tree te maken? Zo ja, dan zou je misschien het Nested Set Model uit Managing Hierarchical Data in MySQL eens moeten bekijken.quote:Op dinsdag 18 augustus 2009 14:04 schreef Swetsenegger het volgende:
Ik moet recursief een aantal records uit MSSQL DB trekken, hoe kan ik dat het beste doen?
Eerste record wordt met SELECT * FROM db WHERE parent=x uit de db gehaald. Vervolgens zou ik met het id van dat record deze exercitie moeten herhalen. Hoe doe ik dat het makkelijkst? Een join ofzo?
quote:Op dinsdag 18 augustus 2009 20:08 schreef HenryHill het volgende:
[..]
Hmm, recursief... heeft het toevallig met een tree te maken? Zo ja, dan zou je misschien het Nested Set Model uit Managing Hierarchical Data in MySQL eens moeten bekijken.
Hehe... had gekundquote:Op dinsdag 18 augustus 2009 20:26 schreef Swetsenegger het volgende:
[..]
Nee the nested set heb ik al een hele tijd terug toegepast in een database driven menu wat ik mijn cms gebruik. Nee in dit geval is het een redelijk rudimentaire parent/child verhouding in een situatie waar nested set niet echt gaat werken.
1 2 3 4 5 | from medewerker as level1 left join medewerker as level2 on (level1.med_id = level2.med_manager_id) left join medewerker as level3 on (level2.med_id = level3.med_manager_id) where level1.med_naam = 'Jansen' |
enkele = is toewijzenquote:Op woensdag 19 augustus 2009 13:38 schreef Pizzahut het volgende:
klein vraagje tussendoor, ik weet dat == een is gelijk aan betekend maar wat is .= en === eigenlijk?
1 2 3 4 | $var = 3 echo $var; ?> |
1 |
1 2 3 4 5 6 7 8 | $var="3"; //OF $var = 3; if($var==3){ echo 'true'; }else{ echo 'false'; } ?> |
1 |
1 2 3 4 5 6 7 8 | $var ="3"; //$var=3; geeft 'true' terug. if($var===3){ echo 'true'; }else{ echo 'false'; } ?> |
1 |
1 2 3 4 5 | $var = 'foo'; $var.= 'bar'; echo $var; ?> |
1 |
1 2 3 4 | 2 2 21-09-2009 27-09-2009 3 1 25-08-2009 31-08-2009 4 3 18-08-2009 26-09-2009 |
1 2 3 4 5 6 7 8 | unix_timestamp(vanaf) AS vanaf, unix_timestamp(tot) AS tot FROM reserveringen WHERE kamer = '" . $DB->escape($_POST['kamers']) . "' AND (vanaf >= '" . $vanaf_tijd . "' OR tot <= '" . $tot_tijd . "') LIMIT 1 |
1 2 3 4 5 6 7 | unix_timestamp(vanaf) AS vanaf, unix_timestamp(tot) AS tot FROM reserveringen WHERE kamer = '2' AND '1250719200' BETWEEN vanaf AND tot LIMIT 1 |
Zou jij mij een voorbeeld kunnen geven waarbij de uitkomst van === true is?quote:Op woensdag 19 augustus 2009 13:44 schreef Swetsenegger het volgende:
[..]
enkele = is toewijzen
dubbele == is vergelijken
3 dubbel === is vergelijken op inhoud EN type.
enkele met .= is koppelen.
Voorbeeld:
[ code verwijderd ]
[ code verwijderd ]
[ code verwijderd ]
[ code verwijderd ]
[ code verwijderd ]
[ code verwijderd ]
[ code verwijderd ]
[ code verwijderd ]
quote:Op vrijdag 21 augustus 2009 18:23 schreef Pizzahut het volgende:
[..]
Zou jij mij een voorbeeld kunnen geven waarbij de uitkomst van === true is?
1 2 3 4 5 | $i = 1; if($i === '1') echo "$i === '1'"; if($i === 1) echo "$i === 1"; ?> |
quote:Op vrijdag 21 augustus 2009 18:23 schreef Pizzahut het volgende:
[..]
Zou jij mij een voorbeeld kunnen geven waarbij de uitkomst van === true is?
1 2 3 4 5 6 7 | $x=2 if ($x===2) { //true; } ?> |
Even voor de duidelijkheid:quote:Op woensdag 19 augustus 2009 13:51 schreef Chandler het volgende:
Ik kom even ergens niet uit. Voor een resereringssysteem gebruik ik een tabel met de volgende gegevens.
id - kamer - vanaf - tot
int - varchar - timestamp - timestamp
nu heb ik in de database de volgende gegevens
[ code verwijderd ]
Nu wil ik controlleren of kamer 1 beschikbaar is tussen 18 en 19 aug, echter krijg ik dat niet goed voor elkaar
Hoe doet men dit? ik probeerde het zo
[ code verwijderd ]
Wat doe ik fout?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | 1. RrrrrrrR X------X 2. RrrrrrrR X--X 3. RrrrrrrR X------X 4. RrrrrrrR X--X 5. RrrrrrrR X--------------X 6. RrrrrrrR |
1 2 3 | RewriteRule ^blog$ index.php?page=1 (dit is mijn frontpage) RewriteRule ^blog/([0-9][0-9])$ index.php?page=7&id=$1 (mijn lees blog pagina) |
De meeste hotels willen dat je voor 12 uur vertrekt op de vertrekdag, en je kunt pas je kamer op na 3 of 4 uur 's middags. Dan kun je dus een dubbele reservering hebben voor een dag (persoon A vertrekt en persoon B komt aan). Of je moet dat op een andere manier ondervangen.quote:Op vrijdag 21 augustus 2009 20:04 schreef HenryHill het volgende:
Oh, en een gratis tip van mij: sla geen datumranges op, maar een rij per dag waarop een kamer bezet is (elke datum-rij krijgt dan een FK-verwijzing naar de reservering zelf). Dit maakt je queries een heel stuk makkelijker.
Een dag loopt van 12 uur 's middags tot 12 uur 's middags de volgende dag. M.a.w.: als je laatst opgeslagen dag 21 Aug is, dan heb je tot 22 Aug 12 uur om uit te checken. Opgelost.quote:Op vrijdag 21 augustus 2009 21:05 schreef Light het volgende:
[..]
De meeste hotels willen dat je voor 12 uur vertrekt op de vertrekdag, en je kunt pas je kamer op na 3 of 4 uur 's middags. Dan kun je dus een dubbele reservering hebben voor een dag (persoon A vertrekt en persoon B komt aan). Of je moet dat op een andere manier ondervangen.
1 2 3 4 5 6 7 | FROM G_Producten WHERE Leverancier = '" . addslashes ( $_GET['supplier'] ) . "' AND ProductTitel LIKE '%" . addslashes ( $_GET['data'] ) . "%' OR IdProduct LIKE '%" . addslashes ( $_GET['data'] ) . "%' ORDER BY ProductTitel ASC LIMIT 40 |
1 2 3 4 5 6 7 8 9 | FROM G_Producten WHERE ( Leverancier = '" . addslashes ( $_GET['supplier'] ) . "' AND ProductTitel LIKE '%" . addslashes ( $_GET['data'] ) . "%' ) OR IdProduct LIKE '%" . addslashes ( $_GET['data'] ) . "%' ORDER BY ProductTitel ASC LIMIT 40 |
1 2 3 4 5 6 7 8 9 | FROM G_Producten WHERE Leverancier = '" . addslashes ( $_GET['supplier'] ) . "' AND ( ProductTitel LIKE '%" . addslashes ( $_GET['data'] ) . "%' OR IdProduct LIKE '%" . addslashes ( $_GET['data'] ) . "%' ) ORDER BY ProductTitel ASC LIMIT 40 |
1 2 3 4 5 6 7 8 9 10 11 12 | FROM G_Producten WHERE ( Leverancier = '" . addslashes ( $_GET['supplier'] ) . "' AND ProductTitel LIKE '%" . addslashes ( $_GET['data'] ) . "%' ) OR IdProduct LIKE '%" . addslashes ( $_GET['data'] ) . "%' ORDER BY ProductTitel ASC LIMIT 40 |
1 2 3 4 5 6 7 8 9 10 11 12 | FROM G_Producten WHERE Leverancier = '" . addslashes ( $_GET['supplier'] ) . "' AND ( ProductTitel LIKE '%" . addslashes ( $_GET['data'] ) . "%' OR IdProduct LIKE '%" . addslashes ( $_GET['data'] ) . "%' ) ORDER BY ProductTitel ASC LIMIT 40 |
Die === is vooral onmisbaar omdat het gedrag van == nogal idioot is:quote:
1 2 3 4 5 6 7 8 | var_dump($a);// --> bool(true) $a = (0 === 'foo'); var_dump($a);// --> bool(false) $a = (true == 'foo'); var_dump($a);// --> bool(true) $a = (true === 'foo'); var_dump($a);// --> bool(false) |
Je kunt ook gewoon true == false aantonen op die manierquote:Op maandag 24 augustus 2009 07:36 schreef SuperRembo het volgende:
[..]
Die === is vooral onmisbaar omdat het gedrag van == nogal idioot is:
[ code verwijderd ]
preg_match?quote:Op maandag 24 augustus 2009 14:28 schreef Chandler het volgende:
Ik heb nog even een vraag; mijn vorige is net opgelost (Bedankt HenryHill).
eregi komt in de toekomstige versie 6 van php te vervallen, hoe en met welke functie moet ik nu strings checken? ik wil bv een string checken of het alleen bestaat uit a-zA-Z0-9-_ en niets meer..
Anyone?
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |