Ich habe für meine Seite eine Formular erstellt indem andere ihre Homepage eintragen können, und die dann in einer Linkliste erscheint. Dabei habe ich es mir aber sehr einfach geamcht, ohne MySQL denn die Daten werden in einer .dat Datei gespeichert. Bitte keinen dummen Kommentare, bin noch anfänger
Es gibt nur ein Problem, denn viele finden es lustig ihren Link gleich hunderte mal zu posten. Das möchte ich natürlich nicht, deshalb wäre es schön, wenn mir einer eventuell erklären könnte (oder google besser nutzen kann als ich, weil ich fand nix) wie ich es mache, das doppelte Einträge nicht möglich sind.
Die einfachste, und im Hinblick auf die Menge zukünftiger Eintragungen, Lösung wäre wohl auf eine Datenbank umzusteigen. Dort kannst du dann ein Feld als Primary Key bzw. Unique definieren und somit ist ein weiterer Eintrag des gleichen Strings nicht mehr möglich.
Wenn du trotzdem dateibasiert weiterarbeiten möchtest, dann solltest du zumindestens datenbankähnliche Strukturen wie bei SQLite(ist seit PHP5 in der Standardkonfiguration stets dabei) verwenden.
Eine relativ einfache Maßnahme, sich gegen Vandalismus zu
schützen, besteht darin, die Nutzereingaben nicht direkt zu
veröffentlichen, sondern zwischenzuspeichern und dann zu
kontrollieren und gegebenenfalls in die jeweilige Struktur zu
integrieren.
Die Verzögerung und der ausbleibende sichtbare Erfolg sollte die
meisten Vandalen bereits so frustieren, daß sowas weitgehend
unterbleibt.
Natürlich kann man auch mit einem Skript untersuchen lassen,
ob eine URI bereits in der Liste existiert, dabei muß man
eigentlich nur darauf achten, daß Groß- und Kleinschreibung im
domain-Teil der URI nicht signifikant ist, bei Verzeichnissen und
Dateien schon.