Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Generacja ciągu znaków
Hpsi
post 20.09.2005, 17:59:15
Post #1





Grupa: Zarejestrowani
Postów: 483
Pomógł: 50
Dołączył: 15.03.2005
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Witam potrzebuje wskazówki jak zrobic generator znaków np 5 znaków (przypadkowych) które znajdziemy na klawiaturze, mile widziana mieszanka liczb i liter


--------------------
Daiquiri: T1 = (dx/dt * s)^hpsi
Daiquiri: gdzie T1 - Twój czas przybycia na miejsce, dx/dt - prędkość, s droga
Daiquiri: brb trzeba by to poprawić T1 - Czas jaki Ci to zajmie
Daiquiri: Zatem T - czas dotarcia p T1 + T2 gdzie T2 = aktualny czas

===
po prostu kocham ją :D haha
Go to the top of the page
+Quote Post
hwao
post 20.09.2005, 18:09:21
Post #2


Developer


Grupa: Moderatorzy
Postów: 2 844
Pomógł: 20
Dołączył: 25.11.2003
Skąd: Olkusz




  1. <?php
  2. $template = "1234567890abcdefghijklmnopqrstuvwxyz";
  3.  
  4. function GetRandomString($length) {
  5.  
  6.  global $template;
  7.  
  8.  settype($length, "integer");
  9.  settype($rndstring, "string");
  10.  settype($a, "integer");
  11.  settype($b, "integer");
  12.  
  13.  for ($a = 0; $a <= $length; $a++) {
  14.  $b = rand(0, strlen($template) - 1);
  15.  $rndstring .= $template[$b];
  16.  }
  17.  
  18.  return $rndstring;
  19.  
  20. }
  21.  
  22. echo GetRandomString(5);
  23. ?>


Źródło: http://pl2.php.net/rand
Go to the top of the page
+Quote Post
Hpsi
post 20.09.2005, 18:18:33
Post #3





Grupa: Zarejestrowani
Postów: 483
Pomógł: 50
Dołączył: 15.03.2005
Skąd: Poznań

Ostrzeżenie: (0%)
-----


wielkie dzięki winksmiley.jpg


--------------------
Daiquiri: T1 = (dx/dt * s)^hpsi
Daiquiri: gdzie T1 - Twój czas przybycia na miejsce, dx/dt - prędkość, s droga
Daiquiri: brb trzeba by to poprawić T1 - Czas jaki Ci to zajmie
Daiquiri: Zatem T - czas dotarcia p T1 + T2 gdzie T2 = aktualny czas

===
po prostu kocham ją :D haha
Go to the top of the page
+Quote Post
Kicok
post 20.09.2005, 18:55:26
Post #4





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

Ostrzeżenie: (0%)
-----


Po 1 to skrypt podany przez hwao wyświetli ci o 1 znak za dużo.
Po 2 jeśli chcesz mieć `ciąg znaków które znajdziemy na klawiaturze`, a nie tylko cyfry i litery to można to zrobić tak:
  1. <?php
  2.  
  3. function GetRandomString($length) 
  4. {
  5. settype($rndstring, "string");
  6.  
  7. for($a=0; $a<$length; $a++) 
  8. $rndstring .= chr(rand(33, 126));
  9.  
  10. return($rndstring);
  11. }
  12.  
  13. echo(htmlspecialchars(GetRandomString(5)));
  14.  
  15. ?>


rand(33, 126) to zakres znaków ASCII które mogą zostać wylosowane. A jeśli chcesz je wyświetlić na ekranie to trzeba użyć też htmlspecialchars() - żeby przeglądarka nie zamieniła #9<b> na tagi HTML, itp.

Ten post edytował Kicok 20.09.2005, 18:56:43


--------------------
"Sumienie mam czyste, bo nieużywane."
Go to the top of the page
+Quote Post
Hpsi
post 21.09.2005, 13:31:26
Post #5





Grupa: Zarejestrowani
Postów: 483
Pomógł: 50
Dołączył: 15.03.2005
Skąd: Poznań

Ostrzeżenie: (0%)
-----


wymyslem troszke prostrzy sosob (szybyszy) wedlug mnie winksmiley.jpg
  1. <?php
  2.  
  3. substr(md5(time()), 0, 5);
  4.  
  5. ?>


chyba prostrze, czytelniejsze i co najwazniejsze szybsze .


--------------------
Daiquiri: T1 = (dx/dt * s)^hpsi
Daiquiri: gdzie T1 - Twój czas przybycia na miejsce, dx/dt - prędkość, s droga
Daiquiri: brb trzeba by to poprawić T1 - Czas jaki Ci to zajmie
Daiquiri: Zatem T - czas dotarcia p T1 + T2 gdzie T2 = aktualny czas

===
po prostu kocham ją :D haha
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 13.07.2025 - 17:19