Door WesleyJ: Na globaal te googlen ben ik tot de voorzichtige conclusie gekomen dat het om clipboard hijacking gaat.
Clipboard hijacking heeft niets met cookies of PHP-broncode te maken.
Ik heb een stukje php code gecopypaste van een website genaamd w3schools. Dit is een bekende code repository.
W3Schools is een educatieve website. Een code repository is een plek waar software en ook de historie van software wordt opgeslagen, de opslag van een versiebeheersysteem dus. Dat zijn twee volkomen verschillende dingen.
De setcookie() phpcode getest. Dit werkte. Ik heb het in een functie gezet. Ik zag prachtig aangemaakte cookies in de browser.
Dat betekent dat het kopiëren en plakken van de code is gelukt, en niet is vervangen door iets anders (wat bij clipboard hijacking het geval zou zijn). Aangezien broncode tekst is kan je het voor je neus zien staan en zelf zien dat het goed is overgekomen.
Daarna dit een bestaand functie doc gezet tussen de andere eigen gemaakte php functies en de functie zelf op de juiste plek gezet.
Hier raak ik los omdat ik geen idee heb wat je bedoelt met "dit een bestaand functie doc gezet". Bedoel je met doc documentatie? Bedoel je er een broncodebestand mee? Had je het woordje "in" niet ergens in die zin moeten opnemen?
Hoe dan ook, als je
zelf een functiedefinitie voor setcookie() hebt toegevoegd dan zou het zomaar kunnen dat de ingebouwde setcookie() van PHP daarmee niet meer wordt aangeroepen en dan is het logisch dat die zijn werk ook niet meer doet. Is dat misschien je probleem? Haal die eigen definitie dan eens weg en roep setcookie() aan zonder hem zelf te definiëren.
De eerste twee zinnen die ik citeerde suggereerden al dat je (nog) niet veel begrijpt van waar je mee bezig bent. Als mijn interpretatie van wat er mogelijk bij je mis is gegaan klopt dan bevestigt die het beeld. Dat is geen kritiek, iedereen die met programmeren begint begint met heel veel vragen en heel weinig inzicht.
Ik kan wel wat kritiek uiten op hoe je ermee omgaat. Iets werkt niet en je snapt (nog) niet waarom niet. Prima, als je gaat programmeren is het ongeveer je dagelijkse werk om in die toestand te verkeren. Maar dat los je niet op door meteen naar allerlei wilde externe oorzaken voor je probleem te grijpen (zoals clipboard jacking), dat los je op door je af te vragen wat je
zelf verkeerd doet en
zelf niet overziet en je daar heel nauwgezet en volhardend doorheen te worstelen. Je moet statement voor statement begrijpen wat er eigenlijk gebeurt als dat statement wordt uitgevoerd. Als je dat niet doet dan blijf je doelloos rondzwemmen in de materie zonder iets te leren. En je hebt overduidelijk nog een hoop te leren.
Ik krijg de indruk dat je nog niet goed begrijpt wat in een programmeertaal een functie doet en hoe er zowel ingebouwde als zelf toegevoegde functies bestaan en hoe je daarmee omgaat. Ik ga hier geen programmeercursus geven, maar besef dat je de fundamenten nog niet onder de knie hebt en aan het basisbegrip van concepten moet werken. Je hebt geen begrip nodig op het niveau van "als ik dit fragmentje tekst plak dan wordt er magischerwijze dat en dat gedaan", je hebt begrip nodig op een niveau dat je van elk detail van dat fragmentje tekst snapt wat er gebeurt en waarom het er
precies staat zoals het er staat. En als je dat in je hebt zal je op termijn merken dat je geen fragmentjes code meer plakt maar zelf kan bedenken wat je op moet schrijven. Succes.