Pagina 1. 0.01quote:Op donderdag 15 januari 2009 17:37 schreef GlowMouse het volgende:
Dat heb je wanneer je LIMIT gebruikt.
Mag ik weten hoe snel de query is op pagina 1, en op pagina 10?
Mooi lineairquote:Op donderdag 15 januari 2009 23:33 schreef Chandler het volgende:
[..]
Pagina 1. 0.01
Pagina 10 0.09
Pagina 20 0.13
Pagina 50 0.3
Pagina 69 0.44
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 | $nr = 1; while($row = mysql_fetch_array($result)) { if (in_array($row['user'],$flow)) { $team = "Flow"; } else { $team = "Allstars"; } echo "<tr>"; echo "<td>"; echo $nr; echo "</td>"; echo "<td>"; echo $row['user']; echo "</td>"; echo "<td>"; echo $team; echo "</td>"; echo "<td>"; $points = $row['points']; $points2 = log($row['games'] + 1 ) * ($row['wins'] / $row['games']); $points = $points + $points2; $points = round($points, 2); echo $points; echo "</td>"; |
1 2 3 4 5 6 7 8 9 10 11 12 13 | { $user = $row['user']; $points = $row['points']; $points2 = log($row['games'] + 1 ) * ($row['wins'] / $row['games']); $points = $points + $points2; mysql_query("UPDATE ur_pstats SET points2 = '$points' WHERE user = '$user"); } |
Goed, maar hoe kan ik dit versnellen cq optimaliseren? D:quote:Op donderdag 15 januari 2009 23:42 schreef GlowMouse het volgende:
[..]
Mooi lineairNadeel van LIMIT, hij kan nooit weten wat er op de 59ste pagina komt zonder eerst de eerste 58 op te halen.
Vantevoren een tabel vullen met een extra veld waarin je aangeeft op welke plek welke foto komt. Op dat veld kun je indexeren en in je query kun je dan WHERE ipv LIMIT gebruiken.quote:Op vrijdag 16 januari 2009 08:48 schreef Chandler het volgende:
[..]
Goed, maar hoe kan ik dit versnellen cq optimaliseren? D:
1 2 3 4 5 6 7 8 | <strong class="TitleOff"> <a href="[b]url_die_ik_zoek[/b]">[b]Titel die ik zoek[/b]</a> </strong> <strong class="datetime"> <span style="font-size:10px;">Aired</span> <span style="font-size:10px;">[b]Datum die ik zoek[/b]</span> </strong>[b]Omschrijving die ik zoek[/b]</p> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | @$dom->loadHTML($result); $xpath = new DOMXPath($dom); // -- Alle links $hrefs = $xpath->evaluate("/html/body//ol//li//a"); // -- Links doorlopen for ($i = 0; $i < $hrefs->length; $i++) { $href = $hrefs->item($i); $url = $href->getAttribute('href'); echo $url."<br />"; } |
Zo moeilijk is Xpath niet hoor ;)quote:Op vrijdag 16 januari 2009 15:25 schreef Roy_T het volgende:
Je zou eerst alle <p>'s met class "info" kunnen zoeken, en vervolgens daar doorheen loopen en binnen iedere gevonden <p> zoeken op link (href en titel), de tweede <span>, etc.
1 2 3 4 | foreach($nodes as $node) { $a = $node->getAttribute('href'); } |
Alleen werkt dit natuurlijk niet, omdat een <p> geen href attribuut heeftquote:Op zaterdag 17 januari 2009 03:04 schreef Gloeidoos het volgende:
[..]
Zo moeilijk is Xpath niet hoor
[ code verwijderd ]
Hiermee kan je wel vooruit denk ik.
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 | if (isset($_GET['activate'])) { $activate = (int) $_GET['activate']; } else { $activate = 0; } if (isset($_GET['code'])) { $code = $_GET['code']; } else { $code = 0; } if ( ($activate > 0) && (strlen($code) == 32)) { include('include/inc_connect.php'); $query = "UPDATE users SET active_code = NULL WHERE user_nr = '".$active."' AND active_code = '".$code."' LIMIT 1 ;"; $result = mysql_query($query) or die(mysql_error()); if (mysql_affected_rows() == 1) { echo "<b class=\"title\">Geactiveerd</b>"; echo "<p>Je account is nu actief, je kan nu inloggen.</p>"; } else { echo "<b class=\"title\">Activeren niet succesvol</b>"; echo "<p>Je account kon niet geactiveerd worden. Kijk of de link klopt of neem contact op met onze <a href=\"mailto:xxxxxxxx\">Administrator</a></p>"; mysql_close(); } } else { echo "<b class=\"title\">Activatie link klopt niet!</b>"; echo "<p>Probeer opnieuw</p>"; } ?> |
Hehe het was al laat.quote:Op zaterdag 17 januari 2009 08:57 schreef Roy_T het volgende:
[..]
Alleen werkt dit natuurlijk niet, omdat een <p> geen href attribuut heeft
Wat heb je gedaan om te debuggen? Toen je om te debuggen "$query = "UPDATE users SET active_code = NULL WHERE user_nr = '".$active."' AND active_code = '".$code."' LIMIT 1 ;";" eens gewoon echode, wat kreeg te toen te zien?quote:Op zaterdag 17 januari 2009 12:24 schreef mrpaplu het volgende:
hey mensen, ik ben bezig met een pagina om je account te activeren. als je bent geregistreerd krijg je een mail met een link. (dat is nu nog gewoon op de site). De link ziet er uit als activate.php?activate=$activate&code=$code. Hier is $active het user_nr en $code de code die in de kolom active_code in de database is gezet. Alles werkt leuk en aardig, maar volgens mij doet hij het niet door de sql query. Hij veranderd namelijk ook niks in de database, maar hij komt wel door de check of $active > 0 en strlen($code) ==32. Iemand enig idee wat ik fout doe?
[ code verwijderd ]
Handig activeringssysteem. Code "'='' or ''='" (aanvullen met spaties tot 32 tekens) is altijd goedquote:Op zaterdag 17 januari 2009 12:24 schreef mrpaplu het volgende:
hey mensen, ik ben bezig met een pagina om je account te activeren. als je bent geregistreerd krijg je een mail met een link. (dat is nu nog gewoon op de site). De link ziet er uit als activate.php?activate=$activate&code=$code. Hier is $active het user_nr en $code de code die in de kolom active_code in de database is gezet. Alles werkt leuk en aardig, maar volgens mij doet hij het niet door de sql query. Hij veranderd namelijk ook niks in de database, maar hij komt wel door de check of $active > 0 en strlen($code) ==32. Iemand enig idee wat ik fout doe?
[ code verwijderd ]
<?php echo '<?php echo \'hoi!\'; ?>'; ?>quote:Op zondag 18 januari 2009 15:45 schreef cablegunmaster het volgende:
moet alleen nog weten hoe ik de php kan laten weergeven voor documenten , in html![]()
that allquote:Op zondag 18 januari 2009 16:03 schreef GlowMouse het volgende:
[..]
<?php echo '<?php echo \'hoi!\'; ?>'; ?>
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |