Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: не работает условие..
Форумы портала PHP.SU » PHP » Программирование на PHP » не работает условие..

Страниц (2): [1] 2 »
 

1. noob1k - 06 Декабря, 2010 - 20:04:29 - перейти к сообщению
ребят помогите) завтра лабу сдавать нужно.. но тут трабла вышла с условием)
вообщем, условие не срабатывает.. все время пишет "неверно"

PHP:
скопировать код в буфер обмена
  1.  
  2. <html>
  3. <head>
  4. <title> Генерация </title>
  5. </head>
  6. <body>
  7. <form method='POST' align='center'>
  8. <input type='submit' value='Обновить' name='ref'>
  9. <input type='submit' value='Проверить' name='pr'>
  10. <input type='text' size='10' name='check'>
  11. <select name='zakraska'>
  12. <option >
  13. <option value='1'> Штриховка 1
  14. </select>
  15.  
  16.  
  17. <?
  18. $check=$_POST['check'];
  19. $pr=$_POST['pr'];
  20. if ($check==$vivod) {
  21.         echo "Код введен верно";}
  22. else { echo "Не верно!";}
  23. echo $check." = ".$vivod;
  24. echo '<input type=image src="1.png" name="sub">';
  25. $zakraska=$_POST['zakraska'];
  26. $ref=$_POST['ref'];
  27. $im = ImageCreate (100, 30)  or die ("Ошибка при создании изображения");
  28. $color=ImageColorAllocate ($im, 255, rand(0,255),rand(0,255));
  29. $bukvi = imagecolorallocate($im, 0, 0,0);
  30. $shum = imagecolorallocate($im, 0, 0,0);
  31.  $cif = range(0, 9);
  32.     $mal = range('a', 'z');
  33.     $bol = range('A', 'Z');
  34.     $ob = array_merge($cif, $mal, $bol);
  35.     shuffle($ob);
  36.     $ar = array_slice($ob,0, 5);
  37.  
  38.      $vivod = implode("", $ar);
  39. //*     if($zakraska==1) {echo
  40. //imageline ($im,17,0,0,17,$shum);
  41. //imageline ($im,27,0,0,27,$shum);
  42. //imageline ($im,37,0,10,27,$shum);
  43. //imageline ($im,47,0,20,27,$shum);
  44. //imageline ($im,57,0,30,27,$shum);
  45. //imageline ($im,67,0,40,27,$shum);
  46. //imageline ($im,77,0,50,27,$shum);
  47. //imageline ($im,87,0,60,27,$shum);
  48. //imageline ($im,97,0,70,27,$shum);
  49. //imageline ($im,107,0,80,27,$shum);
  50. //imageline ($im,117,0,90,27,$shum);
  51. //imageline ($im,127,0,100,27,$shum);
  52.  
  53.  
  54. ImageString ($im, 6,27, 8,$vivod, $bukvi);
  55. ImagePng ($im, "1.png");
  56. echo "<br>";
  57. echo "<br>";
  58. echo "<br>";
  59. echo "Текст :  <input align='center' type='text' name='txt' size='10' disabled='true' value='$vivod'>";
  60. ?>
  61.  
  62. </body>
  63. </html>
  64.  
  65.  
2. Nestor - 06 Декабря, 2010 - 20:06:38 - перейти к сообщению
переменная $vivod не предопределенна
3. noob1k - 06 Декабря, 2010 - 20:09:10 - перейти к сообщению
как ее предопределить?
4. antobra - 06 Декабря, 2010 - 20:09:33 - перейти к сообщению
Я конечно не спец, но!

У тебя вначале написано:

PHP:
скопировать код в буфер обмена
  1. if ($check==$vivod) {
  2.         echo "Код введен верно";}
  3. else { echo "Не верно!";}


а $vivod откуда взялся? Переменная просто пустая, а т.к. она пустая, то справшивается, что равен ли $check ничему... логика такая)))
(Добавление)
Ох... опередили меня)

Предопределить? Нужно назначить ей значение... сейчас она пустая
5. noob1k - 06 Декабря, 2010 - 20:11:51 - перейти к сообщению
я условие не только вначало вписывал...
6. antobra - 06 Декабря, 2010 - 20:13:08 - перейти к сообщению
Сейчас у тебя переменная $vivod пустая... поэтому при IF он пишет "не верно"
7. noob1k - 06 Декабря, 2010 - 20:15:05 - перейти к сообщению
$vivod = implode("", $ar);


после этой строки ставил условие.. тож не работает.. Хотя переменная vivod уже должна формироваться
8. antobra - 06 Декабря, 2010 - 20:17:34 - перейти к сообщению
записать значение в переменную $vivod нужно до

PHP:
скопировать код в буфер обмена
  1. if ($check==$vivod) {
  2.         echo "Код введен верно";}
  3. else { echo "Не верно!";}


это как: тебя спросят сколько время, а ты посмотришь и узнаешь время только после того как тебя спросили и ты уже ответил, что не знаешь... догоняешь?

надо сначала посмотреть время, потом тебя спросят и ты ответишь))) уже по-русски объясняю)
9. noob1k - 06 Декабря, 2010 - 20:56:09 - перейти к сообщению
что то никак вообще. Закатив глазки
10. noob1k - 07 Декабря, 2010 - 09:41:26 - перейти к сообщению
с помощью
посмотрел переменные которые сравниваются..
при заполнении кода с капчи и нажатии на "проверить" выдает такое.. переменная введенная с капчи поменялась, и тем самым условие пишет не верно.. как решить проблему?
11. JustUserR - 07 Декабря, 2010 - 11:51:56 - перейти к сообщению
noob1k пишет:
Переменная введенная с капчи поменялась, и тем самым условие пишет не верно
В случае если вам необходимо произвести сохранение фиксированного значения переменной для данной пользовательской сессии взаимодейтсвия с PHP-скриптом - целесообразно обеспечить ее хранение в рамках session-ассоциативного массива
12. noob1k - 07 Декабря, 2010 - 12:12:15 - перейти к сообщению
конкретно в моем случае, что может помочь? желательно с примером..
13. JustUserR - 07 Декабря, 2010 - 12:16:05 - перейти к сообщению
noob1k пишет:
Конкретно в моем случае, что может помочь? желательно с примером..
Схема реализации системы проверки ввода конктерным пользователем корректного значения captcha-элемента включает в себя использование механимза PHP-сессий - по причине необходимости сохранение временного уникального значения на серверной стороке с обеспечением связи с сеансом целевого клиента
14. noob1k - 07 Декабря, 2010 - 12:22:04 - перейти к сообщению
а код сможешь написать? я новичок в этом.. и многого еще незнаю..
(Добавление)
решил проблему.. условие кинул на другую страницу.
тему закрываем. всем спасибо
15. OrmaJever - 07 Декабря, 2010 - 13:18:42 - перейти к сообщению
noob1k пишет:
а код сможешь написать? я новичок в этом.. и многого еще незнаю..

написание кода платное. Здесь мы только помогаем разобратся и исправить ошибки тем кто учит пхп.

 

Powered by ExBB FM 1.0 RC1