ugrás a tartalomhoz

6-8 jegyű kód generálása előre megadott karakterekből

Anonymous · 2006. Júl. 10. (H), 00.36
Hello,

Olyan függvényre lenne szükségem amivel előre megadott karakterek felhasználásával generálna egy 6-8 jegyű kódót. (és egy változóba tudnám menteni.

Köszi
 
1

md5

janoszen · 2006. Júl. 10. (H), 08.12
Az md5 függvény lesz a barátod, egy random számot le MD5ölsz (vagy a karaktereidet) és lerövidíted 6-8 jegyűre.
2

md5 helyett??

Anonymous · 2006. Júl. 10. (H), 10.33
Ha nem tévedek az md5() az egyirányú kódolást végez viszont én kódot szeretnék genárlni. pl megadom hogy használja fel ezeket a karaktereket: 1,2,3,4,5,6,7,8,9,a,b,c,d,e,f és kapjuk ezt a kódot --->> a4b115c.

Szóval ha valaki tud erre megoldást írjon, Köszi
3

MD5, kód?

janoszen · 2006. Júl. 10. (H), 11.52
Mire szeretnéd felhasználni a kódot? Mert azt nem írtad és alapesetben az egyirányú kódolás a jó megoldás. Ha viszont vissza akarsz fejteni belőle információt, akkor más kell, persze.

Írd le pontosan a feladatot és akkor tudunk valamit mondani.
5

PHP.net

Webappz · 2006. Júl. 10. (H), 12.04
Egy kis keresgélés után:
A rand függvény felhasználásval egy változó hosszúságú string előállításra itt egy példa.
Vagy próbáld ki ezeket:
shuffle
str_shuffle

Üdv: Webappz
6

shuffle + array_splice

Poetro · 2006. Júl. 10. (H), 12.09

<?php
function codegenerator($data = '1,2,3,4,5,6,7,8,9,a,b,c,d,e,f') {
  $ret_arr = explode(',', $data); // tömböt csinálunk
  shuffle($ret_arr); // összekeverjük
  $ret_str = '';
  while (strlen($ret_str) < rand(6,8) {
    $ret_str .= $ret_arr[rand(0, count($ret_arr))];
  }
  return $ret_str; // visszaadjuk az adatokat
}
?>
4

Csak hogy ne fárasszátok egymást...

Anonymous · 2006. Júl. 10. (H), 11.58

<?php

function RandomString ($max) {

	$string = "";

	$CharacterMap = array("A", "a", "B", "b", "C", "c", "D", "d", "E", "e", "F", "f",
						  "G", "g", "H", "h", "I", "i", "J", "j", "K", "k", "L", "l",
						  "M", "m", "N", "n", "O", "o", "P", "p", "Q", "q", "R", "r",
						  "S", "s", "T", "t", "U", "u", "V", "v", "W", "w", "X", "x",
						  "Y", "y", "Z", "z", "0", "1", "2", "3", "4", "5", "6", "7",
						  "8", "9");

	for ($i = 0; $i < $max; $i++) {

		$string .= $CharacterMap[array_rand($CharacterMap, 1)];

	}

	return $string;

}

echo RandomString(7); // A számot átírod annyira, amilyen hosszú kódot szeretnél

?>
7

Köszönöm

Anonymous · 2006. Júl. 10. (H), 12.30
Köszönöm a segítséget!

Egyébként user registration nél akarom használni. Megadja nevét és email címét utána készítek egy random kódot amit a megadott emailcímre elküldök.

Mégegyszer köszi!