Probeer het nu nog eens met IEquote:Op maandag 27 juni 2005 23:18 schreef ikke_ook het volgende:
hmm, in IE is eigenlijk alleen met de muis bewegen over het menu traag..de rest is daar een stuk beter. Scrollen in t gastenboek is ook nog een beetje kut trouwens.
Dat zou door de opacity kunnen komen, dat is natuurlijk redelijk zware CSS voor oudere PC'squote:Op maandag 27 juni 2005 23:26 schreef ikke_ook het volgende:
[..]
Dan zit je goed hier
@Swets
Het probleem is dat in FF de muisbewegingen in het gastenboek gedeelte erg veel processor kosten, eromheen gaat goed(afgezien van t menu)
In IE gaan die muisbewegingen wel goed, maar is t menu ook nog klote, maar dat wist je al
kijk op www.php.net naar de functies 'file', 'file_get_contents' en 'explode'.quote:Op maandag 27 juni 2005 23:22 schreef the_jasper het volgende:
k thanx
ben een beetje een newby dus ik moet een duwtje in de goede richting hebben
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | if (get_magic_quotes_gpc()) { function stripslashes_deep($value) { $value = is_array($value) ? array_map('stripslashes_deep', $value) : stripslashes($value); return $value; } $_POST = array_map('stripslashes_deep', $_POST); $_GET = array_map('stripslashes_deep', $_GET); $_COOKIE = array_map('stripslashes_deep', $_COOKIE); } |
Helemaal zelfquote:Op dinsdag 28 juni 2005 00:44 schreef JeRa het volgende:
@wonderer
En die streaming chat, heb je die zelf gemaakt of is het een bestaand pakket? In het laatste geval kun je namelijk veel beter geholpen worden door de auteur van het pakket, en zo niet zul je toch echt wat code moeten delen voordat wij kunnen zien wat er aan de hand is
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 | function stream($kamer,$user) { ob_implicit_flush(); $kam=$kamer; $kamer="chat_kamer_".$kamer; $result=runquery("SELECT * FROM $kamer ORDER BY ID DESC LIMIT 0,1"); $row=mysql_fetch_array($result); $last_ID=$row[ID]; $res=runquery("SELECT * FROM chat_times WHERE chatroom='$kamer' AND username='$user'"); $ro=mysql_fetch_array($res); $their_time=$ro[said_time]; $now=time(); $diff=$now-$their_time; $iotime=600; #idle out time while($diff < $iotime && !connection_aborted()){ $result=runquery("SELECT * FROM $kamer ORDER BY ID DESC LIMIT 0,1"); $row=mysql_fetch_array($result); $new_ID=$row[ID]; while($new_ID>$last_ID){ $i=$last_ID+1; $result2=runquery("SELECT * FROM $kamer WHERE ID='$i'"); $row2=mysql_fetch_array($result2); $sentence=parse_sentence($row2[sentence],$row2[systemmess]); $sentence=replace_smilies($user, $sentence); $result3=runquery("SELECT * FROM leden WHERE username='$row2[username]'"); $row3=mysql_fetch_array($result3); $ch_i=check_ignores($user,$row2[username],$sentence); if($ch_i!=1){ $line.=lineformat($row2[ID], $row[datum], $row3[access_level], $row2[chatname], $row2[kleur], $sentence, $row2[adminmess], $row2[username]); } print ($line); $line=""; $last_ID++; } if($diff%25<=1){ $idleline='<!---->'; print ($idleline); } sleep(1); $rest=runquery("SELECT * FROM chat_times WHERE chatroom='$kamer' AND username='$user'"); $ro=mysql_fetch_array($rest); $their_time=$ro[said_time]; $now=time(); $diff=$now-$their_time; } $line='<b style="color:#ffffff">Je hebt te lang niets gezegd. Klik <a href="display.php?kamer='.$kam.'">HIER</a> om de kamer te herladen</b><script>scroll();</script>'; print ($line); } |
1 2 3 4 5 6 7 8 9 10 11 12 13 | SELECT F_IPBan.IP as ipban_ip, F_IPBan.Actions as ipban_actions, (F_IPBan.Expiration,'') as ipban_expiration_date, F_IPBan.Expiration as ipban_expiration_timestamp FROM F_IPBan WHERE !Deleted AND ( '192.168.1.13' LIKE F_IPBan.IP ) AND ( !F_IPBan.Expiration OR F_IPBan.Expiration > 1119987568 ) |
1 2 3 4 5 6 | IP varchar(25) AdminID int(11) Deleted char(1) Date int(10) unsigned Expiration int(10) Actions text |
quote:Op dinsdag 28 juni 2005 23:16 schreef mschol het volgende:
even een algemene mededeling:
het zou fijn zijn als de php scripts tussen de [php] tags worden geplaatst..
einde mededeling..
1 2 3 4 5 | if ($lang='php' and !preg_match('#[<>&]#', $code)) { echo "["."php]$code[/php"."]"; } else { echo "["."code]$code[/code"."]"; } |
die php tags verneuken de boel toch wel vaak. neem bijvoorbeeld het volgende php stukje:quote:Op dinsdag 28 juni 2005 23:16 schreef mschol het volgende:
even een algemene mededeling:
het zou fijn zijn als de php scripts tussen de php tags worden geplaatst..
einde mededeling..
1 2 3 4 5 6 | <? echo "<p>'bla'</p>\n"; $blop = new iets; $blop->do_iets(); echo $blop->results(); ?> |
Idd, die php tags zijn nog steeds kut... ik snap ook niet waarom ze nieuwe knopjes hebben gemaakt in het reageervenster terwijl die tags nog steeds niet goed werken...quote:Op woensdag 29 juni 2005 00:47 schreef DionysuZ het volgende:
[..]
die php tags verneuken de boel toch wel vaak. neem bijvoorbeeld het volgende php stukje:
[ code verwijderd ]
wordt:
[ code verwijderd ]
Als iemand een session id steelt en die persoon er een beetje verstand van heeft is ie dus wel mooi ingelogd, wat waarschijnlijk niet echt wenselijk is.quote:Op donderdag 30 juni 2005 15:57 schreef DionysuZ het volgende:
mooiheb nl. nieuw inlogscript geschreven voor n site die ik heb gemaakt
Dan moet die persoon wel hetzelfde IP adres (ip controle) hebben en het session id binnen een uur weer gebruiken want de sessie is max. een uur beschikbaar.quote:Op donderdag 30 juni 2005 16:02 schreef JeRa het volgende:
[..]
Als iemand een session id steelt en die persoon er een beetje verstand van heeft is ie dus wel mooi ingelogd, wat waarschijnlijk niet echt wenselijk is.
Ik heb eenzelfde inlogscript (denk ik), maar ik heb de inlog nog gekoppeld aan het IP. Dus tenzij de SESSID jatter OOK hetzelfde IP nummer heeft, kan ie niet inloggen als iemand anders. op http://www.yapf.net staan goeie tips voor een inlogsysteem met sess_id'squote:Op donderdag 30 juni 2005 15:57 schreef DionysuZ het volgende:
mooiheb nl. nieuw inlogscript geschreven voor n site die ik heb gemaakt
Geef je mensen de keuze om een IP-check te laten doen? Er bestaan namelijk nog steeds mensen met een dynamisch IP-adres, of mensen die via een proxy surfen (en sommige proxy's maken gebruik van meerdere IP-adressen en geven niet altijd het oorspronkelijke IP-adres door (dit mogen ze zelf beslissen namelijk)).quote:Op donderdag 30 juni 2005 16:06 schreef DionysuZ het volgende:
[..]
Dan moet die persoon wel hetzelfde IP adres (ip controle) hebben en het session id binnen een uur weer gebruiken want de sessie is max. een uur beschikbaar.
Die laatste checks, die doe je hopelijk in één query?quote:Op donderdag 30 juni 2005 16:16 schreef DionysuZ het volgende:
(verhaal)
en uiteraard zit er ook een uitlog mogelijkheid op, die de sessie killt. De users worden aangeraden deze te gebruiken
De login is ook maar voor 1 sessie geldig. Als je een ander ip adres neemt zul je weer opnieuw in moeten loggen. Het betreft hier een administratiegedeelte, voor een minimum aan personen. Het is dus geen forum o.i.d. waar je users ook de mogelijkheid zou kunnen geven om ingelogd te blijvenquote:Op donderdag 30 juni 2005 16:18 schreef JeRa het volgende:
[..]
Geef je mensen de keuze om een IP-check te laten doen? Er bestaan namelijk nog steeds mensen met een dynamisch IP-adres, of mensen die via een proxy surfen (en sommige proxy's maken gebruik van meerdere IP-adressen en geven niet altijd het oorspronkelijke IP-adres door (dit mogen ze zelf beslissen namelijk)).
Er wordt slechts 1 query gebruikt uiteraard.quote:Op donderdag 30 juni 2005 16:20 schreef JeRa het volgende:
[..]
Die laatste checks, die doe je hopelijk in één query?
En je maakt gebruik van challenge-response, maar je salt is te voorspellen (= tijd namelijk). Beter neem je een salt die echt random is.
Mensen met een proxy veranderen soms van IP-adres binnen één sessie, dat was waar ik op doelde.quote:Op donderdag 30 juni 2005 16:20 schreef DionysuZ het volgende:
[..]
De login is ook maar voor 1 sessie geldig. Als je een ander ip adres neemt zul je weer opnieuw in moeten loggen. Het betreft hier een administratiegedeelte, voor een minimum aan personen. Het is dus geen forum o.i.d. waar je users ook de mogelijkheid zou kunnen geven om ingelogd te blijven
ah zo, dat is niet van toepassing hier. Degenen die gebruik hiervan maken maken gewoon gebruik van een vaste verbinding zonder proxy ergens ertussen.quote:Op donderdag 30 juni 2005 16:21 schreef JeRa het volgende:
[..]
Mensen met een proxy veranderen soms van IP-adres binnen één sessie, dat was waar ik op doelde.
Het valt allemaal te sniffen, maar als ze de salt moeten gokken dan is dat een stuk makkelijker als je de tijd als salt neemt dan als je een pure random waarde neemt.quote:Op donderdag 30 juni 2005 16:20 schreef DionysuZ het volgende:
Waarom is een random salt beter? Die valt toch ook te sniffen?
Ok, dan maakt het niet uit iddquote:Op donderdag 30 juni 2005 16:25 schreef DionysuZ het volgende:
[..]
ah zo, dat is niet van toepassing hier. Degenen die gebruik hiervan maken maken gewoon gebruik van een vaste verbinding zonder proxy ergens ertussen.
ja, maar ik heb tijd genomen om het risico van sniffen te verkleinen zeg maar. Er zit een tijd-check op, als de meegestuurde tijd ouder dan een minuut is zal er niet ingelogd worden.quote:Op donderdag 30 juni 2005 16:25 schreef JeRa het volgende:
[..]
Het valt allemaal te sniffen, maar als ze de salt moeten gokken dan is dat een stuk makkelijker als je de tijd als salt neemt dan als je een pure random waarde neemt.
Trouwens, als ze de verbinding al kunnen sniffen is er ook een kans dat ze 't ook spoofen en dan heeft IP-check bar weinig zinquote:Op donderdag 30 juni 2005 16:25 schreef JeRa het volgende:
[..]
Het valt allemaal te sniffen, maar als ze de salt moeten gokken dan is dat een stuk makkelijker als je de tijd als salt neemt dan als je een pure random waarde neemt.
Ah ok, dat zou ik eerder serverside oplossen want de client kan natuurlijk gegevens vervalsen. Als het al serverside gebeurt is het niet aan de clientside nodig natuurlijkquote:Op donderdag 30 juni 2005 16:27 schreef DionysuZ het volgende:
[..]
ja, maar ik heb tijd genomen om het risico van sniffen te verkleinen zeg maar. Er zit een tijd-check op, als de meegestuurde tijd ouder dan een minuut is zal er niet ingelogd worden.
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 | <?php $n = ceil($aantal / $offset); // het aantal pagina's $p = $_GET['show']+1; // de te tonen pagina if ($p != 1) { echo " [ <a href=\"?show=1\" title=\"eerste pagina\"><<</a> ] [ <a href=\"?show=" . ($p - 1) . "\" title=\"vorige pagina\"><</a> ] "; } if ($p <= 5) { for ($i=1; $i<=11; $i++) { if ($i == $p) {echo " <b>$i</b> ";} else {echo " <a href=\"?show=$i\">$i</a> ";} } } elseif ($p >= ($n - 5)) { $m = $n - 10; // het eerste getal vanaf waar het einde te zien is for ($i=$m; $i<=$n; $i++) { if ($i == $p) {echo " <b>$i</b> ";} else {echo " <a href=\"?show=$i\">$i</a> ";} } } else { $pmax = $p + 5; // de maximale pagina-waarde die getoond mag worden $pmin = $p - 5; // de minimale pagina-waarde die getoond mag worden for ($i=$pmin; $i<=$pmax; $i++) { if ($i == $p) {echo " <b>$i</b> ";} else {echo " <a href=\"?show=$i\">$i</a> ";} } } if ($p != $n) { echo " [ <a href=\"?show=" . ($p + 1) . "\" title=\"volgende pagina\">></a></a> ] [ <a href=\"?show=$n\" title=\"laatste pagina\">>></a></a> ] "; } ?> |
Mijn zelf verzonnen offset oplossingquote:Op donderdag 30 juni 2005 17:11 schreef keeper het volgende:
Iemand die daar een helder idee over heeft?
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 | <?php //Aantal reacties $result=mysql_query('SELECT COUNT(id) AS aantal FROM table'); $row = mysql_fetch_assoc($result); $total_reactions=$row['aantal']; $total_pages=ceil("$total_reactions"/10); // 10 is het aantal reactie's per pagina, aanpassen naar wens // Eerste maal pagina laden offset bepalen if(!empty($_GET['page_offset'])){ $offset=($_GET['page_offset']); }else{ $offset=0; } $query='SELECT * FROM table ORDER BY id DESC LIMIT '.$offset.',10';// 10 is het aantal reactie's per pagina, aanpassen naar wens //Data uit de database halen en parsen // Offset links if($total_pages>1){ $page_number=0; print('<div class="normal" style="text-align:center;">'); if(!empty($_GET['currentpage'])){ $current_page=($_GET['currentpage']); }else{ $current_page=1; } while($total_pages){ $total_pages--; $page_number++; $page_offset=($page_number*10)-10; // 10 is het aantal reactie's per pagina, aanpassen naar wens If($current_page==$page_number) { print('<span class="highlight2">'.$page_number.' </span>'); }else{ print('<a href="response.php?page_offset='.$page_offset.'¤tpage='.$page_number.'">'.$page_number.'</a> '); } } print('</div><br/>'); } ?> |
Werkt prima. En ik kan me NIET voorstellen dat ik dat zonder reden hebt gedaanquote:Op donderdag 30 juni 2005 23:11 schreef ikke_ook het volgende:
Die quotes eromheen?
Dan staat je error_reporting te laag.quote:-edit volgens mij snaptie ceil($total_reactions/10); zonder quotes derhalve niet trouwens
1 2 3 4 | $x = 0/10; $x = null/10; $x = ''/10; $x = 'foo'/10; |
quote:Op donderdag 30 juni 2005 23:20 schreef Roönaän het volgende:
een variabele (zeker een integer!) tussen quotes is gewoon niet netjes.
Thx. Dat is deels wat ik bedoel, want als ik het goed zie, loopt je tellertje oneindig door. Dus als je 24 pagina's hebt, staat daar onderaan je pagina 1 2 3 4 enz t/m 24. Dat had ik eerst ook.quote:Op donderdag 30 juni 2005 19:13 schreef Swetsenegger het volgende:
Mijn zelf verzonnen offset oplossing
[ code verwijderd ]
www.123swets.com/response.php
1 | 1 2 3 4 5 |
1 | 1 2 3 4 5 6 7 8 9 > >> |
1 | << < 5 6 7 8 9 10 11 12 13 > >> |
Ow op die manierquote:Op donderdag 30 juni 2005 23:40 schreef keeper het volgende:
[..]
Thx. Dat is deels wat ik bedoel, want als ik het goed zie, loopt je tellertje oneindig door. Dus als je 24 pagina's hebt, staat daar onderaan je pagina 1 2 3 4 enz t/m 24. Dat had ik eerst ook.
Maar ik wil juist dat als het aantal pagina's meer is dan n, dat hij maar een beperkt (bijv. n-1) aantal pagina's laat zien, en daarnaast dan een >-teken om verder te bladeren.
Dat laatste heb ik nu ook, maar ik krijg het niet voor mekaar om als het aantal pagina's kleiner is dan n, alleen dat aantal te tonen.
Dus bij 5 pagina's:
[ code verwijderd ]
Maar bij 25 pagina's:
[ code verwijderd ]
En bij 25 pagina's, waarbij je je op een pagina ergens middenin bevindt:
[ code verwijderd ]
Waarbij '>' en '<' staan voor resp. een pagina vooruit en een pagina achteruit en '>>' en '<<' staan voor resp. gaan naar de laatste en gaan naar de eerste pagina.
een variabele in quotes wordt geinterpreteerd, en vervolgens bij berekeningen naar een integer gecast.quote:Op donderdag 30 juni 2005 23:32 schreef Swetsenegger het volgende:
[..]
Een variabele tussen quotes geeft gewoon de letterlijke inhoud van de variabele waar je vervolgens een bewerking op toepast.
Mjah ik WEET dat het een integer isquote:Op vrijdag 1 juli 2005 09:05 schreef Roönaän het volgende:
[..]
een variabele in quotes wordt geinterpreteerd, en vervolgens bij berekeningen naar een integer gecast.
het is een simpele manier inderdaad om niet te hoeven testen of je variabele wel of niet een getal is.
dan zet je de tijd dat het cookie verloopt toch op 30 jaarquote:Op vrijdag 1 juli 2005 10:07 schreef mschol het volgende:
ik heb een klein vraagje:
ik heb een klein login systeempje met sessies...
hoe kan ik ervoor zorgen dan je altijd blijft ingelogd???
zoals op fok...
als ik namelijk een cookie met daarin wat gegevens zet dan raak ik em kwijt nadat de browser sluit of wanneer de tijd die ik ingesteld heb verloopt..
iemand??
Twee frames tegelijk refreshen is lastig, en kan alleen met Javascript.quote:Op vrijdag 1 juli 2005 10:42 schreef _Kwekkertje_ het volgende:
Ik kom er niet uit...
Ik ben bezig met een site waar ik probeer om in 1 frame keuzes te hebben die meteen in het andere scherm te zien zijn...De eerste optie bijvoorbeeld is een keuze te maken uit een product, waarna aan de hand van die keuze een lap tekst te zien zal zijn in het 2e frame (mag ook een pop-up worden).
Aan de hand van de eerste keuze moet ook het 1e frame vervangen worden (refresh ofzo?) met andere keuzes...
* _Kwekkertje_ is php noob, maar vind het wel steeds leuker worden
Ok dank je...maar hoe? Zodra ik een begin heb gemaakt, kom ik er voor de rest ook wel uit...maar ik heb geen idee waar ik moet beginnenquote:Op vrijdag 1 juli 2005 10:46 schreef MouseInteractive het volgende:
[..]
Twee frames tegelijk refreshen is lastig, en kan alleen met Javascript.
Misschien is het handiger om gebruik te maken van selectboxen, die, zodra iemand zijn keuze gemaakt direct de pagina doen refreshen, net als de forumselectbox onderaan deze pagina. Afhankelijk van de gekozen optie, kun je dan een tekst naar keuze tonen.
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |