Нужна помощь PHP

Печать RSS
382


Господин ПЖ
0
вообще всегда надо включать ошибку в данном случае у тебя предупреждение о необъявленной переменной
или нет такого ключа в массиве $str или не существует переменной $c
напиши какой там выше у тебя код
3
Автор
Оранжевые штаны
0
<?php

class HashGenerator
{
    var $SYMB_COUNT = 62;
    var $ARRAY_0 = array(0, 1, 2, 3, 4, 5, 6, 6, 7, 7, 8, 9, 9, 10, 11, 12, 13, 13, 14, 15, 15, 16, 16, 17, 18, 19, 20, 21, 22, 23, 40, 41, 42, 45);
    var $ARRAY_1 = array(-2, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2, 0, 0, 0, 0, 0, 0, 0, -5, -5, 0, -3, 0, 0, 0, 0, 0, -7, -1, 0, -8, -8, -4, -11, -6, 0, 0, -3, 0, -5, 0, 0, -3, 0, 0, 0, 0);

    var $Key;
    var $field_606; // Errors count   (if more than 2 midlet ask restart the chat)
    var $Symb;
    var $field_31;
    var $field_1282;
    var $field_1280;
    var $field_378_length;
    var $field_427;
    var $field_542;
    var $field_1122;
    var $field_425; // just must be greater than field_1122
    var $field_660;
    var $field_379;
    var $field_431; // Press/Release keys count
    var $field_1281;
    var $field_11 = array();
    var $field_511 = array();

    public function __construct($GotKey) {
      $this->Key               = $GotKey;
      $this->field_606         = -1;
      $this->Symb              = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
      $this->field_31          = 123;
      $this->field_1282        = '0';
      $this->field_1280        = '0';
      $this->field_378_length  = 222;
      $this->field_427         = 55;
      $this->field_542         = 0;
      $this->field_1122        = 6;
      $this->field_425         = 323;
      $this->field_660         = 97;
      $this->field_379         = 0;
      $this->field_431         = 0;
      $this->field_1281        = 755;
      for ($i=0;$i<=33;$i++) $this->field_11[$i] = $this->ARRAY_0[$i];
      for ($i=0;$i<=46;$i++) $this->field_511[$i] = $this->ARRAY_1[$i];
      return true;
    }

    function SetGotKey($GotKey) {
      $this->Key = $GotKey;
    }

    function IndexOf($str, $c) {
      $rtn = 0;

      for ($i=0;$i<=strlen($str);$i++)
      if ($str[$i] == $c)
всё до 56 строки

Господин ПЖ
0
напиши код метода indexOf здесь

сделай так if (isset($str[$i]) && $str[$i] == $c)
Изменил: Вантуз-мен
3
Автор
Оранжевые штаны
0
function IndexOf($str, $c) {
      $rtn = 0;

      for ($i=0;$i<=strlen($str);$i++)
      if ($str[$i] == $c)
      {
        $rtn = $i + 1; break;
      }
      return $rtn;
    }

Пацак
0
<?php

function IndexOf($str, $c)
{
    $rtn = 0;
    $a = mb_strlen($str, 'UTF-8');
    for ($i = 0; $i <= $a; $i++) {
        if (isset($str[$i]) and $str[$i] == $c) {
            $rtn = $i + 1;
            break;
        }
    }
        
    return $rtn;
}

?>
3
Автор
Оранжевые штаны
0
15. Фанат, теперь ошибку не выдаёт, но и сам скрипт не работает. Вообщем должно выводить
999 :AUTH OK
на локалке - работает. на хосте - нет.
Вот сам скрипт: http://cms.ailep.ru/hash.zip

2000 лет д.н.э.
0
for ($i = 0; $i < $a; $i++)
Это вместо вот этого
for ($i = 0; $i <= $a; $i++)
3
Автор
Оранжевые штаны
0
17. ramzes, не помогло, на хосте скрипт не пашет sad
это из за 32 битных ф-ций каких-то..

ВЕЛИКИЙ и УЖАСНЫЙ!
0
12. nickname, блиииин, а чего так кустарно? Чего-то у меня даже в голове не представляется, чего ты там делаешь.
3
Автор
Оранжевые штаны
0
19. SNELS, алгоритм писал не я, его переписывали с дельфи на пых.. ну очень нужен он рабочий на хосте sad
Стикеры / Теги / Правила