[PHP] undefined offset door getal

Pagina: 1
Acties:
  • 35 views sinds 30-01-2008

  • blizt
  • Registratie: Januari 2003
  • Laatst online: 22-05 10:11

blizt

Wannabe-geek

Topicstarter
Ik heb een functie om een random pass te maken... Helaas krijg ik vaak 'Notice: Undefined offset: 19 in E:\www\test\passgen\index.php on line 32' omdat er dan een getal boven de 9 is, wat niet kan voor de cijfers... Maar, ik heb er 26 nodig voor de letters... Nu heb ik al wel wat geprobeerd (zoals je kunt zien in de code), maar 't wil niet werken :(

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
function generateString($piLength)
{
    $aTekens = array(
                    array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'),
                    array('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'),     
                    array('0','1','2','3','4','5','6','7','8','9')
              );
    $i = 2;
    
    $iCountTekens = count($aTekens[ rand(0,$i) ]) - 1;
    $sRandomString = $aTekens[ rand(0,$i) ][ rand(0,$iCountTekens) ];

    for($j = 1; $j < $piLength; $j++)
    {
        
        $k = rand(0,$i);
        $iCountTekens = count($aTekens[ $k ]) - 1;
        $sRandomString .= $aTekens[ $k ][ rand(0,$iCountTekens) ];
        
    }
    
    return $sRandomString;

}
?>


edit:

Argh, ik had niet goed gekeken naar 't linenumber! De fout zat in:
[php]
$sRandomString = $aTekens[ rand(0,$i) ][ rand(0,$iCountTekens) ];
[/php]
En is inmiddels opgelost!


edit:

Edit2: kan iemand de topictitel wijzigen? Per ongeluk alleen de prefix geplaatst... "[PHP] undefined offset door getal" > lijkt me beter.

[ Voor 135% gewijzigd door blizt op 21-02-2004 09:15 ]

United we stand, and divided we fall


  • darkrain
  • Registratie: Augustus 2001
  • Nu online

darkrain

Moderator Discord / General Chat

Geniet. Punt.

En wat gebeurt er als je 1 array gebruikt met alle letters en cijfers?

Dan heb je dus 26+26+9 nodig.

Dus je hebt al geen probleem meer?
blizt schreef op 21 februari 2004 @ 08:57:
edit:

Argh, ik had niet goed gekeken naar 't linenumber! De fout zat in:
[php]
$sRandomString = $aTekens[ rand(0,$i) ][ rand(0,$iCountTekens) ];
[/php]
En is inmiddels opgelost!

[ Voor 62% gewijzigd door darkrain op 21-02-2004 09:40 ]

Tweakers Discord


  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 10-05 18:53

Bosmonster

*zucht*

[knip] verkeerde knopje :P

[ Voor 91% gewijzigd door Bosmonster op 21-02-2004 14:14 ]


  • Mithrandir
  • Registratie: Januari 2001
  • Laatst online: 26-05 21:22
Bosmonster, fijne titel B)

Verbouwing


  • darkrain
  • Registratie: Augustus 2001
  • Nu online

darkrain

Moderator Discord / General Chat

Geniet. Punt.

Maakt toch niet zoveel meer uit.
Het probleem is al opgelost geloof ik.
De functie werkt bij mij namelijk gewoon.

Tweakers Discord


  • blizt
  • Registratie: Januari 2003
  • Laatst online: 22-05 10:11

blizt

Wannabe-geek

Topicstarter
Dark_Rain schreef op 21 februari 2004 @ 09:35:
En wat gebeurt er als je 1 array gebruikt met alle letters en cijfers?

Dan heb je dus 26+26+9 nodig.

Dus je hebt al geen probleem meer?
[...]
Dit lijkt logisch, maar je moet aan kunnen geven of er capital, gewoon & cijfers in mogen ;)

United we stand, and divided we fall


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01:00

.oisyn

Moderator Devschuur®

Demotivational Speaker

Goed, het probleem was dus al opgelost, maar je had ook gewoon zelf even van tevoren de indices kunnen outputten naar het scherm zodat je zelf al zag wat er fout ging :)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.

Pagina: 1

Dit topic is gesloten.