Thanks. Zat allemaal moeilijk te doen met die array's vergelijken, maar dat werkte allemaal niet.quote:Op dinsdag 6 oktober 2009 13:58 schreef Light het volgende:
Aangenomen dat je subqueries kunt gebruiken:
[ 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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | ( [1] => 2 [2] => 2 [3] => 0 [6] => 1 [8] => 1 [10] => 0 [11] => 1 [12] => 4 [13] => 2 [14] => 1 [27] => 1 [28] => 1 [33] => 1 ) gisteren:Array ( [1] => 2 [2] => 0 [3] => 0 [5] => 1 [6] => 2 [7] => 1 [8] => 1 [9] => 1 [11] => 0 [12] => 4 [13] => 3 [14] => 1 ) totaal:Array ( [12] => 8 [13] => 5 [1] => 4 [6] => 3 [14] => 2 [8] => 2 [2] => 2 [9] => 1 [5] => 1 [7] => 1 [11] => 1 [26] => 0 [27] => 0 [28] => 0 [33] => 0 [17] => 0 [16] => 0 [3] => 0 [4] => 0 [10] => 0 [15] => 0 ) geen hits SQL: SELECT * FROM `linkpartners` WHERE ID NOT in(1, 2, 3, 6, 8, 11, 12, 13, 14, 5, 7, 9) |
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 26 27 28 29 | $totaal = array(); foreach(array_keys($hitsArray) as $key) { if(isset($hitsArrayYesterday[$key])) { $totaal[$key] = $hitsArray[$key] + $hitsArrayYesterday[$key]; } } foreach(array_keys($hitsArrayYesterday) as $key) { if(!isset($totaal[$key])) { $totaal[$key] = $hitsArrayYesterday[$key]; } } $SQLnohits = "SELECT * FROM `linkpartners` WHERE ID NOT in("; foreach(array_keys($totaal) as $key) { $SQLnohits .= $key .", "; } $SQLnohits = substr($SQLnohits, 0, -2) .")"; $querynohits = mysql_query($SQLnohits); while($row = mysql_fetch_object($querynohits)) { $totaal[$row->ID] = 0; } arsort($totaal); ?> |
Laat je niet een komma teveel genereren?quote:Op dinsdag 6 oktober 2009 15:28 schreef pc-fr34k het volgende:
Ik had al eerder hier hulp gevraagd voor dit probleem, dacht dat het goed was maar blijkbaar nog niet. Ik heb dus 3 arrays in totaal. $hitsArray staan de hits per partner van vandaag en in $hitsArrayYesterday staan die van gisteren. Die worden samengevoegd in $totaal, waarna de overige partners zonder hits worden binnengehaalt.
Arrays:
[ code verwijderd ]
Code:
[ code verwijderd ]
Wie o wie heeft door wat er nou fout is?
Bedankt..
Daar is dit stuk voorquote:Op dinsdag 6 oktober 2009 15:55 schreef Lantashh het volgende:
[..]
Laat je niet een komma teveel genereren?
1 2 3 | $SQLnohits = substr($SQLnohits, 0, -2) .")"; ?> |
Dat gaat goed tot je een keer een array met maar 1 element hebt.quote:Op dinsdag 6 oktober 2009 16:36 schreef pc-fr34k het volgende:
[..]
Daar is dit stuk voor
[ code verwijderd ]
Als je kijkt naar die uiteindelijke query zie je ook dat het klopt.(onderaan die array's in dat eerste stuk)
1 2 3 | $keys = implode(', ', array_keys($totaal)); ?> |
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 26 27 28 29 30 31 32 | error_reporting(E_ALL); class main { function test() { echo 'main:test()<br />'; } } class sub extends main { function test() { echo 'main:submodule:test()<br /'; parent::test(); } public function test2() { echo 'main:submodule:test2()<br />'; $this->test(); } } $x = new main(); $x->test(); $x->test2(); ?> |
1 |
gebruik GREATEST(0, aantal-2)quote:Op woensdag 7 oktober 2009 20:45 schreef Swetsenegger het volgende:
[ code verwijderd ]
Hoe voorkom ik nou dat aantal op -1 komt te staan als er onverhoopt maar 1 aantal was voor de query?
Wat de copulatie doet dit??quote:
1 |
Tnx, ik dacht dat het via een de hoofdclass overgenomen zou worden (denk net andersom blijkbaar).quote:Op woensdag 7 oktober 2009 20:45 schreef GlowMouse het volgende:
je moet ook new sub(); doen, anders gebruik je de eerste class.
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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 | error_reporting(E_ALL); class main { public function test() { echo 'main:test()<br />'; } } class db extends main { var $secret = 123; function set() { $this->secret = true; } function abc() { echo 'abc'; echo $this->secret; } } class sub extends main { public function test() { echo 'main:submodule:test()<br />'; parent::test(); } public function test2() { echo 'main:submodule:test2()<br />'; $this->test(); } public function start() { db::set(); } public function woei() { db::abc(); } } $x = new sub; $x->woei(); echo '<hr>'; $x->test2(); ?> |
quote:Op dinsdag 6 oktober 2009 18:58 schreef Light het volgende:
[..]
Dat gaat goed tot je een keer een array met maar 1 element hebt.
Het kan veel overzichtelijker en korter:
[ code verwijderd ]
1 2 3 4 5 6 7 8 9 | foreach(array_keys($hitsArray) as $key) { if(!isset($totaal[$key])) { $totaal[$key] = $hitsArray[$key]; } } ?> |
1 2 3 4 5 6 7 8 9 | foreach(array_keys($hitsArrayYesterday) as $key) { if(!isset($totaal[$key])) { $totaal[$key] = $hitsArrayYesterday[$key]; } } ?> |
1 2 3 4 5 | unset($_SESSION['cardid']); // Stop de kaart in een sessie. $_SESSION['cardid'] = $_POST['cardid']; ?> |
omdat hij dat niet doet. dat is juist het probleemquote:Op donderdag 8 oktober 2009 18:28 schreef slacker_nl het volgende:
$_SESSION['cardid'] = $_POST['cardid']; overwrite het toch gewoon, dus waarom unsetten?
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 26 27 28 29 30 31 32 33 34 35 36 37 | $directory="Icons"; $results = array(); $handler = opendir($directory); while ($file = readdir($handler)) { if ($file != '.' && $file != '..' && $file != "robots.txt" && $file != ".htaccess"){ $currentModified = filectime($directory."/".$file); $file_names[] = $file; $file_dates[] = $currentModified; } } closedir($handler); arsort($file_dates); //Match file_names array to file_dates array $file_names_Array = array_keys($file_dates); foreach ($file_names_Array as $idx => $name) $name=$file_names[$name]; $file_dates = array_merge($file_dates); $i = 0; //Loop through dates array and then echo the list foreach ($file_dates as $$file_dates){ $j = $file_names_Array[$i]; $file = $file_names[$j]; $i++; echo "Latest icons: $file<br/>"; } ?> |
Gedaanquote:
Weet niet of het sneller is, maar..quote:Op vrijdag 9 oktober 2009 19:47 schreef WebbySP het volgende:
Hoi,
ik werd naar dit topic verwezen, dus vandaar hier nog maar eens :
Ik heb een pagina waarop een aantal duizend icons te vinden zijn. Alles werkt perfect, alleen wil ik nu een dingetje toevoegen, namelijk : de laatste (3) toevoegingen. Oftewel, de nieuwste 3 icons.
Ik heb nu een scriptje (zie hieronder) die de hele directory doorloopt en dan vervolgens ALLE icons weergeeft in een lijst.
Niet alleen duurt het (te) lang voordat ie alles heeft doorgespit, maar ook moeten er maar 3 weergegeven worden.
Is het mogelijk om het script aan te passen dat ie sneller werkt én ook alleen de laatste 3 icons alleen in een lijstje weergeeft ?
[ 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 26 27 28 29 30 31 32 33 | $directory="pics/aruba_2009/"; $max = 3; $results = array(); $handler = opendir($directory); while ($file = readdir($handler)) { if ($file != '.' && $file != '..' && $file != "robots.txt" && $file != ".htaccess"){ $date = filemtime($directory."/".$file); $date = filectime($directory."/".$file); $file_dates[$date][] = $file; } } closedir($handler); krsort($file_dates); $last_three = array_slice($file_dates,0,$max); $i = 0; foreach($last_three as $files) { foreach($files as $file) { if ($i < $max) { print "$file \n"; $i++; } else { break 2; } } } ?> |
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 | function wait(msecs) { var start = new Date().getTime(); var cur = start while(cur - start < msecs) { cur = new Date().getTime(); } } $(document).ready(function(){ var percentage = 0; while(percentage < 100) { wait(1000); $("#quote").load("http://www.domein.nl/test.php"); percentage = document.getElementById("quote").innerHTML; $('#progressbar').progressBar(percentage); } }); </script> |
kijk misschien is dat wat... enig idee hoe?quote:Op maandag 12 oktober 2009 17:31 schreef GlowMouse het volgende:
je kunt in php al stukjes html naar de browser flushen
ga eens profilen, dit klopt niet. Connect je ergens naar de verkeerde host? Hoe meet je?quote:Op maandag 12 oktober 2009 17:46 schreef hamkaastosti het volgende:
oi,
ik ben bezig met een klein framework ding in php en zodra ik de mysqli class aanroep duurt het veel langer voordat de site op het scherm komt
zonder new mysqli()
0.0027 seconds
met mysqli()
0.5019 seconds
dat is toch een belachelijke verslechtering? Kan ik hier nog iets aan doen? Ik draai een standaard wamp server
ik connect gewoon naar localhost. M'n framework is nog niet veel meer dan een simpel MVC framepje en ik tel de totale tijd door aan het begin een microtime(TRUE); te doen en helemaal onderaan dat nog eens te doen waarbij ik het verschil aan tijd weergeef.quote:Op maandag 12 oktober 2009 20:55 schreef GlowMouse het volgende:
[..]
ga eens profilen, dit klopt niet. Connect je ergens naar de verkeerde host? Hoe meet je?
Dat is geen goede maat; executie kan pauzeren bij het tussentijds flushen naar je browser.quote:Op maandag 12 oktober 2009 21:21 schreef hamkaastosti het volgende:
[..]
ik connect gewoon naar localhost. M'n framework is nog niet veel meer dan een simpel MVC framepje en ik tel de totale tijd door aan het begin een microtime(TRUE); te doen en helemaal onderaan dat nog eens te doen waarbij ik het verschil aan tijd weergeef.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | display: block; position: fixed; top: 10px; left: 10px; height: 40px; z-index: 999; background-color: red; border:1px solid black; } #content { Position: relative; } |
Volgens mij snappen niet alle browsers precies wat de bedoeling is van position:fixed;quote:Op dinsdag 13 oktober 2009 11:18 schreef LeeHarveyOswald het volgende:
Mag ik hier ook een klein CSS vraagje stellen?![]()
Weet iemand waarom met onderstaande code, mijn <div id='top'> niet gewoon blijft zweven bovenin?
[ code verwijderd ]
mijn "top" div scrolled nu gewoon mee, en dat is niet de bedoeling
CTRL-F hielp mij niet naar dat topic, en aangezien Google de laatste weken wat moeite heeft met het tonen van de geindexeerde pagina's van fok....quote:Op dinsdag 13 oktober 2009 11:58 schreef Light het volgende:
[..]
Volgens mij snappen niet alle browsers precies wat de bedoeling is van position:fixed;
En ben ik heel flauw als ik wijs op het bestaan van [CSS] voor dummies - deel 13 ?
1 2 3 4 5 6 7 8 9 10 11 | echo '<td>' . $vak['titel'] . '</td>'; while($cijfers = mysql_fetch_array($sql)){ echo '<td><a class="fancyopen" href="cijfers.php?p=wijzigen&id='.$cijfers["id"].'&iframe">' . $cijfers["punt"] . '</a></td>'; $gem[$i] = $gem[$i] + ($cijfers["punt"] * $cijfers["weging"]); $weging[$i] = $weging[$i] + $cijfers["weging"]; $gemiddelde[$i] = $gem[$i] / $weging[$i]; } echo '<td>'.$gemiddelde[$i].'</td>'; echo '</tr>'; |
Maar het aantal td's varieert bij elke rij.quote:Op dinsdag 13 oktober 2009 16:53 schreef Light het volgende:
Zorg dat je op iedere regel evenveel <td>'s hebt.
1 |
1 2 3 4 5 6 7 8 9 | //nieuwe Post van update if(isset($_POST['nieuw']) && empty($test)) { $sql = "insert into update_scardfiles (updatenr,bestandsnaam,wijziging,date) VALUES ('','".esc($_POST['bestandsnaam'])."','".esc($_POST['wijziging'])."',now())"; mysql_query($sql); $test = 'gepost'; } ?> |
1 2 3 4 5 6 7 8 | if(isset($_POST['nieuw']) && $_SESSION['nieuw'] = 'ja') { $sql = "insert into update_scardfiles (updatenr,bestandsnaam,wijziging,date) VALUES ('','".esc($_POST['bestandsnaam'])."','".esc($_POST['wijziging'])."',now())"; mysql_query($sql); $_SESSION['nieuw'] = 'nee'; } ?> |
1 2 3 4 5 6 | if(!empty($_GET['nieuw'])) { $_SESSION['nieuw'] = 'ja'; } ?> |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |