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:foto 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:foto 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:foto Op woensdag 7 oktober 2009 20:47 schreef GlowMouse het volgende:
[..]
gebruik GREATEST(0, aantal-2)
1 |
Tnx, ik dacht dat het via een de hoofdclass overgenomen zou worden (denk net andersom blijkbaar).quote:foto 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:foto 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/>"; } ?> |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |
Dat begrijpen we, maar is wel erg jammer. Je kunt FOK! namelijk wel gratis LEZEN, maar we kunnen FOK! niet gratis MAKEN. De inkomsten van de advertenties zorgen ervoor dat we de kosten van de site kunnen dragen zodat je ook morgen FOK! nog kunt bezoeken.
Zou je willen overwegen om voor FOK! een uitzondering te maken in je adblocker (of andere middelen die onze ads blokkeren)? Je krijgt deze melding dan nooit meer te zien.
Ja, ik wil fok.nl whitelisten, laat me zien hoe
Ik neem liever een premium account zodat ik geen advertenties hoef te zien (je moet eerst inloggen)
Ja, breng me naar de shop