Zu 100% verhindern ist sowas afaik nicht, allerdings kann man es den Usern erschweren.
Methode 1: Referrer prüfen
Könnte halt auch User "aussperren", deren Browser den Referrer nicht immer übermittelt aus Datenschutz/Privatsphäre Gründen, aber das ist den meisten Webbis ja auch vollkommen egalPHP-Code:
if(strpos($_SERVER["HTTP_REFERER"], 'example.com')===false){
die('Direktaufruf nicht gestattet, Referrerübermittlung vorausgesetzt');
}
Methode 2: Statt Link mit GET Parametern, "Button"/Formular mit POST Werten
Methode 3: Link mit Javascript-Funktion realisieren
Methode 4: ständig variierenden zusätzlichen GET Parameter anhängen, der in der Kontoübersicht geprüft wird.
uvm. am besten eine Kombination aus allem, tatsächlich ist der Referrer Schutz die absolut schwächste Methode, besonders da fast jeder schon Ref-Control etc im Browser hat, um bei jedem Seitenaufruf den "gewünschten" Wert zusenden....
Wen willst du denn davon abhalten und warum? Dann kann man evtl. konkrete Argumente zum Pro/Contra der einzelnen Methoden geben.