Komt het misschien omdat $nextpic en prevpic niet eerder gedefinieerd is behalve in de conditional if-statement? (al zou php daar geloof ik geen moeite mee moeten hebben, maar anders weet ik het ook niet)
Komt het misschien omdat $nextpic en prevpic niet eerder gedefinieerd is behalve in de conditional if-statement? (al zou php daar geloof ik geen moeite mee moeten hebben, maar anders weet ik het ook niet)
PHP heeft helaas niet dat soort scope. Oftewel: de variabelen kunnen na de if/else gebruikt worden.
Ik heb wel 5 jaar geleden eens een gastenboek geklust maarja, te lang geleden.
My childhood was typical: summers in Rangoon, luge lessons. In the spring, we'd make meat helmets. When I was insolent I was placed in a burlap bag and beaten with reeds.. pretty standard, really.
Ik zit een beetje te staren naar je code maar ik kan geen syntax error ontdekken nee. :/
[add] Je kunt trouwens beter je eerste query vervangen met het volgende:
$countPics = mysql_result(q("SELECT COUNT(1) FROM `pictures`"), 0, 0);
Op die manier selecteer je alleen de relevante informatie en niet de hele tabel, scheelt in performance als je hoeveelheid images groeit.
Who's the one to blame for this strain in my vocal chords?
Who can pen a hateful threat but can't hold a sword?
It's the same who complain about the global war
But can't overthrow the local joker that they voted for
Deze post is 1 keer aangepast, waarvan de laatste aanpassing
is gedaan door Sylvannes op 14-06-2010 09:31:13.
COUNT(1) is SQL voor selecteer 1 voor elke row die je gevonden hebt (geeft je dus hetzelfde als mysql_num_rows, maar dan direct in je resultset).
, 0, 0 zijn parameters voor mysql_result die aangeven welk stukje van de resultset je wilt hebben (x, y) (dit moet je je voorstellen in tabelvorm). 0, 0 wil dus zeggen dat je de eerste kolom van de eerste row pakt.
[add] In het geval van SELECT COUNT(1) heb je dus maar 1 kolom en 1 row.
Who's the one to blame for this strain in my vocal chords?
Who can pen a hateful threat but can't hold a sword?
It's the same who complain about the global war
But can't overthrow the local joker that they voted for
My childhood was typical: summers in Rangoon, luge lessons. In the spring, we'd make meat helmets. When I was insolent I was placed in a burlap bag and beaten with reeds.. pretty standard, really.
Deze post is 1 keer aangepast, waarvan de laatste aanpassing
is gedaan door Ron op 23-06-2010 23:53:12.
Het ergste/vetste/beniknognietoveruit is dat het nog prima leesbaar is ook.
My childhood was typical: summers in Rangoon, luge lessons. In the spring, we'd make meat helmets. When I was insolent I was placed in a burlap bag and beaten with reeds.. pretty standard, really.
Ik had last van een nogal nare bug, waar ik uiteindelijk ongeveer 2 hele dagen () voor nodig had om op te lossen.
Het vervelende was dat het alleen gebeurde als de code buiten de debugger of buiten visual studio werd gedraaid, of, kwam ik later achter, als je binnen visual studio met _NO_DEBUG_HEAP draait. Buiten VS draaien en dan attachen met een debugger, of "just in time" debugging leverde ook geen consiste foutmeldingen/crash locaties op, dus dan kom je al snel tot de conclusie dat het om een heap corruption gaat. Dan kan je code overal crashen, behalve waar de corruptie ontstaat. ;p
Uiteindelijk heb ik met Application Verifier en WinDbg gevonden waar het fout ging, maar daar was verder compleet niets vreemds aan te zien. Het was een regel waar een functie uit een API een array pointer nam en die met data vulde, maar die array was groot genoeg en las ook niet perongeluk te veel waarden uit. Het was nog eens precies dezelfde regel code als die ik in de vorige versie gebruikte en daar werkte het gewoon naar behoren.
Blijkt uiteindelijk dat de implementatie van de functie in die API veranderd was en het nu (integenstelling tot wat de header file nog steeds beweerde) geen float * bla maar float bla moest zijn en dat de functie daardoor de pointer overschreef en niet de inhoud.
En nu wil ik graag mijn 2 dagen terug.
My childhood was typical: summers in Rangoon, luge lessons. In the spring, we'd make meat helmets. When I was insolent I was placed in a burlap bag and beaten with reeds.. pretty standard, really.
Altijd beter dan er nooit achter komen, ik heb op het werk nog een probleem waar ik al weken aan vergooid heb aan totale uren en die me al maanden plaagt.
Who's the one to blame for this strain in my vocal chords?
Who can pen a hateful threat but can't hold a sword?
It's the same who complain about the global war
But can't overthrow the local joker that they voted for
Ja het is uiteraard wel beter, maar toch zo frustrerend. Als het weken zou duren zou er bij mij iets (en daarmee bedoel ik niet mezelf) het raam uit vliegen, gok ik zo...
Aan de andere kant, ik vond de real-time prestaties een beetje tegenvallen, maar die lopen nu weer als een speer!
[add]
Laatste paar dagen had ik een nogal vervelende die helaas schijnbaar aan Windows ligt, heb ik daar zolang besteed. =_=
Aan de andere kant heb ik net wel zeer aparte cast weten te produceren..
(sockaddr *)(&(*itr))
waarbij itr een std::vector<sockaddr_in>::iterator is.
Spoiler!Spoiler: Het enige dat het doet is een pointer van een iterator maken (&*) en die naar een andere class casten. Maar toch verbaasde het me dat het werkte.
My childhood was typical: summers in Rangoon, luge lessons. In the spring, we'd make meat helmets. When I was insolent I was placed in a burlap bag and beaten with reeds.. pretty standard, really.
Deze post is 1 keer aangepast, waarvan de laatste aanpassing
is gedaan door Ron op 08-09-2010 23:32:09.
Spoiler!Spoiler: Het enige dat het doet is een pointer van een iterator maken (&*) en die naar een andere class casten. Maar toch verbaasde het me dat het werkte.
(sockaddr *)(&(*itr)) is toch hetzelfde als (sockaddr *)itr ? (Wat ineens heel logisch zou zijn)
Spoiler!Spoiler: Het enige dat het doet is een pointer van een iterator maken (&amp;*) en die naar een andere class casten. Maar toch verbaasde het me dat het werkte.
(sockaddr *)(&(*itr)) is toch hetzelfde als (sockaddr *)itr ? (Wat ineens heel logisch zou zijn)
Niet helemaal dus. Een vector iterator is wel een reference naar een class, maar niet een pure pointer.
Dus itr != &(*itr)
[add] Het belangrijkste verschil is eigenlijk dat een pointer altijd puur naar een stukje geheugen wijst en als je 'em dus 1 verhoogt hij altijd naar het volgende stukje geheugen wijst.
Als je een iterator verhoogt verwijst 'ie naar het volgende object in de container onafhankelijk van waar in het geheugen die zich bevindt.
My childhood was typical: summers in Rangoon, luge lessons. In the spring, we'd make meat helmets. When I was insolent I was placed in a burlap bag and beaten with reeds.. pretty standard, really.
Deze post is 1 keer aangepast, waarvan de laatste aanpassing
is gedaan door Ron op 09-09-2010 01:18:45.
Goed, welke operator in C++ is nou niet tenminste 5 keer overloaded.
Een pointer is ook maar de meest primitieve vorm van een reference.
[add]
Ik ben net begonnen met het tekenen op het scherm met openGL, en het stomme is dat windows gewoon alle libraries e.d. standaard al heeft, maar VC++ ze schijnbaar niet automatisch kan vinden ofzo. Dus ik helemaal moeilijk doen om te zoeken wat ik allemaal moet installeren, blijkt dat ik alleen "opengl32.lib" bij de additional dependencies hoef te zetten.
[add2]
Pffft ik had ergens...
buf.pf = new float(bufSize);
ipv
buf.pf = new float[bufSize];
Het bleef ook echt wekenlang goed werken tot ik in die module een nieuwe CDialog op de heap aanmaakte.
My childhood was typical: summers in Rangoon, luge lessons. In the spring, we'd make meat helmets. When I was insolent I was placed in a burlap bag and beaten with reeds.. pretty standard, really.
Deze post is 2 keer aangepast, waarvan de laatste aanpassing
is gedaan door Ron op 19-10-2010 18:59:12.