Op het eerste gezicht zou je dat wel zeggen. Echter wordt een float opgeslagen als een IEEE 754-1985 floating point, terwijl een decimal de exacte getallen opslaat. Dat is ook de reden waarom de opslagvereisten voor een float neerkomen op 4 danwel 8 bytes (afhankelijk van de vereiste precisie) en een decimal afhankelijk van de grootte van de precisieparameters veel groter kan zijn. Zie ook deze paginaquote:Op dinsdag 8 april 2008 13:44 schreef SuperRembo het volgende:
[..]
Floats en decimals worden allebei binair opgeslagen, het enige verschil is eigenlijk dat bij een decimal de positie van de komma vast is, en bij een float variabel (drijvend/floating). Een decimal heeft een vast aantal decimalen, een float heeft een vast aantal significante cijfers.
Je combineert de insert en de update.quote:Op dinsdag 8 april 2008 16:07 schreef qu63 het volgende:
Wat klopt er niet aan deze query?
[ code verwijderd ]
1 2 3 | $sql = "UPDATE tabelnaam SET kolom1='waarde1', kolom2='waarde2' WHERE kolom3='waarde3'" ?> |
quote:Op dinsdag 8 april 2008 16:07 schreef qu63 het volgende:
Wat klopt er niet aan deze query?
[ code verwijderd ]
1 2 3 4 | $q = "UPDATE rit SET user1 = 'TESTUSER', user2 = '', van_datum = '1206710100', naar_datum = '1206710100', vertrek = 'Bussum', aankomst = 'Naarden', km = 15, prijs = 250, pax = 12, opmerkingen = 'dus' WHERE rit_id = 7"; mysql_query($q); ?> |
thanks!quote:Op dinsdag 8 april 2008 16:18 schreef ursel het volgende:
[..]
Je combineert de insert en de update.
Update moet als het ware zo:
[ code verwijderd ]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | if(isset($_GET['editid']) and isset($_POST['submit']) and $_POST['submit'] == "ok"); { $user1 = mysql_real_escape_string($_POST['user1']); $user2 = mysql_real_escape_string($_POST['user2']); $van_datum = strtotime(mysql_real_escape_string($_POST['van_datum'])); $naar_datum = strtotime(mysql_real_escape_string($_POST['naar_datum'])); $vertrek = mysql_real_escape_string($_POST['vertrek']); $aankomst = mysql_real_escape_string($_POST['aankomst']); $km = mysql_real_escape_string($_POST['km']); $prijs = mysql_real_escape_string($_POST['prijs']); $pax = mysql_real_escape_string($_POST['pax']); $opmerkingen = mysql_real_escape_string($_POST['opmerkingen']); $q = "UPDATE rit SET user1 = '".$user1."', user2 = '".$user2."', van_datum = '".$van_datum."', naar_datum = '".$naar_datum."', vertrek = '".$vertrek."', aankomst = '".$aankomst."', km = '".$km."', prijs = '".$prijs."', pax = '".$pax."', opmerkingen = '".$opmerkingen."' WHERE rit_id = ".$_GET['editid'].""; if(mysql_query($q)) { echo $q; $succes = true; } else { echo $q; } } ?> |
Idd, fixed point is exact. Ik was uit gegaan van de manier waarop MSSql z'n decimals opslaat, maar sinds versie 5 gebruikt MySQL ook voor decimals een binair formaat. Alleen vreemd dat de decimalen (het deel achter de komma) blijkbaar apart wordt opgeslagen, in MSSql wordt 1 getal opgeslagen + de positie van de komma.quote:Op dinsdag 8 april 2008 16:12 schreef JeRa het volgende:
[..]
Op het eerste gezicht zou je dat wel zeggen. Echter wordt een float opgeslagen als een IEEE 754-1985 floating point, terwijl een decimal de exacte getallen opslaat. Dat is ook de reden waarom de opslagvereisten voor een float neerkomen op 4 danwel 8 bytes (afhankelijk van de vereiste precisie) en een decimal afhankelijk van de grootte van de precisieparameters veel groter kan zijn. Zie ook deze pagina
Zoiezo de ; na je if weghalen.quote:Op dinsdag 8 april 2008 16:42 schreef qu63 het volgende:
op de een of andere manier werkt dit niet:
[ code verwijderd ]
Hij voert het gewoon uit, ook al is de $_POST leeg :{
waardoor nu rit_id 7 helemaal leeg is :')
iemand een tip over hoe dit beter kan en/of waar de fout zit?
1 2 3 4 5 6 7 8 9 10 | $_GET = array ("editid" => 1); $_POST = array ("submit" => 'ok'); if(isset($_GET['editid']) and isset($_POST['submit']) and $_POST['submit'] == "ok") { print_r($_POST); // Waarom check je de rest van $_POST niet? } ?> |
RewriteRule ^/(.*)/$ http://blabla.nl/index.php?page=$1quote:Op dinsdag 8 april 200817:52 schreef GioStyle het volgende:
Met .htaccess kan je urls herschrijven, alleen ik kom er niet helemaal uit.
Voorbeeld:
Ik heb nu een link: http://blabla.nl/index.php?page=contact
Ik zou het mooier vinden als bovenstaande link als volgt wordt weergegeven: http://blabla.nl/contact
Hoe zet ik dit in .htacces?
Ik heb het nu wat niet werkt:
RewriteEngine On
Hmm.. ik moet nog veel leren zo te zien haha..
het was die ; idd, thanks!quote:Op dinsdag 8 april 2008 17:52 schreef slacker_nl het volgende:
[..]
Zoiezo de ; na je if weghalen.
En..
[ code verwijderd ]
Ok. Maar waar?quote:Op dinsdag 8 april 2008 20:44 schreef super-muffin het volgende:
Je kan je document root wel ergens instellen (waar precies weet ik niet, ik gebruik MAMP, met de M van Macintosh)
Dat werkt helaas ook niet. Weet iemand anders een andere manier om mooier urls te maken?quote:Op dinsdag 8 april 2008 19:10 schreef mcDavid het volgende:
[..]
RewriteRule ^/(.*)/$ http://blabla.nl/index.php?page=$1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | if($_GET['games'] == "alle"){ $indexnr = 0; $limit = 20; $order = "desc"; $arr = array(); // generate all letters for ($i = 97; $i < 123; $i++) { $indexnr = $indexnr +1; $t1[$indexnr] = chr($i); } $mode = "alphabet"; foreach($t1 as $key => $letter){ echo("<div id=\"colOne\"><h3>$letter</h3> <div class=\"bg1\"><ul>"); include('pre_list_games.php'); echo("<br> <i><a href=\"index.php\">Terug naar de index</a></i>"); echo("</ul></div></div> \n"); } exit(); } ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | if($mode == "alphabet") { $rowheight = 0; $minrows = 10; $m = "<i>Nog geen spelletjes</i>"; $sql3 = "SELECT t01.id, t01.title, t01.photo, t01.descr from games t01 where t01.active = 1 AND lower(t01.title) LIKE '$letter%' order by t01.title asc limit $limit"; $result3 = mysql_query($sql3) or die ("ERROR: " . mysql_error()); while ($rij3 = mysql_fetch_array($result3)){ if($rij3['photo'] == ""){ $rij3['photo'] = "images/no_thumb.gif"; } $title = $rij3['title']; if(strlen($title)>20) { $title = substr($title, 0, 20); $title = "" . $title . "..."; } echo("<a ONMOUSEOVER=\"popup('<img src=".$rij3['photo']." width=$settings2->sizex height=$settings2->sizex>','0')\"; ONMOUSEOUT=\"stopthumb()\" href=\"index2.php?game=".$rij3['id']."&name=".str_replace(" ", "_", $rij3['title'])."\" $target>".$title."</a><br> \n"); $m=""; $rowheight = $rowheight+1; } echo($m); for ( $i = $rowheight; $i < $minrows; $i++) { echo("<br>"); } } ?> |
Welwaarquote:Op dinsdag 8 april 200823:10 schreef GioStyle het volgende:
[..]
Dat werkt helaas ook niet. Weet iemand anders een andere manier om mooier urls te maken?
Een cronjob kan ook gewoon een PHP file opstarten. Daarvoor hoeft niks bevestigd te worden.quote:Op dinsdag 8 april 2008 18:39 schreef -J-D- het volgende:
Hoi.
Mijn mysql-db wordt dagelijks gebackupd naar een gmail-adres.
Nu wil ik eigenlijk dat de db ook dagelijks in een excelbestand gegooid wordt.
Ik kan wel handmatig elke dag die query draaien, maar dat schiet niet op.
Is zoiets te automatiseren?
Ik heb me ooit eens laten vertellen dat dit met een cronjob kan? Maar dan moet je toch nog handmatig bevestigen? Bijv. bij het opslaan van het bestand?
Alvast bedankt voor het meedenken.
Hmm het werkt alsnog niet. Moet ik misschien de links in de index ook veranderen?quote:Op dinsdag 8 april 2008 23:23 schreef mcDavid het volgende:
[..]
Welwaar
ohwacht misschien moet die / na het ^ weg. En misschien moet er nog [L] achter
Je zou voor een 'poor mans' mod_rewrite kunnen gaan... Als url gebruik je dan bijvoorbeeld http://example.com/test.php/topic/1134706/6/60 , en in je code parse je de url die je aanroept..quote:Op dinsdag 8 april 2008 23:10 schreef GioStyle het volgende:
[..]
Dat werkt helaas ook niet. Weet iemand anders een andere manier om mooier urls te maken?
1 2 3 4 5 6 7 | echo '<pre>'; $querystring=$_SERVER['PATH_INFO']; $elements=split('/',$querystring); print_r($elements); echo '</pre>'; ?> |
1 2 3 4 5 6 7 8 | ( [0] => [1] => topic [2] => 1134706 [3] => 6 [4] => 60 ) |
Het moet gewoon werken. Anders doe je iets raars met de url's, of je .htaccess wordt niet herkend.quote:Op dinsdag 8 april 200823:32 schreef GioStyle het volgende:
[..]
Hmm het werkt alsnog niet. Moet ik misschien de links in de index ook veranderen?
Kan het komen omdat ik gebruik maak van de volgende script:quote:Op woensdag 9 april 2008 00:00 schreef mcDavid het volgende:
[..]
Het moet gewoon werken. Anders doe je iets raars met de url's, of je .htaccess wordt niet herkend.
1 2 3 4 5 6 7 8 9 10 11 12 13 | if(!IsSet($_GET['page'])) { $_GET['page'] = "home"; } switch ($_GET['page']) { case 'home': include('home/home.php'); break; default: include('home/home.php'); ?> |
Je voorbeeld is precies het omgekeerde van wat hij wilt bereiken.quote:Op woensdag 9 april 2008 00:00 schreef mcDavid het volgende:
Het moet gewoon werken. Anders doe je iets raars met de url's, of je .htaccess wordt niet herkend.
Het korte antwoord: Haal de limit weg uit je query, dan krijg je alle resultaten terug.quote:Op dinsdag 8 april 2008 23:20 schreef TommyGun het volgende:
Beste allen,
Binnen mijn (game) website heb ik een overzicht van a t/m z welke alle games uit mijn database toont, maar gezien het grote aantal heb ik dit gelimit op 20 per letter.
Dus er worden 20 games beginnende met de letter 'a' getoond, 20 met 'b', en ga zo maar verder. Nu wil ik echter ook de mogelijkheid om alle games beginnende met 'a', 'b' etc te tonen, maar hier zit ik mee in de knoop.
Het stukje code dat ik gebruik voor het a t/m z overzicht:
index.php
[ code verwijderd ]
1 2 3 4 5 6 7 8 9 10 11 12 | for ($i = 97; $i < 123; $i++) { $indexnr = $indexnr +1; $t1[$indexnr] = chr($i); } // snip foreach($t1 as $key => $letter){ echo("<div id=\"colOne\"><h3>$letter</h3> <div class=\"bg1\"><ul>"); include('pre_list_games.php'); echo("<br> <i><a href=\"index.php\">Terug naar de index</a></i>"); echo("</ul></div></div> \n"); } |
1 2 3 4 5 6 7 8 9 10 | // generate all letters for ($i = 97; $i < 123; $i++) { $letter = chr($i); echo("<div id=\"colOne\"><h3>$letter</h3> <div class=\"bg1\"><ul>"); /* pre_list_games($mode, $letter); functie hier */ echo("<br> <i><a href=\"index.php\">Terug naar de index</a></i>"); echo("</ul></div></div> \n"); } |
1 2 3 4 5 6 7 8 9 10 11 | $array_ref =& $array; # Foreach gebruikt nu de referentie, en is dus sneller # omdat er geen kopie van de array wordt gemaakt foreach($array_ref as $value) { print "$value\n" } # En wil je echt slim doen (vanaf PHP5): # We maken nu ook geen kopie aan van $value, maar gebruiken # de referentie foreach($array_ref as &$value_ref) { print "$value_ref\n" } |
Hmm.. En als ik nou alleen een index heb met een pagina's.quote:Op woensdag 9 april 2008 02:18 schreef slakkie het volgende:
@GioStyle
RewriteEngine On
RewriteRule ^test/(.*) /~wesleys/index.php?id=$1 [L]
In dit geval is http://web.server.nl/~wesleys/test/1 hetzelfde als http://web.server.nl/~wesleys/index.php?id=1
dan kan ik niet anders concluderen dat het werken met een reference sneller is dan met de kopie van een array.quote:Unless the array is referenced, foreach operates on a copy of the specified array and not the array itself.
Dan concludeer je dat fout; je werkt inderdaad op een kopie van de array, echter wordt die kopie pas echt gemaakt zodra je de array gaat wijzigen.quote:Op woensdag 9 april 2008 10:25 schreef slakkie het volgende:
Jera, ik ga eens wat meer spelen met references en de verschillen uitvogelen. Alleen als ik lees:
[..]
dan kan ik niet anders concluderen dat het werken met een reference sneller is dan met de kopie van een array.
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |