Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Php Script zur Lizenzschlüssel Verteilung (https://www.delphipraxis.net/161248-php-script-zur-lizenzschluessel-verteilung.html)

cookie22 24. Jun 2011 09:47

Php Script zur Lizenzschlüssel Verteilung
 
Hallo,

ich brauche ein PHP Script, welches nach Eingabe von Kundendaten einen Lizenzschlüssel aus einer Schlüsseliste auf meiner Website ausgibt.

Kennt da jemand etwas? Ich hab im Web nichts wirklich brauchbares gefunden.

Gruß,
Cookie

mkinzler 24. Jun 2011 09:53

AW: Php Script zur Lizenzschlüssel Verteilung
 
Da sollte doch nicht viel dahinter stecken. Mach es einfach selber.

blackfin 24. Jun 2011 09:54

AW: Php Script zur Lizenzschlüssel Verteilung
 
So etwas kann man relativ schnell selbst schreiben :-)
Wo stehen denn die Lizenzschlüssel? In einer Datenbank? Wie ist die Zuordnung von Kundendaten -> Schlüssel?
Das php-Script muss ja die eingegeben Daten überprüfen und den zugehörigen Schlüssel ausspucken, der -irgendwo- bei den Kundendaten gespeichert ist.

cookie22 24. Jun 2011 09:57

AW: Php Script zur Lizenzschlüssel Verteilung
 
Meine PHP Kentnisse bewegen sich gen Null, da wäre was fertiges nicht schlecht. Hatte gehofft es gibt da was Open Source mäßig.

Ps.: Ka, wo die Schlüssel stehen. In einer Textdatei oder in einer MySQL Datenbank oder so. Es handelt sich um eine Freeware für die sich die Kunden regisrieren sollen, darum sollte der aufwant nicht so groß sein.

blackfin 24. Jun 2011 10:07

AW: Php Script zur Lizenzschlüssel Verteilung
 
mal so grob, falls die Daten in einer mySQL-Datenbank stehen:

PHP-Quellcode:
<?php

/*
lizenz.php
*/

// Eingabeformular (anzeigen, wenn keine POST-Daten abgeschickt wurden)
if(!isset($_POST)) {
   echo "
   <form action="lizenz.php" method="post">
      <input type="text" name="kundendaten" value="" />
      <input type="sumbit" value="abschicken" />
   </form>" ;

// POST-Daten auswerten (nach Absenden des Formulars)
}else{
   // Input escapen (gegen mySQL-Injection)
   $kundendaten = mysql_real_escape_string($_POST['kundendaten']) ;
   
   // mySQL-Verbindung aufbauen
   $con = mysql_connect(Server,Username,Password);
   
   // Datenbank "customers" wählen
   mysql_select_db("customers") ;
   
   // Kundendaten-Abfrage aus "customerdata"-Tabelle
   $row_query = mysql_query("SELECT license from `customerdata` WHERE data='".$kundendaten."'") ;
   
   // Kein zugehöriger Datensatz gefunden => Fehler ausgeben
   if(mysql_num_rows($row_query) == 0) {
      echo "Keinen Lizenzschlüssel für diese Kundendaten gefunden" ;
   
   // Datendatz gefunden => Lizenzschlüssel ausgeben
   }else{
      $row = mysql_fetch_assoc($row_query) ;
      echo "Ihr Lizenzschlüssel: ".$row['license'] ;
   }
   
}
?>

fkerber 24. Jun 2011 10:12

AW: Php Script zur Lizenzschlüssel Verteilung
 
Hi,

ich würde eher empfehlen mit Prepared Statements zu arbeiten.


LG, Frederic

cookie22 24. Jun 2011 10:26

AW: Php Script zur Lizenzschlüssel Verteilung
 
Zitat:

Zitat von blackfin (Beitrag 1108050)
mal so grob, falls die Daten in einer mySQL-Datenbank stehen:

PHP-Quellcode:
<?php

/*
lizenz.php
*/

// Eingabeformular (anzeigen, wenn keine POST-Daten abgeschickt wurden)
if(!isset($_POST)) {
echo "
<form action="lizenz.php" method="post">
   <input type="text" name="kundendaten" value=""/>
   <input type="sumbit" value="abschicken"/>
</form>" ;

// POST-Daten auswerten (nach Absenden des Formulars)
}else{
   // Input escapen (gegen mySQL-Injection)
   $kundendaten = mysql_real_escape_string($_POST['kundendaten']) ;
   
   // mySQL-Verbindung aufbauen
   $con = mysql_connect (Server,Username,Password);
   
   // Datenbank "customers" wählen
   mysql_select_db("customers") ;
   
   // Kundendaten-Abfrage aus "customerdata"-Tabelle
   $row_query = mysql_query("SELECT license from `customerdata` WHERE data='".$kundendaten."'") ;
   
   // Kein zugehöriger Datensatz gefunden => Fehler ausgeben
   if(mysql_num_rows($row_query) == 0) {
      echo "Keinen Lizenzschlüssel für diese Kundendaten gefunden" ;
   
   // Datendatz gefunden => Lizenzschlüssel ausgeben
   }else{
      row = mysql_fetch_assoc($row_query) ;
      echo "Ihr Lizenzschlüssel: ".$row['license'] ;
   }
   
}
?>

Kleine verständnisfrage. Müssen für bestimmte Kunden schon Schlüssel da sein oder kann jeder der sich neu einträgt einen Schlüssel bekommen?

Irgendwie verwirrt mich das hier:
PHP-Quellcode:
   // Kein zugehöriger Datensatz gefunden => Fehler ausgeben
   if(mysql_num_rows($row_query) == 0) {
      echo "Keinen Lizenzschlüssel für diese Kundendaten gefunden" ;

blackfin 24. Jun 2011 10:30

AW: Php Script zur Lizenzschlüssel Verteilung
 
Zitat:

ich würde eher empfehlen mit Prepared Statements zu arbeiten.
Joa...das lässt sich ja relativ einfach auf ein prepared statement umschreiben:
PHP-Quellcode:
$con = new mysqli(Server,Username,Password,Datenbank);
$s = $con->prepare("SELECT license from `customerdata` WHERE data = ?");
$s->bind_param("s", $kundendaten);
$s->execute();
$r = $s->get_result();
$row = $r->fetch_assoc() ;
Zitat:

Kleine verständnisfrage. Müssen für bestimmte Kunden schon Schlüssel da sein oder kann jeder der sich neu einträgt einen Schlüssel bekommen?
Öhm..das kommt auf deine Logik an...und hat eigentlich nichts mit der Programmierung zu tun :-)
Was soll denn wann geschehen?

mkinzler 24. Jun 2011 10:32

AW: Php Script zur Lizenzschlüssel Verteilung
 
Der Code liest nur vorhandene Schlüssel aus. An der von dir genannten Stelle müsste dann der Code für die Erzeugung eines neueb Schlüssels und den Eintragung in die Datenbank stehen.

cookie22 24. Jun 2011 10:44

AW: Php Script zur Lizenzschlüssel Verteilung
 
Zitat:

Zitat von blackfin (Beitrag 1108058)
...Was soll denn wann geschehen?

Also das ganze soll folgendermassen ablaufen.

Jemand läd sich das Programm herunter und muß nach 30 Tagen einen Lizenzschlüssel eingeben um das Programm weiter benutzen zu können. Den Schlüssel bekommt er umsonst auf meiner Website. Dazu muss er Namen und Mail-Adresse eingeben. Dann drückt er den Submit-Button und soll einen Schlüssel aus einer Liste bekommen. Liste deshalb, weil das die Implementierung das Key-Generators erspart.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:14 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz