Computerhilfen.de Logo
Forum
Tipps
News
Frage stellen

Lizenzsystem?

Hallo zusammen  ;D
ich habe da mal ne frage.... ich mache in letzter zeit viele kleinere webseiten für privatkunden,etc.  Früher einmal liess ich mir auch eine webseite machen, dieser webmaster baute ein lizenzsystem in die  homepage ein. da konnte ich lizenzen kaufen, die mit dem Registrierungseditor geschrieben waren. jetzt zu meiner frage:  weiss jemand wie ich in die Homepages ein solches system einbauen kann? wenn möglich gratis... gemeint ist damit, dass wenn die lizenz abläuft, dass dann die homepage nicht mehr funktioniert, sondern einfach nur noch die Indexseite erscheint und es darauf heisst dass die Lizenz abgelaufen ist. die Navigation sollte dann nicht mehr intakt sein...


mfg Fubu100


Antworten zu Lizenzsystem?:

Hallihallo,

also ich weiß zwar net recht ob das sicher genug ist aber du könntest in den den Code eine Abfrage mit PHP einbetten, die überprüft, ob ein bestimmtes datum überschritten wurde. wenn ja, dann werden in der navigation die links deaktiviert oder sowas. ich denke dass lässt sich so mit ein bisschen PHP realisieren.

Hallo

Ich habe mir irgendwie etwas anderes gedacht, dass es das aus einer externen Datei mit der endung .reg abruft und dann evtl. blockt.... aber ich weiss nich wie das zu realisieren wäre :-\

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button
Naja, du könntest ja auf irgendeinem externen Server eine Datei öffnen lassen und auslesen, in der steht, wann die Lizenz abläuft, z.B. so:

<?php

$lizenzfile 
"http://url.de/lizenzen/hp_von_herr_x.txt"$lizenzopen fopen($lizenzfile"r"); $lizenzread .= fread($lizenzopen9999);

?>


Dann kannst du die Datei "hp_von_herr_x.txt" mit 9999 Zeichen beschreiben und dort z.B. einen Timestamp reinsetzen, dann die Lizenz abläuft, z.B. der 1.Februar 2007. dann kommt in die Navigation so eine PHP Abfrage:

<?php

   
// $lizenzread ist 1170284400, also 1.2.2007

   
if($lizenzread >= time())
   {
?>
<!-- hier kommt die Navigation hin -->
<?
    }
?>


Wenn der 1. Februar vorrüber ist, wird dann auch keine Nebenleiste mehr angezeigt

hmm... also wie könnte dann die txt datei aussehen? und die geposteten codebeispiele wären die auf der selben seite oder wären das verschiedene dokumente?   ??? ::) und wo könnte ich das datum hinschreiben, dass er es richtig entschlüsselt?

mfg Fubu100

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Also der Sinn von der Lösung mit der reg-Datei will sich mir im Moment noch nicht so recht erschließen, vielleicht steh' ich auch nur aufm Schlauch.

In die Registry des Nutzers brauchst du ja nichts schreiben, denn eine Website hat (normalerweise) keinen Zugriff auf das lokale Dateisystem des Nutzers und damit auch nicht zur Registry.

Heißt also: es muss serverseitig etwas gebaut werden, um das zu erreichen. Bringt aber im Grunde genommen auch nur etwas, wenn alle Kunden entweder ihre Seiten zentral bei dir hosten, oder der Kunde absolut keinen Plan von der Materie und/oder keinen FTP-Zugang hat, um die Sperre zu umgehen.

Also alle srecht aufwändig, aber natürlich lösbar, wenn die Voraussetzungen stimmen.

greez 8)
JoSsiF

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button
De Fabian meinte wahrscheinlich, dass auf einem eigenen Webspace Dateien liegen, in der irgendwelche Informationen gespeichert sind.

Diese werden von irgendeinem anderen Webspace aus ausgelesen und dann überprüft, ob denn die "Lizenz" noch aktuell ist. Aber das geht wirklich nur, wenn der Kunde keine Ahnung von der Materie hat - so jemand ließe sich aber auch mit einem einfachen Javascript-Passwortschutz abschrecken ;D

Das gepostete Beispiel kommt dahin, wo die Navigation bzw. Nebenleiste untergebracht ist.

Wenn du aber selbst keine Kenntnisse in PHP oder einer "höheren" Webprogrammiersprache hast, dann solltest du entweder erstmal ein Tutorial lesen oder die Sache vorläufig erstmal vergessen, wenn dabei irgendwas schief läuft hast du am Ende vielleicht noch verärgerte Kunden. Es könnte ja sein, dass sich die Dateien, in denen die "Lizenzen" stehen mal gelöscht werden oder nicht verfügbar sind (Serverabsturz o.ä.) und dann geht eventuell auch nicht die Navigation.

Das wird dir KEINER ankaufen , denn die Seite gehört normal dem Kunden.
Sonst muss das ein Zeitauftrag für eine Seite sein , die per Vertrag abläuft !!
Sei vorsichtig mit deinen AGB , die zerreist dir sonst jeder Schmalspuranwalt in der Luft !!

es geht mir um eine DEMO Lizenz, könnte mir sonst jemand sagen wie man ein datum aus einer anderen Datei auslesen kann , so dass die page nur bis zu diesem datum funktioniert? wie könnte das aussehen?

das von Der olle Schwoebel ist schon ziemlich gut aber ich verstehe nicht, wie ich machen kann, dass er das datum richtig liest? muss ich dann in die .txt datei einfach 2.2.2007 reinschreiben und wenn der 3.2.2007 ist geht die navigation nicht mehr oder wie?

Thanks, Fubu100

« Letzte Änderung: 15.10.06, 19:51:21 von Fabian Weber »

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Das Script vom ollen Schwoebel arbeitet mit UNIX Timestamps, und das ist auch gut so.

Lege dir einfach ein Format fest, wie du dein Datum speichern möchtest. Dann könntest du es mit diversen substr()-Aufrufen auseinandernehmen und mit mktime() einen Timestamp draus machen, der dann - siehe Skript - mit dem aktuellen Zeitstempel (Funktion time()) verglichen wird.
Alternativ englisches Datum verwenden und direkt mit strtotime() in einen Timestamp umwandeln, dann entfällt die Bastelei mit substr().

Sinn der ganzen Aktion geht trotzdem streng gegen Null. Klar, du kannst auf dem FTP-Bereich des Kunden diese jene Datei hinterlegen, aber die ist dann extrem leicht und selbst für Anfänger manipulierbar (der potenzielle Kunde bräuchte ja z.B. nur HIER fragen, wie's geht ;D).
Du müsstest also, um Manipulationen vorzubeugen, die Datei mit dem Datum auf einem fremden Server ablegen, Dort kommst du allerdings mit großer Sicherheit dann nicht ran, weil die meisten Hoster in PHP den Zugriff auf Remote-Dateien unterbinden (einfach mal in der Serverkonfiguration den Eintrag allow_url_fopen checken).

Schlechte Karten also... ;)

greez 8)
JoSsiF

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button
Ja, in meinem Beispiel wäre die Datei auf einem fremden Server gelagert, aber streng genommen unterstützt fopen als URL-Wrapper eigentlich nur file:/// und relative Pfadangaben (also auf dem Server selbst).

Ich hab das als "Updatescript" in HomePH Design eingebaut, aber das geht dann auch nur, weil meistens unter XAMPP damit gearbeitet wird und da ist das möglich.

Bliebe dir höchstens vielleicht noch eine Möglichkeit mit einer Datenbank das ganze zu lösen, das ginge auch ein bisschen einfacher - auch wenn damit im Script ja die Zugangsdaten hinterlegt wären und es so für durchblickende Kunden sicherlich auch nicht sonderlich schwer wäre da einfach einen neuen Timestamp oder was auch immer reinzusetzen:

http://db4free.org/
http://www.freesql.org/

Die bieten Datenbanken an, auf die auch "extern" zugegriffen werden kann. Setzt allerdings auch ein bisschen Erfahrung in SQL heraus.

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Du kannst auch auf entfernte MySQL-Server zugreifen. Es wäre dann denkbar, für jeden Kunden einen SQL-Nutzer mit Nur-Lesen-Rechten anzulegen, um den Timestamp zu holen, aber vor Manipulation zu schützen. Der eigene Quellcode steht aber trotzdem dann noch offen wie ein Scheunentor.

Ich finde diese Lösung bei Web-Software irgendwie nicht angebracht, zumindest dann nicht, wenn eine komplette Website samt Programmierlogik der Vertragsgegenstand ist. Anders sieht's aus, wenn man Dienste bezieht, auf deren Quellen man selber keinen Zugriff hat.

greez 8)
JoSsiF

könnte mir vielleicht jemand posten wie php aus einer bestimmten datei eine bestimmte zeile lesen kann ???  ;D

Danke

Fubu100

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Mit fgets() kannst du nacheinander die Inhalte einer Datei einlesen.

Wenn du mehrere Zeilen hast und eine bestimmte Zeilennummer haben willst, dann lies die Datei mit file() ein und greife über den Array-Index auf die Zeile zu.

greez 8)
JoSsiF

also auf selfphp ist diese methode aufgeführt:

fgets (handle [, int length])

ich denke dass das die ist die du gemeint hast aber wo kommt dann die zeilenangabe hin?  ;D

Mercöööö
Fubu100


« Kontakt: Wie eine Mail versenden, was mache ich falsch !Memberbereich erstellen ... - weiter? »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!

Fremdwörter? Erklärungen im Lexikon!
Quellcode
Ein Quellcode, auch als Quelltext bekannt, bezeichnet den unkompilierten Programm-Code einer Software. Quell- oder Programm-Code ist der auch für Menschen lesbare Co...

Unicode
Unicode ist ein international anerkannter Standard, der als universeller Zeichencode ("Universal Code") dient und durch das Unicode-Konsortium entwickelt und verwaltet wi...

QR-Code
QR-Codes, die Abkürzung für "Quick Response Codes", sind eine Form von zweidimensionalen Barcodes. Damit lassen sich Informationen schnell und effizient speiche...