[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Маленькие ошибочки
ShalfeyShalfeev
Здравствуйте.
Вот на эту строку " $leter0=$array1[0];" сообщение об ошибке не выводится

Здесь я присваиваю переменной нулевой член массива.

А на вот эту "$leter1=$array1[1];" выводит сообщение "Notice: Undefined offset:"

у меня 2 массива в одном много букв русского алфавита. Во втором всего 3. Эти три буквы произвольные . Я в скрипте ищу позиции маленького массива в боьшом. Если ввожу все три буквы ошибку не выводит, если одну выводит 2 ошибки, если ввожу 2 буквы выводит 1 ошибку если 3 ввожу ошибок не выводит. спасибо за помощь. Не наказывайте за флуд. Строки вроде одинаковые, но на одну выводится ошибка на другую нет?



Спустя 4 минуты, 11 секунд (6.10.2011 - 19:25) bulgakov написал(а):
А можно код полностью?

Спустя 26 минут, 27 секунд (6.10.2011 - 19:52) ShalfeyShalfeev написал(а):
я добавил ещё три буквы.Вообщем когда все ввожу всё норма когда меньше 6 ошибочка. Извините за кривой скрин. Я " чайник". Сын поросил не пойму на кой ему эта прога, но теперь я буду изучать PHP - могучий язык.



<?php


/**
*Сашина прога 2 массива проба3
*
*/


/////////////////////////////////////////////////////////
/**
* We establish the charset and level of errors
* Устанавливаем кодировку и уровень ошибок
*/

header("Content-Type: text/html; charset=utf-8");
error_reporting(E_ALL);

// Переносим инициализацию выше формы и вернем значение в инпут
$text = !empty($_POST['text']) ? $_POST['text'] : null;
// $zero1 = !empty($_POST['zero1']) ? $_POST['zero1'] : null;
$nomer1 = !empty($_POST['nomer1']) ? $_POST['nomer1'] : null;
$step = !empty($_POST['step']) ? $_POST['step'] : null;

?>
<form action="" method="post">
<
input name="text" type="text" value="<?php echo htmlspecialchars($text) ?>"/><br />
<
input name="step" size=2
value="<?php echo $step+=1;?>"/>




<
input name="ok" type="submit" /> <br />
</
form> <br /> <br /> <br />






<?php
// вторая форма для числа

// Заменяем сущности на эквиваленты

echo htmlspecialchars($text);




function f_str_split( $string = '' )//Здесь вторая часть проги
{
if ( is_array( $string ) )
return $string;

$string = iconv('utf-8', 'windows-1251', $string); // Сменили кодировку на кирилицу

$array = str_split( $string );
foreach( $array as $key => $value)
$array[$key] = iconv( 'windows-1251', 'utf-8', $value ); // Сменили кодировку на латиницу

return $array;
}


$str = " абвгдеёжзийклмнопрстуфхцчшщъыьэюябвгдеёжзийклмнопрстуфхцчшщъыьэюявгдеёжзийклмнопрстуфхцчшщъыьэюягдеёж зийклмнопрстуфхцчшщъыьэюяеёжзийклмнопрстуфхцчшщъыьэюяёжзийклмнопрстуфхцчшщъыьэюяжзийклмнопрстуфхцчшщъ ыьэюя";

echo "<PRE>";


$array2=f_str_split( $str );



$array1=f_str_split( $text );





echo nl2br("\n ");

if(!empty($_POST['text']) )

{

$result = count($array1);

echo $result;
echo nl2br("\n ");
echo nl2br("\n ");
$leter0=$array1[0];
$poz0=array_search($leter0,$array2);


$leter1=null;

$leter1=$array1[1];
$poz1=null;
$poz1=array_search( $leter1,$array2);

$poz2=null;
$leter2=$array1[2];
$poz2=array_search($leter2,$array2);

$leter3=$array1[3];
$poz3=array_search($leter3,$array2);


$leter4=$array1[4];
$poz4=array_search($leter4,$array2);


$leter5=$array1[5];
$poz5=array_search($leter5,$array2);




if($result==1){print_r($array2[$poz0+$step]);}

elseif($result==2){print_r($array2[$poz0+$step]);
print_r($array2[$poz1+$step]);}

elseif($result==3){print_r($array2[$poz0+$step]);
print_r($array2[$poz1+$step]);
print_r($array2[$poz2+$step]);}


elseif($result==4){print_r($array2[$poz0+$step]);
print_r($array2[$poz1+$step]);
print_r($array2[$poz2+$step]);
print_r($array2[$poz3+$step]); }


elseif($result==5){print_r($array2[$poz0+$step]);
print_r($array2[$poz1+$step]);
print_r($array2[$poz2+$step]);
print_r($array2[$poz3+$step]);
print_r($array2[$poz4+$step]); }


elseif($result==6){print_r($array2[$poz0+$step]);
print_r($array2[$poz1+$step]);
print_r($array2[$poz2+$step]);
print_r($array2[$poz3+$step]);
print_r($array2[$poz4+$step]);
print_r($array2[$poz5+$step]); }








/*

*/

}
?>

Спустя 4 минуты, 35 секунд (6.10.2011 - 19:56) alex12060 написал(а):
был бы я модератором, наказал бы smile.gif

Спустя 3 минуты, 14 секунд (6.10.2011 - 20:00) ShalfeyShalfeev написал(а):
Да в личку надо было скрин .Исправлюсь

Спустя 1 минута, 34 секунды (6.10.2011 - 20:01) bulgakov написал(а):
Я конечно позабывал в php многое, щас восстанавливаюсь... но помоему даже на мой взгляд уж намудрено тут... но почему то бросилось в глаза - что за магия с iconv? C каких пор utf-8 это латиница а cp-1251 кириллица? utf-8 многобайтная кодировка которая так же включает и русские символы и латиницу и тучу других языков, а cp-1251 включает только латиницу и русский плюс служебные символы. И еще эти тучи принтов... Интересно ради чего это писалось?... Просто аж страшно запускать это)

Спустя 47 секунд (6.10.2011 - 20:02) bulgakov написал(а):
Цитата
Да в личку надо было скрин .Исправлюсь

Не то чтобы в личку, но можно было спрятать под спойлер и оформить тегами code

Спустя 3 минуты, 55 секунд (6.10.2011 - 20:06) ShalfeyShalfeev написал(а):
с iconv? без этого не переводит строку в массив, не понимает русскую кодировку. Там ничего страшного буквы двигаются по большому алфавиту. А этот код я здесь на форуме попросил, ребята с форума написали запустил , работает. Без этого кода и в файл не сохраняло русскую строку. Сервер я с IRBIS скачал . Может , что в настройках сервера не так, что он русский не понимает.
СПС.
Извините дела домашние приду завтра. Всем большое СПС. Вообще очень дружелюбный форум. Первый раз такой встречаю в инете. biggrin.gif

Спустя 9 минут, 37 секунд (6.10.2011 - 20:16) bulgakov написал(а):
хм странно... а кодировки самих файлов скриптов какие?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.