Модераторы: Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [PHP] Проерка Пароля на Валидность, помогите написать 
:(
    Опции темы
APro
Дата 5.6.2008, 19:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 328
Регистрация: 5.12.2006

Репутация: нет
Всего: 1



Я ещё не учил PHP, но думаю стоит! Срочно нужна помощь Проффесионалов. Сам немогу написать то что хочу на php, хочу попросить Вас. То что мне надо можно написать за пару сек. Просто я не умею. Итак:

Должна быть форма на которой InputBox (однострочный) для ввода текста и кнопка "Проверить".
Есть некий код, который нужно ввести в InputBox. При нажатии на кнопку "Проверить" нужно сравнить MD5 текста который в InputBox и тот который в скрипте (вобщем сравнить 2 значения). Если раны - вывести текс который я напишу, если нет, вывести надпись "Неверно" или типа того.

(sorry за неграмотность и т.д.)

Зарание спасибо!


--------------------
Никогда не спорь с дураком, другие могут не заметить между вами разницы.
Чем реже открываешь рот, тем меньше слышишь глупостей.
PM MAIL WWW ICQ   Вверх
skyboy
Дата 5.6.2008, 20:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 5
Всего: 260



Для домашних заданий, курсовых, существует "Центр Помощи".

Тема перенесена! 
PM MAIL   Вверх
APro
Дата 5.6.2008, 20:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 328
Регистрация: 5.12.2006

Репутация: нет
Всего: 1



хи, ну не совсем это домашнее задание... ну да ладно!!! Если помогут то это уже будет хорошо!


--------------------
Никогда не спорь с дураком, другие могут не заметить между вами разницы.
Чем реже открываешь рот, тем меньше слышишь глупостей.
PM MAIL WWW ICQ   Вверх
Staind
Дата 5.6.2008, 20:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 175
Регистрация: 17.12.2007
Где: Планета сокровищ

Репутация: нет
Всего: 3



Что-то на подобие такого.
Переменная $MD5cache содержит значение. Вы пишите строку, он потом сам переводит ее в md5 хэш.

Код

<?php
$MD5cache = 'Значение, которое проверяется';
if (isset($_POST['submit']) &&
    isset($_POST['MD5']))
{
   if (md5(trim($_POST['MD5']))==md5($MD5cache))   echo 'Текст, который Вы напишите';
   else echo 'Неверно';
}
?>
<form action='' method='post'>
<input name='MD5' type='text'>
<input name='submit' type='submit' value='Проверить'>
</form>

--------------------
Ничто так не раздражает человека, как просьба успокоиться
PM MAIL WWW ICQ   Вверх
APro
Дата 5.6.2008, 21:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 328
Регистрация: 5.12.2006

Репутация: нет
Всего: 1



Огромное спасибо! Я просто наверное не правильно написал, но мне нужно было так:

Код

if (md5(trim($_POST['MD5']))==$MD5cache)   echo 'Текст, который Вы напишите';


Чтобы $MD5cache уже содержал хэш. А то вдруг как-нибудь удалось бы посмотреть страницу, тогда $MD5cache сразу было бы видно, а так он уже захеширован smile


--------------------
Никогда не спорь с дураком, другие могут не заметить между вами разницы.
Чем реже открываешь рот, тем меньше слышишь глупостей.
PM MAIL WWW ICQ   Вверх
APro
Дата 6.6.2008, 07:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 328
Регистрация: 5.12.2006

Репутация: нет
Всего: 1



А как вывеси 'Текст, который Вы напишите' там где я захочу? (ну в начале формы, а напремер в третий input или  вобще в том месте, где мне надо)


--------------------
Никогда не спорь с дураком, другие могут не заметить между вами разницы.
Чем реже открываешь рот, тем меньше слышишь глупостей.
PM MAIL WWW ICQ   Вверх
Letov
Дата 6.6.2008, 11:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 321
Регистрация: 22.2.2007
Где: Санкт-Петербург

Репутация: 4
Всего: 4



Примерно вот так:
Код

<?php
$MD5cache = 'Значение, которое проверяется';
if (isset($_POST['submit']) &&
    isset($_POST['MD5']))
{
   if (md5(trim($_POST['MD5']))==md5($MD5cache))   $text =  'Текст, который Вы напишите';
   else $text = 'Неверно';
}
?>
<form action='' method='post'>
<input name='MD5' type='text'>
<input name='result' id='result' type='text' value="<?php if(!empty($text)) echo $text ?>">
<input name='submit' type='submit' value="проверить">
</form>


Т.е. надо вставить код
Код

<?php if(!empty($text)) echo $text ?>

там, где Вы захотите. В моем примере - это второй input.

Это сообщение отредактировал(а) Letov - 6.6.2008, 11:05


--------------------
Не бывает плохих языков программирования. Бывают плохие программисты...

PM MAIL   Вверх
APro
Дата 6.6.2008, 13:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 328
Регистрация: 5.12.2006

Репутация: нет
Всего: 1



Тогда последний вопрос...

Значение, которое проверяется если оно не одно. Например нужно так, чтобы было к примеру 3 значения, которые проверяются, и на каждую проверку соответственно свой ответ smile
как это сделать?


--------------------
Никогда не спорь с дураком, другие могут не заметить между вами разницы.
Чем реже открываешь рот, тем меньше слышишь глупостей.
PM MAIL WWW ICQ   Вверх
Letov
Дата 6.6.2008, 16:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 321
Регистрация: 22.2.2007
Где: Санкт-Петербург

Репутация: 4
Всего: 4



Вот, например, для трех:
Код

<?php
$MD5cache = 'Значение, которое проверяется';
//Первая проверка
if (isset($_POST['submit']) &&
    isset($_POST['MD51']))
{
   if (md5(trim($_POST['MD51']))==md5($MD5cache))   $text1 =  'Текст, который Вы напишите';
   else $text1 = 'Неверно';
}
//Вторая проверка
if (isset($_POST['submit']) &&
    isset($_POST['MD52']))
{
   if (md5(trim($_POST['MD52']))==md5($MD5cache))   $text2 =  'Текст, который Вы напишите';
   else $text2 = 'Неверно';
}
//Третья проверка
if (isset($_POST['submit']) &&
    isset($_POST['MD53']))
{
   if (md5(trim($_POST['MD53']))==md5($MD5cache))   $text3 =  'Текст, который Вы напишите';
   else $text3 = 'Неверно';
}

?>
<form action='' method='post'>
<input name='MD51' type='text'><input name='result' id='result' type='text' value="<?php if(!empty($text1)) echo $text1 ?>"><br>
<input name='MD52' type='text'><input name='result' id='result' type='text' value="<?php if(!empty($text2)) echo $text2 ?>"><br>
<input name='MD53' type='text'><input name='result' id='result' type='text' value="<?php if(!empty($text3)) echo $text3 ?>"><br>
<input name='submit' type='submit' value="проверить">
</form>




--------------------
Не бывает плохих языков программирования. Бывают плохие программисты...

PM MAIL   Вверх
APro
Дата 6.6.2008, 18:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 328
Регистрация: 5.12.2006

Репутация: нет
Всего: 1



неееее... до этого бы я и так додумался smile ... Мне надо чтобы, например, вводишь одно, и получаешь ответ на это, а если другое, то на другое и всё это в одно поле. Точно не могу объяснить, но могу так, на коде показать (естественно код не рабочий)

Код

$MD5cache[0] = 'Проверка 1';
$MD5cache[1] = 'Проверка 2';
$MD5cache[2] = 'Проверка 3';


Код

if (md5(trim($_POST['MD5']))==md5($MD5cache[0]))   $text1[0] =  'Верно 1';
else $text[0] = 'Неверно 1';

if (md5(trim($_POST['MD5']))==md5($MD5cache[1]))   $text1[1] =  'Верно 2';
else $text[1] = 'Неверно 2';

if (md5(trim($_POST['MD5']))==md5($MD5cache[2]))   $text1[2] =  'Верно 3';
else $text[2] = 'Неверно 3';


Непонимаю что пишу, но думаю знающий человек меня понимает...


--------------------
Никогда не спорь с дураком, другие могут не заметить между вами разницы.
Чем реже открываешь рот, тем меньше слышишь глупостей.
PM MAIL WWW ICQ   Вверх
Staind
Дата 6.6.2008, 19:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 175
Регистрация: 17.12.2007
Где: Планета сокровищ

Репутация: нет
Всего: 3



Код

<?php
$MD5cache[0] = 'Значение, которое проверяется 1';
$MD5cache[1] = 'Значение, которое проверяется 2';
$MD5cache[2] = 'Значение, которое проверяется 3';

if (isset($_POST['submit']) &&
    isset($_POST['MD5']))
{
   for ($i=0;$i<=2;$i++)
  {
     if (md5(trim($_POST['MD5']))==$MD5cache[$i]) { $text = 'Текст, который Вы напишите'; break; }
     else $text = 'Ни один из вариантов не подходит';
  }
}

if(!empty($text)) echo $text;
?>
<form action='' method='post'>
<input name='MD5' type='text'>
<input name='submit' type='submit' value='Проверить'>
</form>

--------------------
Ничто так не раздражает человека, как просьба успокоиться
PM MAIL WWW ICQ   Вверх
Letov
Дата 6.6.2008, 19:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 321
Регистрация: 22.2.2007
Где: Санкт-Петербург

Репутация: 4
Всего: 4



Попробуйте так:
Код

<?php

$MD5cache[0] = 'Проверка 1';
$MD5cache[1] = 'Проверка 2';
$MD5cache[2] = 'Проверка 3';
if (isset($_POST['submit']) &&
    isset($_POST['MD5']))
{
    foreach($MD5cache as $key => $Value)
        {
            if (md5(trim($_POST['MD5']))==md5($Value))   $text[$key] =  'Верно 1';
               else $text[$key] = 'Неверно 1';
        }
}

?>
<form action='' method='post'>
<input name='MD5' type='text'>
<br>
<?php
if(isset($text) && !empty($text))
{
foreach($text as $key => $value)
{
   echo "<input type=text value=\"".$value."\"><br>";
}
}
?>
<input name='submit' type='submit' value="проверить">
</form>


Это сообщение отредактировал(а) Letov - 6.6.2008, 19:40


--------------------
Не бывает плохих языков программирования. Бывают плохие программисты...

PM MAIL   Вверх
APro
Дата 6.6.2008, 19:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 328
Регистрация: 5.12.2006

Репутация: нет
Всего: 1



дак смотри, елси я введу Значение, которое проверяется 1 или Значение, которое проверяется 2 то получу ответ оин и то же, а мне нужно чтобы на 1 я получил один ответ, например Ответ 1, а на второй Ответ 2 и т.д.


--------------------
Никогда не спорь с дураком, другие могут не заметить между вами разницы.
Чем реже открываешь рот, тем меньше слышишь глупостей.
PM MAIL WWW ICQ   Вверх
Staind
Дата 6.6.2008, 19:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 175
Регистрация: 17.12.2007
Где: Планета сокровищ

Репутация: нет
Всего: 3



Код

<?php
$MD5cache[0] = 'Значение, которое проверяется 1';
$MD5cache[1] = 'Значение, которое проверяется 2';
$MD5cache[2] = 'Значение, которое проверяется 3';

$text[0] = 'Ответ, который вы напишите на первое значение';
$text[1] = 'Ответ, который вы напишите на второе значение';
$text[2] = 'Ответ, который вы напишите на третье значение';

if (isset($_POST['submit']) &&
    isset($_POST['MD5']))
{
   for ($i=0;$i<=2;$i++)
  {
     if (md5(trim($_POST['MD5']))==$MD5cache[$i]) { $message= $text[$i]; break; }
     else $text = 'Ни один из вариантов не подходит';
  }
}

if(!empty($message)) echo $message;
?>
<form action='' method='post'>
<input name='MD5' type='text'>
<input name='submit' type='submit' value='Проверить'>
</form>


P.s. Пробуйте мыслить рациональнее, помогает.

Это сообщение отредактировал(а) Staind - 6.6.2008, 20:00
--------------------
Ничто так не раздражает человека, как просьба успокоиться
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.0572 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.