Ik denk een afrondingsfout zoals je die wel vaker ziet met floats. Dezelfde reden dat dit niet werkt bv:quote:
1 2 3 4 5 6 7 8 9 10 | <?php if((0.1 + 0.2) === 0.3) { die('true'); } else { die('false'); } ?> |
Het punt is dat 8.45 * 100 gewoon 845 zou moeten zijn, met of zonder afronding.quote:Op donderdag 2 augustus 2012 11:50 schreef Boze_Appel het volgende:
Als je gaat rekenen met float en (int) gebruikt dan werkt het als floor en wordt dus naar beneden afgerond.
1 2 3 4 5 6 7 | public function setAmount($amount) { $tmpAmount = (int) ($amount * 100); if ($tmpAmount / 100 == $amount && $tmpAmount >= 0 && $tmpAmount <= 999999999999 ) { $this->amount = $tmpAmount; } } |
Maar als je 5.45 gebruikt gaat het wel goed.quote:Op donderdag 2 augustus 2012 11:50 schreef Boze_Appel het volgende:
Als je gaat rekenen met float en (int) gebruikt dan werkt het als floor en wordt dus naar beneden afgerond.
Floats zijn gewoon niet exact. Sommige getallen kunnen wel, anderen niet.quote:Op donderdag 2 augustus 2012 11:54 schreef mstx het volgende:
Maar als je 5.45 gebruikt gaat het wel goed.
Het is waarschijnlijk een combinatie. 8.45 * 100 geeft waarschijnlijk iets van 844.98989898989 ofzo. Afronden geeft 845, maar casten naar int geeft 844 want een cast trunkeert (is dit nederlands?) alleen.quote:Op donderdag 2 augustus 2012 11:52 schreef Tijn het volgende:
[..]
Het punt is dat 8.45 * 100 gewoon 845 zou moeten zijn, met of zonder afronding.
Maar dat is het niet, want 8.45 bestaat niet in floats.
En dat is zo omdat 8.45 niet in floats uit te drukken is.quote:Op donderdag 2 augustus 2012 12:02 schreef ralfie het volgende:
[..]
8.45 * 100 geeft waarschijnlijk iets van 844.98989898989 ofzo.
1 2 3 4 5 6 7 8 | Message :='Date: '||to_char(sysdate,'DD-MON-YYYY HH24:MI')||crlf|| 'From: '||sender||crlf|| 'To: '||res_recipient||crlf|| 'Cc: '||cc_recipient||crlf|| 'Cc: '||cc_recipient2||crlf|| 'Subject: '||subj||crlf|| ''||crlf|| BODY; |
Wat voor gegeven kan je gebruiken dan?quote:Op dinsdag 14 augustus 2012 10:20 schreef Scorpie het volgende:
Zonder data kunnen we alleen maar gissen natuurlijk.
Dit ook al geprobeerd? http://www.java2s.com/Tut(...)THDDYYYYHH24MISS.htmquote:Op dinsdag 14 augustus 2012 10:22 schreef Cue_ het volgende:
[..]
Wat voor gegeven kan je gebruiken dan?
Want ik denk/dacht dat het hem in de
'Date: '||to_char(sysdate,'DD-MON-YYYY HH24:MI')|
zou moeten zitten. En dat die het format niet herkend. Maar verschillende variaties geprobeerd.
Daarnet, geen effectquote:Op dinsdag 14 augustus 2012 10:24 schreef Scorpie het volgende:
Dit ook al geprobeerd? http://www.java2s.com/Tut(...)THDDYYYYHH24MISS.htm
wat ik al heb:quote:ik wil graag het menu in 1x kunnen opbouwen, voor elke pagina
heb nu 1 pagina (de index) met html/css, hierin staat een stukje php die uit een andere file een functie haalt op het moment dat er op een link wordt geklikt, in die functie staat de tekst die in het "main"-venster komt te staan.
Dus 1 opmaak pagina...
nu wil ik dus in die opmaakpagina ook mijn menu zetten..maar hoe krijg ik zo'n "complex" menu gevangen op 1 pagina
mijn pagina met een werkend menu maar dit is dus heel omslachtig gemaakt door heel veel html pagina's
heb deze pagina gemaakt toen ik eigenlijk alleen nog maar de include van php kon.
elke pagina bestaat dus uit een complete html pagina...ben nu wel zover dat ik weet dat dat niet slim is als je iets wilt aanpassen
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | <?php function menu() { $sql = mysql_query("SELECT * FROM contentmenu WHERE C_name = C_hoofd ORDER BY C_id ASC"); $array = array(); $i = 0; while($tmp = mysql_fetch_array($sql)) { $array[$i]["naam"] = $tmp["C_hoofd"]; $i++; } return $array; } $menu = menu(); foreach($menu as $menudata) { $actief = $menudata["naam"] == $_GET['func'] ? ' actief' : ''; echo "<a href = 'index_new2.php?func=".$menudata["naam"]."' class='".$menudata["naam"]. $actief ." ' >".$menudata["naam"]."</a>"; } ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | <?php function submenu(){ $func= mysql_real_escape_string($_GET['func']); $sql = mysql_query ("SELECT * FROM contentmenu WHERE C_name != C_hoofd AND C_hoofd = '$func' ORDER BY C_id ASC ") or die (mysql_error()); $array = array(); $i = 0; while($tmp = mysql_fetch_array($sql)) { $array[$i]["naam"] = $tmp["C_name"]; $i++; } return $array; } $submenu = submenu(); foreach($submenu as $submenudata) { $actief = $submenudata["naam"] == $_GET['func'] ? ' actief' : ''; echo "<li><a href = 'index_new2.php?func=".$submenudata["naam"]."' class='".$submenudata["naam"]. $actief ." ' >".$submenudata["naam"]."</a></li>"; } ?> ?> |
1 2 3 4 5 6 7 | <?php $sql = 'SELECT * FROM machines'; if (!empty($ids)) { $sql .= 'WHERE id IN '.$ids; } $sql .= 'ORDER BY ...'; ?> |
1 2 3 4 5 | <?php if (empty($ids)) $ids = '*'; $sql = 'SELECT * FROM machines WHERE id IN '.$ids.' ORDER BY ...'; ?> |
IN werkt met ('1','2','3').quote:Op donderdag 16 augustus 2012 14:33 schreef KomtTijd... het volgende:
kan ik ipv dit:
[ code verwijderd ]
ook zoiets doen?
[ code verwijderd ]
zoals in het laatste voorbeeld is het veel duidelijker wat de query doet, alleen met * werkt het niet. Met % ook niet. Of moet ik dit gewoon niet willen?
ja zoiets zat ik ook al te denken maar dat maakt het alleen maar vager inderdaad.quote:Op donderdag 16 augustus 2012 14:39 schreef GlowMouse het volgende:
Dat moet je niet willen, IN kent geen wildcards. Misschien kun je nog iets doen als (id IN (-1) OR 1=1), maar dat vergroot de leesbaarheid niet.
$ids is normaalgesproken een comma seperated lijst met id's inderdaad, maar als die leeg is wil ik alles selecteren ipv niets. Voorbeeld 1 werkt gewoon maar vond ik lelijkquote:Op donderdag 16 augustus 2012 14:36 schreef remi1986 het volgende:
[..]
IN werkt met ('1','2','3').
als $ids een array is kan je implode gebruiken. Of bedoel je dit niet?
1 2 3 | RewriteRule ^/?product/(.*)/(.*)/(.*).php$ /p/$2/$3.php [L,R=301] RewriteRule ^/?hoofdgroep/(.*)/(.*).php$ /g/$1/$2.php [L,R=301] RewriteRule ^(.*)\?*$ index.php?_route_=$1 [L,QSA] |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |