Милованов Ю.С: Загадка: ТС пишет скрипт казино(рулетка). Сколько ему понадобиться тысяч функций для его комбинаторики:D
Вот, вы правильно подчеркнули! Даже, со скриптом рулетки, 100% есть какие-то методы объединения?
---------- Добавлено 04.07.2013 в 15:07 ----------
Вот есть сайт: http://www.randstuff.ru/password/ на нём мне очень нравится генератор. Скачал с сайта все файлы JS и CSS запустил у себя, нечего не работает. Значит обработчик php сервер, а не JS.
И ещё у меня к вам вопрос: на этом же сайте, так красиво передвигается ползунок шкалы выбора колисечтва символов, и пароль выдаётся без перезагрузки, и текст красиво появляется. Скажите какие языки и библиотеки языков для этого понадобились? Чтобы реализовать такое?
mark2011: А разве это не логично? Из курса комбинаторики это прямо следует :) вы же хотите все возможные комбинации? Ну и прописывайте их в программе, в чём вопрос-то? Если хотите урезать количество массивов - урезайте кол-во комбинаций :)
Я конечно, не знаток с точки оптимизации. Но если я правильно понимаю, чем больше скрипта, тем дольше его обработка? Если в одном файле, будет 20 массивов и 20 функций, я не думаю что это будет Good !
Я думал, что можно их как-то соединять (массивы), конечно есть функция соединения, но я не могу понять как соединить их несколько? При этом не зная, сколько их будет соединяться?
PS - если бы я знал что пользователь выберет именно 2 пункта, то да, это легко сделать (соединить) нужные массивы.
setka_gs: если выберет все, то создадите e в которой
case 'e':$letters = 'abcdefghijklmopkqrstuvwxyz0123456789~!@#$%^&*()_+=-';break;
детский сад.
---------- Добавлено 03.07.2013 в 21:53 ----------
рандом стоит на строку, если не создать
case 'e':$letters = 'abcdefghijklmopkqrstuvwxyz0123456789~!@#$%^&*()_+=-';break;
то пользователь не получит чего хочет...
Если честно, это вы детский сад. В вашем случае, нужно будет создавать 20 массивов. Так как будет 4 галочки для выбора. Вот и считайте, 4 * 4 = 16 и ещё какие-либо функции. Вы написали тоже самое, то и с чего я начал эту тему. С массива, и я попросил как можно обойтись без каждого выбора. То есть есть 4 массива, и она в зависимости от галочки, собираются вместе.
function pass($t='c',$count_r =6)
{
switch($t){
case 'c':$letters = 'abcdefghijklmopkqrstuvwxyz';break;
case 'd':$letters = '0123456789';break;
case 's':$letters = '~!@#$%^&*()_+=-';break;
default:return null;
}
for ($p = 0; $p <= $count_r; $p++)
{
$pass .= $letters{rand(0, strlen($letters) - 1)};
}
return $pass;
}
Ага, а если пользователь выбрал и буквы и цифры. То ему сначала код, выдаст буквы, а потом пароль с цифрами. Или наоборот. Как в вашем скрипте будет выводиться пароль если пользователь выберет c d s ?
Проблема в том что, если допутим пользователь вводит 10 то ему выдаётся 20 цифирный пароль, если 100 ему выдаётся 200 символьный пароль. Как эту проблему устранить?
когда ставлю знак = равенства (всё хорошо работает когда, <=)
То скрипт виснет и просто крутит колёсико!
3.При генерации чисел, почему то не выдаётся нужное число, допутим пользователь написал 5 ему выдалось 1 числвой пароль, попросил 100 выдалось 1.Как это устаранить?
Подскажите пожалуйста, как эти ошибки устаранить? Благодарю за ответы!
Там представлены, как делать генераторы, только определённой длины. А вот с выбором (галочками) нет такого. Поэтому я начал делать сам. И столкнулся с такой проблемой. Что если будет 4 пункта. То нужно будет написать более 20 функций.
Загадка: ТС пишет скрипт казино(рулетка). Сколько ему понадобиться тысяч функций для его комбинаторики:D
Вот, вы правильно подчеркнули! Даже, со скриптом рулетки, 100% есть какие-то методы объединения?
---------- Добавлено 04.07.2013 в 15:07 ----------
Вот есть сайт: http://www.randstuff.ru/password/ на нём мне очень нравится генератор. Скачал с сайта все файлы JS и CSS запустил у себя, нечего не работает. Значит обработчик php сервер, а не JS.
И ещё у меня к вам вопрос: на этом же сайте, так красиво передвигается ползунок шкалы выбора колисечтва символов, и пароль выдаётся без перезагрузки, и текст красиво появляется. Скажите какие языки и библиотеки языков для этого понадобились? Чтобы реализовать такое?
А разве это не логично? Из курса комбинаторики это прямо следует :) вы же хотите все возможные комбинации? Ну и прописывайте их в программе, в чём вопрос-то? Если хотите урезать количество массивов - урезайте кол-во комбинаций :)
Я конечно, не знаток с точки оптимизации. Но если я правильно понимаю, чем больше скрипта, тем дольше его обработка? Если в одном файле, будет 20 массивов и 20 функций, я не думаю что это будет Good !
Я думал, что можно их как-то соединять (массивы), конечно есть функция соединения, но я не могу понять как соединить их несколько? При этом не зная, сколько их будет соединяться?
PS - если бы я знал что пользователь выберет именно 2 пункта, то да, это легко сделать (соединить) нужные массивы.
Все работает нормально.
А что вы собственно делаете этим ($i = 0; $i = $number; $i++)?
понял нужно сделать == извините ступил. А вот как на счёт того что выдаётся 20 значный пароль вместо 10 значного. Почему так?
если выберет все, то создадите e в которой
case 'e':$letters = 'abcdefghijklmopkqrstuvwxyz0123456789~!@#$%^&*()_+=-';break;
детский сад.
---------- Добавлено 03.07.2013 в 21:53 ----------
рандом стоит на строку, если не создать
case 'e':$letters = 'abcdefghijklmopkqrstuvwxyz0123456789~!@#$%^&*()_+=-';break;
то пользователь не получит чего хочет...
Если честно, это вы детский сад. В вашем случае, нужно будет создавать 20 массивов. Так как будет 4 галочки для выбора. Вот и считайте, 4 * 4 = 16 и ещё какие-либо функции. Вы написали тоже самое, то и с чего я начал эту тему. С массива, и я попросил как можно обойтись без каждого выбора. То есть есть 4 массива, и она в зависимости от галочки, собираются вместе.
Вы уловили суть вопроса?
Почему?
Ага, а если пользователь выбрал и буквы и цифры. То ему сначала код, выдаст буквы, а потом пароль с цифрами. Или наоборот. Как в вашем скрипте будет выводиться пароль если пользователь выберет c d s ?
какие массивы, зачем они должны объединятся?? Что за бред...
вот простейшая паблик функция, набор $letters меняйте if в зависимости от выбора юзера.
Вы тему вообще читали? То что вы написали, я об этом уже давно сказал! С вашей функцией, придётся создавать их 20
А что мешает в зависимости от условия добавить "необходимую" длину? Или вы не слышали про if?
В том то и дело, что я не знаю, как произвести запись в 1 массив из других массивов, в зависимости от if.
---------- Добавлено 03.07.2013 в 18:44 ----------
array_merge вам в помощь.
Им можно было бы воспользоваться, если бы я точно знал, сколько будет массивов объединяться!
Если вы знаете, как огранизовать с этой функцией мною задуманное, попрошу привести простенький пример? Благодарю за ответ!
1. if(! isset($_POST['name'])) $_POST['name'] = 'default value';
<input type="text" name="name" value="<?= $_POST['name'] ?>">
2. <input type="text" name="name" value="<?= (isset($_POST['name'])) ? $_POST['name'] : 'default value' ?>">
для выделения чекбоксов есть checked
Спасибо, большое всё помогло!
---------- Добавлено 03.07.2013 в 18:31 ----------
Не буду создавать новую тему, спрошу здесь:
1.
Проверил переданные переменыеи вызвал фукнцию:
Проблема в том что, если допутим пользователь вводит 10 то ему выдаётся 20 цифирный пароль, если 100 ему выдаётся 200 символьный пароль. Как эту проблему устранить?
2.Скрипт виснет, когда я делаю:
То скрипт виснет и просто крутит колёсико!
3.При генерации чисел, почему то не выдаётся нужное число, допутим пользователь написал 5 ему выдалось 1 числвой пароль, попросил 100 выдалось 1.Как это устаранить?
Подскажите пожалуйста, как эти ошибки устаранить? Благодарю за ответы!
разрешите пользователю самому задавать пароль какой угодно. кода нужно будет 0 ;)
Я сейчас это делаю, не для пользователей, а для себя. В будущем, попросят меня сделать с кнопочками, а я бац не знаю! Я сейчас только учусь!
---------- Добавлено 03.07.2013 в 17:50 ----------
http://www.google.ru/search?client=opera&q=%D0%B3%D0%B5%D0%BD%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80+%D0%BF%D0%B0%D1%80%D0%BE%D0%BB%D0%B5%D0%B9+php&sourceid=opera&ie=utf-8&oe=utf-8&channel=suggest
И почему должно быть много функций, когда достаточно одной?
Там представлены, как делать генераторы, только определённой длины. А вот с выбором (галочками) нет такого. Поэтому я начал делать сам. И столкнулся с такой проблемой. Что если будет 4 пункта. То нужно будет написать более 20 функций.
<input type="text" name="name" value="<?=$_POST['name']?>">
Спасибо большое! Помогло! Но тогда возникают ещё 2 вопроса:
1.Как сделать что-либо по умолчнию? То есть чтобы уже стояло число 10, а пользователь ввёл 20 и потом уже стояло 20 вместо 10.
2.Как это применить к не текстовым полям? Сделал вот так:
Не работает?