![]() |
[Q] По поводу выбора рандомной строки из файла
Собсна нужна помощь по выбору рандомной строки.
я делаю вот так $quotes = 'uin.txt'; //тут полный путь стоит $quote = rand(0, sizeof($quotes)-1); //sizeof($quotes)-1); или 38(т.е. вручную вводить) все пробовал,без разницы $reflect = $quotes[$quote]; $uinpass = explode(";",$reflect);//тут в рандомной строке разделяю нум на уин и пас $uin = $uinpass[0]; $pass = $uinpass[1]; А потом по классу webicqlite делаю подключение. Ошибка в том,что он мне пишет,что в строке $pass = $uinpass[1]; ошибка,неверный индекс 1. Вообщем очень нужна ваша помощь. |
Выведи содержимое $reflect и $uinpass.
|
не в этом дело.
я как только код не изменял,всё время пишет ошибка в строке $pass = $uinpass[1]; неверный индекс 1. |
Неверный индекс 1 значит что в массиве нет такого элемента.
Соотвественно нужно смотреть содержимое $reflect, и результат функции explode() |
результат выводится.я тестил только,чтобы выводилась рандомная строка,ещё не разделенная.
Всё выводится. Что именно не понятно? |
Не понятно в чём собственно проблема...
1. Вы не можете получить рандомную строку. 2. Вы получаете рандомную строку, но в $pass = $uinpass[1]; у вас выскакивает ошибка. |
Вот именно.Рандомная строка вытаскивается.
При разбиении на уин и пасс,у пасс он пишет,что ошибочный индекс 1 указан! |
Сделай как здесь и не парь мосг:
https://forum.antichat.ru/thread111657.html |
Ну раз уж вы не хотите светить формат содержимого в $reflect, то попробуйте заменить строку:
$reflect = $quotes[$quote]; На $reflect = 'Login;password'; Если будет выскакивать ошибка напишите результат функции var_dump($uinpass); |
Pashkela
мне нужен,что рандомно отправителя сделать. Из списка асек. |
2 Gray_Wolf
Я же вроде раскрыл содержимое переменной. $reflect = $quotes[$quote]; где quotes и quote результат действия $quote = rand(0, sizeof($quotes)-1); от файла uin.txt в переменной $quotes ($quotes = 'uin.txt';) |
Deathdreams
Эээ, вместо $quotes = 'uin.txt'; //тут полный путь стоит Должно быть $quotes= file('uin.txt'); А вообще: PHP код:
|
Gifts
у меня так и стоит. $source = 'uin.txt'; $file_s = file($source); я не написал это просто.поставил самое главное |
2Gifts
Он же вроде сказал что рандомная строка верно выбирается... 2Deathdreams ну а если подставить то что я сказал, какой результат? |
Gifts
Notice: Undefined offset: 1 in /var/www/vhosts/****/httpdocs/****/index.php on line 123 указывает на строку list($uin,$pass) = explode(';',array_rand($quotes)); |
Gray_Wolf
Вы вообще какой-то бред написали. получается скрипт будет слать месаги с уина Login и пароля Password я конечно попробовал,скрипт вообще не выполняется |
Действительно сложный случай =)
|
Вот код который спокойно работает:
PHP код:
|
ты посмотри что тут array_rand($quotes) получается прежде чем парсить ... скорее всего в этой выбранной строке нет ; и поэтому при разбиении он создает только 1 элеент массива
|
$reflect = file('uins.txt');
$kaif = array_rand($reflect); echo $kaif; Выдает число 29. |
2 Gray_Wolf
Я сделал как ты ток с уинами. нихрена( |
это значит что у тебя в $quotes[$quote] какаято хрень а не uin;pass
PHP код:
|
специально ща все заново сделаю.
|
$reflect = 'Login;Password';
$uinpass = explode(";",$reflect); $uin = $uinpass[0]; $pass = $uinpass[1]; echo $uin; echo $pass; код вот что выводит: LoginPassword |
Цитата:
Я говорю что в $quotes[$quote] у тебя что-то левое, поэтому скрипт и не пашет. |
$reflect = file('uins.txt');
$uinpass = explode(";",$reflect); $uin = $uinpass[0]; $pass = $uinpass[1]; echo $uin; echo '<br>'; echo $pass; Выводит 2 ошибки Notice: Array to string conversion in /var/www/vhosts/****/httpdocs/****/index.php on line 123 Notice: Undefined offset: 1 in /var/www/vhosts/****httpdocs/****/index.php on line 125 А вместо рандомной строки Array на строке 123 нах-ся: $uinpass = explode(";",$reflect); на 125: $pass = $uinpass[1]; |
Цитата:
Вторая ошибка возникает в результате первой. |
Gray_Wolf
скинь плиз в личку аську,я стукну. это не дело) |
я понял,что вторая в результате первой)))
|
все del с вопросом разобрались
|
| Время: 00:05 |