PHP ver gevorderde |
|
Hey SiMa Leute,
Ik heb toch maar is de stap gemaakt om een beetje met classes
te gaan werken. Ik zit hier met een probleempje. (waarsch een
super dom foutje...) Mijn keygen geeft maar 1 letter/cyfer terug
IPV de aantal die je opgeeft. Dus komt er in mijn database het
volgende te staan:
user_key = 6
of
user_key = q
en dit moet normaal een combinatie van 12 letters/cijfers zijn.
Me class is als volgt:
<?PHP
class keygen
{
public function keygenerator ($length, $type)
{
$generated_key = "";
mt_srand ((double) microtime () * 1000000);
while (strlen ($generated_key) < $length)
{
$generate = chr (mt_rand (0, 255));
if ($type == 1) // Unique + Activate Key
{
if (eregi ("^[a-z0-9]$", $generate))
$generated_key = strtolower ($generated_key . $generate);
}
if ($type == 2) // Reset Key
{
if (eregi ("^[a-zA-Z0-9]$", $generate))
$generated_key = $generated_key . $generate;
}
if ($type == 3) // Confirm (img) Key
{
if (eregi ("^[A-Z0-9]$", $generate))
$generated_key = strtoupper ($generated_key . $generate);
}
}
return $generated_key
}
public function imagecreator ()
{
// image generator, niet relevant
}
}
?>
<?PHP class keygen { public function keygenerator ($length, $type) { $generated_key = ""; while (strlen ($generated_key) < $length) { if ($type == 1) // Unique + Activate Key { if (eregi ("^[a-z0-9]$", $generate)) $generated_key = strtolower ($generated_key . $generate); } if ($type == 2) // Reset Key { if (eregi ("^[a-zA-Z0-9]$", $generate)) $generated_key = $generated_key . $generate; } if ($type == 3) // Confirm (img) Key { if (eregi ("^[A-Z0-9]$", $generate)) $generated_key = strtoupper ($generated_key . $generate); } } return $generated_key } public function imagecreator () { // image generator, niet relevant } } ?>
Ik gebruik hem op de volgende manier:
<?PHP
require (INCLUDES_PATH . "/keygen.class.php");
$keygen = new keygen ();
$generated_key = $keygen -> keygenerator (12, 1);
?>
<?PHP require (INCLUDES_PATH . "/keygen.class.php"); $keygen = new keygen (); $generated_key = $keygen -> keygenerator (12, 1); ?>
Weet iemand waarom hij maar 1 letter/cijver returned?
|