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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Не работает проверка заполнения формы

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Описание: Подскажите почему на локальном Денвере код работает, а на сервере Yutex нет?
ghjy06
Отправлено: 13 Февраля, 2013 - 21:13:53
Post Id


Новичок


Покинул форум
Сообщений всего: 17
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)

[+]


Подскажите почему на локальном Денвере код работает, а на сервере Yutex нет?
Проблема в том, что даже если в форме поля mail и author не заполнены, комментарий добавляется, т.к. при помощи javascript в форм встроено value == 'Ваше имя'. Думаю что не работает именно этот код:
PHP:
скопировать код в буфер обмена
  1. if (isset($_POST['author']) && $_POST['author'] != 'Ваше имя')
  2. {
  3. $author = $_POST['author'];
  4. }


Но для анализа выкладываю нужную часть кода:
PHP:
скопировать код в буфер обмена
  1. if (isset($_POST['author']) && $_POST['author'] != 'Ваше имя')
  2. {
  3. $author = $_POST['author'];
  4. }
  5.  
  6. if (isset($_POST['mail']) && $_POST['mail'] != 'Ваш e-mail')
  7. {
  8. $mail = $_POST['mail'];
  9. }
  10.  
  11. if (isset($_POST['text']))
  12. {
  13. $text = $_POST['text'];
  14. }
  15.  
  16. if (isset($_POST['pr']))
  17. {
  18. $pr = $_POST['pr'];
  19. }
  20.  
  21. if (isset($_POST['sub_com']))
  22. {
  23. $sub_com = $_POST['sub_com'];
  24. }
  25.  
  26. if (isset($sub_com))
  27. {
  28. if (isset($author)) {trim($author);}
  29. else {$author = "";}
  30.  
  31. if (isset($text)) {trim($text);}
  32. else {$text = "";}
  33.  
  34. if (isset($mail)) {trim($mail);}
  35. else {$mail = "";}
  36.  
  37. if (empty($author) || empty($text) || empty($mail))
  38. {
  39. exit ("<p>Вы ввели не всю информацию, вернитесь назад и заполните все поля. <br> <input type='button' value='Вернуться назад' onclick='window.history.go(-1)'>");
  40. }
  41.  
  42. $author = stripslashes($author);
  43. $text = stripslashes($text);
  44. $mail = stripslashes($mail);
  45. $author = htmlspecialchars($author);
  46. $text = htmlspecialchars($text);
  47. $mail = htmlspecialchars($mail);



Сама форма вот:


CODE (htmlphp):
скопировать код в буфер обмена
  1. <form id='input' action="gboo.php" method="post" name="form_com">
  2.                 <textarea name="text" cols="55" rows="8" placeholder="Ваша запись"></textarea>
  3.  
  4.                 <input id='input' name="author" onblur="if(this.value == '') {this.value = 'Ваше имя'; this.style.color = '#808080';}" onfocus="if(this.value == 'Ваше имя') {this.value = ''; this.style.color = '#000';}" style="color: #777;" type="text" value="Ваше имя" size="30" maxlength="30">
  5.  
  6.                 <input id='input' name="mail" onblur="if(this.value == '') {this.value = 'Ваш e-mail'; this.style.color = '#777';}" onfocus="if(this.value == 'Ваш e-mail') {this.value = ''; this.style.color = '#000';}" style="color: #777;" type="text" value="Ваш e-mail" size="30" maxlength="30">
  7.  
  8.         <div>
  9.                 <img src="<?=$myrow4["img"]; ?>" width="80px" height="40px">
  10.         <div>Введите в поле только четную цифру с картинки:</div>
  11.                 <input id='input' name="pr" type="text" size="8" maxlength="5">
  12.         </div>
  13.         <div>
  14.                 <input style="padding:5px; border:2px inset #fff" name="sub_com" type="submit" value="Добавить запись">
  15.         </div>
  16. </form></div>


Очень нужно, если проблема с сервером Хостера, тогда уже буду писать в службу поддержки, просто стыдно обращаться если проблема из-за моих начинающих, "кривых рук". Подмигивание
Заранее спасибо.
(Добавление)
9 просмотров и ни одного ответа. Хоть бы догадку высказали. думал хоть на специализированном форуме мне подскажут.


Отредактировано модератором: DeepVarvar, 13 Февраля, 2013 - 22:18:55
Обернул код в теги.
 
 Top
DeepVarvar Супермодератор
Отправлено: 13 Февраля, 2013 - 22:22:39
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




ghjy06 пишет:
думал хоть на специализированном форуме мне подскажут
Есть две подсказки.
Одна честная, но в глаза уколет.
Другая не честная, но учтивая, что прямо ми-ми-ми-ми-ми (^_^)
Вам какую? Закатив глазки
 
 Top
ghjy06
Отправлено: 13 Февраля, 2013 - 22:28:09
Post Id


Новичок


Покинул форум
Сообщений всего: 17
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)

[+]


DeepVarvar пишет:
ghjy06 пишет:
думал хоть на специализированном форуме мне подскажут
Есть две подсказки.
Одна честная, но в глаза уколет.
Другая не честная, но учтивая, что прямо ми-ми-ми-ми-ми (^_^)
Вам какую? Закатив глазки


Если можно - обе, только если можно по существу. Лучше горькая правда, чем сладкая ложь. Не понял
(Добавление)
DeepVarvar пишет:
DeepVarvar
У Вас очень прикольная аватарка. )
(Добавление)
Ответами засыпали просто ))))

(Отредактировано автором: 13 Февраля, 2013 - 23:00:04)

 
 Top
DeepVarvar Супермодератор
Отправлено: 14 Февраля, 2013 - 00:19:03
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




Ахах, оценили значит харизму Закатив глазки
Прошу прощения, что так вот долго не отвечал - дела домашние.

Ладно, поехали.

Первый вариант:
Вы слишком не терпеливы. Показалось что считаете тут на форуме кто-то вам что-то должен.
Неа - ни капельки не должен. Кроме того, увидев тот код, который был сброшен...
Такое размещают на govnokod.ru чтобы поржать.
Ни у кого нет желания лезть в это "Г" и марать руки, что-то советовать.
Лучше отмолчаться, от греха подальше - себе дороже.
Потому, что после одного совета окажется что вы не знаете еще более глубоких азов, и придется откатываться с объяснениями в самый низ, в "каменный век"..
Решение проблемы?
Возможно (я надеюсь) тут: http://forum.php.su/topic.php?fo...33&topic=793

Второй вариант:
Ммммм... А давайте перепишу вам все с нуля и заново?

На самом деле есть еще и третий вариант:
А давайте вы попробуете сами переписать все заново.
А мы тут просто поможем процессу. Направим в нужное русло.
Помогать будет тот, кто свободен сейчас, и если ему будет настроение вам помогать.
А таких лудей тут полно.

Я внесу свою первую лепту.

Начнем с верстки.
Почему у вас в тегах идет описание стилей?
Почему на текстарии используется плейсхолдер, а на инпутах жаваскрипт?
Онфокус на скрипте? о_О Переносите в css
Почему в примере не открыт див перед формой?
Используйте один тип кавычек при описании атрибутов и свойств элементов DOM.
Почему у формы не абсолютный путь?
Почему идентификатор input, даже на форме не уникален?

Теперь скрипт.
stripslashes($author); это что? magic quotes включен?
Я сокращу только прием параметров. Дальше думайте сами.
PHP:
скопировать код в буфер обмена
  1. // там где пустые кавычки можно задать значения по умолчанию
  2. $fields = array("author" => "", "mail" => "", "text" => "", "pr" => "", "sub_com" => "");
  3. foreach (array_keys($fields) as $k) {
  4.   if (isset($_POST[$k])) {
  5.     $value = trim($_POST[$k]);
  6.     if (!$value) {
  7.       continue;
  8.     }
  9.     $fields[$k] = htmlspecialchars($value);
  10.   }
  11. }
  12. var_dump($fields);
 
 Top
DelphinPRO
Отправлено: 14 Февраля, 2013 - 10:38:24
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




Давайте я вам еще HTML упрощу Улыбка
Заодно и value пустым останется

CODE (html):
скопировать код в буфер обмена
  1. <input id='input' name="author" onblur="if(this.value == '') {this.value = 'Ваше имя'; this.style.color = '#808080';}" onfocus="if(this.value == 'Ваше имя') {this.value = ''; this.style.color = '#000';}" style="color: #777;" type="text" value="Ваше имя" size="30" maxlength="30">

=
CODE (html):
скопировать код в буфер обмена
  1. <input id="input" name="author" style="color: #777;" type="text" value="" size="30" maxlength="30" placeholder="Ваше имя">


а для упрямых ишаков ниже 9 версии подключаем плагин jquery.placeholder.js

UPD
я бы еще style отсюда убрал (в css-файл) и атрибуты type (он и так равен "text" по умолчанию) и value
т.е. в итоге как-то так
CODE (html):
скопировать код в буфер обмена
  1. <input id="input" name="author" size="30" maxlength="30" placeholder="Ваше имя">


Как видите, код намного читабельне, и удобнее для доработок в будущем.

(Отредактировано автором: 14 Февраля, 2013 - 10:41:41)



-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
ghjy06
Отправлено: 14 Февраля, 2013 - 23:48:27
Post Id


Новичок


Покинул форум
Сообщений всего: 17
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)

[+]


DeepVarvar пишет:
Ахах, оценили значит харизму Закатив глазки
Прошу прощения, что так вот долго не отвечал - дела домашние.

Ладно, поехали.

Первый вариант:
Вы слишком не терпеливы. Показалось что считаете тут на форуме кто-то вам что-то должен.
Неа - ни капельки не должен. Кроме того, увидев тот код, который был сброшен...
Такое размещают на govnokod.ru чтобы поржать.
Ни у кого нет желания лезть в это "Г" и марать руки, что-то советовать.
Лучше отмолчаться, от греха подальше - себе дороже.
Потому, что после одного совета окажется что вы не знаете еще более глубоких азов, и придется откатываться с объяснениями в самый низ, в "каменный век"..
Решение проблемы?
Возможно (я надеюсь) тут: http://forum.php.su/topic.php?fo...33&topic=793

Второй вариант:
Ммммм... А давайте перепишу вам все с нуля и заново?

На самом деле есть еще и третий вариант:
А давайте вы попробуете сами переписать все заново.
А мы тут просто поможем процессу. Направим в нужное русло.
Помогать будет тот, кто свободен сейчас, и если ему будет настроение вам помогать.
А таких лудей тут полно.

Я внесу свою первую лепту.

Начнем с верстки.
Почему у вас в тегах идет описание стилей?
Почему на текстарии используется плейсхолдер, а на инпутах жаваскрипт?
Онфокус на скрипте? о_О Переносите в css
Почему в примере не открыт див перед формой?
Используйте один тип кавычек при описании атрибутов и свойств элементов DOM.
Почему у формы не абсолютный путь?
Почему идентификатор input, даже на форме не уникален?

Теперь скрипт.
stripslashes($author); это что? magic quotes включен?
Я сокращу только прием параметров. Дальше думайте сами.
PHP:
скопировать код в буфер обмена
  1. // там где пустые кавычки можно задать значения по умолчанию
  2. $fields = array("author" => "", "mail" => "", "text" => "", "pr" => "", "sub_com" => "");
  3. foreach (array_keys($fields) as $k) {
  4.   if (isset($_POST[$k])) {
  5.     $value = trim($_POST[$k]);
  6.     if (!$value) {
  7.       continue;
  8.     }
  9.     $fields[$k] = htmlspecialchars($value);
  10.   }
  11. }
  12. var_dump($fields);


По первому варианту:
Не могу Вам возразить, т.к. я только учусь. Вы наверное экстрасенс, данный код, это воспроизведение полученных знаний от человека, к которому Вы не равнодушны - "Ж. Попова" и видео курсов СПЕЦИАЛИСТ.

Я очень хочу учиться, но ограничен во времени, возможностях и источниках черпания знаний, поэтому стараюсь хоть чему-то научиться, но не все получается так, как хочется.

Второй вариант мне скорее не подойдет, т.к. думаю, что это будет дорогого стоить. Да и в конце концов я сам ничему не научусь.

Третий вариант скорее всего будет самым актуальным для меня. Я был бы чрезмерно благодарен, если бы мог учиться у профессионалов, разумеется, когда у Вас есть время и настроение.

Что касается верстки:
Почему у вас в тегах идет описание стилей?
Подозревая мысль, которую вы хотели осветить этим вопросом, что "Это признак нехорошего кода", отвечу: "Потому что так тоже можно, но я прислушался к Вам и перенес все в таблицу стилей). Закатив глазки

Почему на текстарии используется плейсхолдер, а на инпутах жаваскрипт?
Дело в том что блог, который я "написал", является кросбраузерным. Я хочу избежать надписей над импутами "Ведите имя:". Хочу расположить подобные надписи внутри импутов, чтобы при клике левой кнопкой мыши текст "Ведите имя:" исчезал. IE не поддерживает атрибут placeholder (html5). В данной форме, текстовая область одна, поэтому если в IE она не будет подписана, то и так понятно, что в нее нужно ввести текст комментария (минимизировал применении скриптов). На картинке, которую я прилагаю, макет работающей на локальном хосте формы.

Онфокус на скрипте? о_О Переносите в css
Если я не ошибаюсь вопрос риторический. Улыбка

Почему в примере не открыт див перед формой?
Открывающий div на месте. Я не аккуратно скопировал код для демонстрации.

Используйте один тип кавычек при описании атрибутов и свойств элементов DOM.
Учту.

Почему у формы не абсолютный путь?
Исправил.

Почему идентификатор input, даже на форме не уникален?
Потому что он содержит всего 1 правило:
#input {
margin:5px 15px 15px 0px;
}

По поводу кода, который вы предложили, считаю его очень профессиональным, но я провозился с ним вчера до 5 часов утра и так и не наладил. Данные отправляются, о чем свидетельствует var_dump, однако я пока не додумался, как обработать значения, ключей массива, если они пустые или в них содержится значение value чтобы браузер выводил:
"Вы ввели не всю информацию, вернитесь назад и заполните все поля.".
(Добавление)
DelphinPRO пишет:
Как видите, код намного читабельне, и удобнее для доработок в будущем.
В целом согласен, но для IE не подойдет.
Прикреплено изображение (Нажмите для увеличения)
kart.jpg

(Отредактировано автором: 15 Февраля, 2013 - 17:16:05)

 
 Top
DelphinPRO
Отправлено: 15 Февраля, 2013 - 00:22:25
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




ghjy06 пишет:
В целом согласен, но для IE не подойдет.


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

если использование jQuery не планируется, то такой же функционал можно описать и чистым яваскриптом. Да, вы можете возразить, что такое решение более громоздко, - внешний файл в котором не одна строчка кода. Но на самом деле это не страшно. Во-первых, внешний файл подключается только для для IE условными комментариями. Во-вторых, туда же в будущем попадут остальные костыли для IE. И в-третьих, удобно, когда все костыли сосредоточены в одном месте, а основной код чист и красив.


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
ghjy06
Отправлено: 20 Февраля, 2013 - 16:15:54
Post Id


Новичок


Покинул форум
Сообщений всего: 17
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)

[+]


DeepVarvar пишет:
Дальше думайте сами.

Т.к. проблему я решил (почти так, как хотелось) благодаря DeepVarvar - думаю не лишним будет сообщить Вам об этом. Пользователям будет полезно знать решение.
Предложенный вами код я немного доработал под свои нужды.
Итак:
Форма:
PHP:
скопировать код в буфер обмена
  1. <?echo "<h3>Оставьте свое сообщение или отзыв:</h3>";
  2. //вставляем адрес изображения из базы данных
  3. $result4 = mysql_query ("SELECT img FROM comments_settings",$db);
  4. $myrow4 = mysql_fetch_array($result4);
  5.                                 ?>


CODE (html):
скопировать код в буфер обмена
  1. <form id="form" action="./gbooko.php" method="post" name="form_com">
  2.                 <textarea name="text" cols="55" rows="8" placeholder="Ваша запись"></textarea>
  3.                 <input id="input" name="author" onblur="if(this.value == '') {this.value = 'Ваше имя'; this.style.color = '#808080';}" onfocus="if(this.value == 'Ваше имя') {this.value = ''; this.style.color = '#000';}" type="text" value="Ваше имя" size="27" maxlength="30"><span class="required">*</span>
  4.  
  5.                 <input id="input" name="mail" onblur="if(this.value == '') {this.value = 'Ваш e-mail'; this.style.color = '#777';}" onfocus="if(this.value == 'Ваш e-mail') {this.value = ''; this.style.color = '#000';}" type="text" value="Ваш e-mail" size="27" maxlength="30"><span class="required">*</span>
  6.         <div>
  7.                 <img src="<?=$myrow4["img"]; ?>" width="80px" height="40px">
  8.         <div><strong>Введите в поле только ЧЕТНУЮ цифру с картинки:</strong></div>
  9.                 <input id='input' name="pr" type="text" size="8" maxlength="5"><span class="required">*</span>
  10.         </div>
  11.         <div>
  12.                 <input id ="send" name="sub_com" type="submit" value="Добавить запись">
  13.         </div>
  14. </form>
  15. //Выводим все комментарии на этой же странице чуть ниже формы
  16.  

CODE (html):
скопировать код в буфер обмена
  1. <h2>Все записи в гостевой:</h2>

PHP:
скопировать код в буфер обмена
  1. <?PHP                          
  2.  
  3. $result3 = mysql_query ("SELECT * FROM gbook ORDER BY id DESC",$db);
  4. if (mysql_num_rows($result3) > 0)
  5. {
  6. $myrow3 = mysql_fetch_array($result3);
  7.  
  8. do
  9. {
  10. printf ("<div id='com'><div id='name'>%s</div>
  11.                                                         <div id='data'>%s</div>
  12.                                                         <hr color='#808080' width='250px'>
  13.                                                         <div id='texts'>%s</div></div>",$myrow3["author"],
  14.                                                         $myrow3["date"],
  15.                                                         $myrow3["text"]);
  16.  
  17.  
  18. }
  19. while ($myrow3 = mysql_fetch_array($result3));
  20.  
  21.  
  22. }
  23.  
  24. ?>


В файл обработчик поместил следующий код:
PHP:
скопировать код в буфер обмена
  1. <?PHP include ("./bd/open_ses.php");
  2. $fields = array(
  3.                                 "author" => "",
  4.                                 "mail" => "",
  5.                                 "text" => "",
  6.                                 "pr" => "",
  7.                                 "sub_com" => ""
  8.                                 );
  9. foreach (array_keys($fields) as $k) {
  10.   if (isset($_POST[$k])) {
  11.     $value = trim($_POST[$k]);
  12.     if (!$value) {
  13.       continue;
  14.     }
  15.         if ($fields[author] == "Ваше имя" or $fields[mail] == "Ваш e-mail"){
  16.         exit ("<p>Вы ввели не всю информацию, вернитесь назад и заполните все поля. <br> <input type='button' value='Вернуться назад' onclick='window.history.go(-1)'>");
  17.         }
  18.         }
  19.     $fields[$k] = htmlspecialchars($value);
  20.   }
  21.  
  22. var_dump($fields);
  23.  
  24. $result = mysql_query ("SELECT sum FROM comments_settings",$db);
  25. $myrow = mysql_fetch_array($result);
  26.  
  27. if ($fields[pr] == $myrow["sum"])
  28. {
  29. $date = date("Y-m-d");
  30. $result2 = mysql_query ("INSERT INTO gbook (author,text,date,mail) VALUES ('$fields[author]','$fields[text]','$date','$fields[mail]')",$db);
  31. $address = "admin@site.com";
  32. $subject = "Новая запись в гостевой";
  33.  
  34. $message = "Появилась запись в гостевой книге. \nЗапись добавил(а): ".$author."\nТекст записи: ".$text."\nСсылка на заметку: http://site.com/book.php";
  35. mail($address,$subject,$message,"Content-type:text/plain; Charset=utf-8\r\n");
  36.  
  37. echo "<html><head>
  38. <meta http-equiv='Refresh' content='0; URL=./book.php'>
  39. </head></html>";
  40. exit();
  41.  
  42. }
  43. else
  44. {
  45. exit ("<p>Вы ввели неверную сумму цифр с картинки на предыдущей странице. <br> <input type='button' value='Вернуться назад' onclick='window.history.go(-1)'>");
  46. }
  47. ?>
  48.  

Сложность возникла в том, что тег textarea не передает данные в ячейку массива "text" => "", т.к. у него нет атрибута value он постоянно пустой. Если ячейке массива задать значение "text" => "Ваша запись" и дополнить функцию if:
PHP:
скопировать код в буфер обмена
  1. if ($fields[author] == "Ваше имя" or $fields[mail] == "Ваш e-mail" or $fields[text] == "Ваша запись"){
  2.         exit ("<p>Вы ввели не всю информацию, вернитесь назад и заполните все поля. <br> <input type='button' value='Вернуться назад' onclick='window.history.go(-1)'>");
,
при этом оставить пустым поле тега textarea и отправить форму, то сработает <input type='button' value='Вернуться назад' onclick='window.history.go(-1)'>. Но подлость в том, что это сработает даже если поле заполнено.

Поэтому выполнить проверку текстового поля на пустоту мне не удалось. В принципе данное поле по логике и так заполнят. Буду благодарен, если подскажите решение.

(Отредактировано автором: 20 Февраля, 2013 - 16:26:09)

 
 Top
DeepVarvar Супермодератор
Отправлено: 20 Февраля, 2013 - 20:43:45
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




ghjy06 пишет:
Онфокус на скрипте? о_О Переносите в css
Если я не ошибаюсь вопрос риторический. Улыбка
CODE (CSS2):
скопировать код в буфер обмена
  1. elem:focus {
  2.   color: #ff0000;
  3. }

ghjy06 пишет:
IE не поддерживает атрибут placeholder (html5)
ghjy06 пишет:
у textarea нет атрибута value

CODE (javascript):
скопировать код в буфер обмена
  1. $(function(){
  2.     $("input.placeholder, textarea.placeholder").each(function(){
  3.         if (!$(this).val()) {
  4.             $(this).val($(this).attr("defaultvalue"));
  5.         }
  6.         $(this).focus(function(){
  7.             if ($(this).val() == $(this).attr("defaultvalue")) {
  8.                 $(this).val("");
  9.             }
  10.         }).blur(function(){
  11.             if (!$(this).val()) {
  12.                 $(this).val($(this).attr("defaultvalue"));
  13.             }
  14.         });
  15.     });
  16. });

CODE (html):
скопировать код в буфер обмена
  1.  
  2. <form action="/" method="post">
  3.   <p><input class="placeholder" type="text" name="name" defaultvalue="Имя" value="" /></p>
  4.   <p><input class="placeholder" type="text" name="email" defaultvalue="e-mail" value="" /></p>
  5.   <p><textarea class="placeholder" name="mess" defaultvalue="Введите сообщение"></textarea></p>
  6.   <p class="tar"><input type="submit" value=" Отправить " /></p>
  7. </form>
???
ghjy06 пишет:
Почему идентификатор input, даже на форме не уникален?
Потому что он содержит всего 1 правило:
#input {
margin:5px 15px 15px 0px;
}
ОН ДОЛЖЕН БЫТЬ НА СТРАНИЦЕ ОДИН
DelphinPRO пишет:
плагин, который научит осла понимать плейсхолдеры
Без него обошлось, пара строчек же.
ghjy06 пишет:
$fields[author] ... $fields[mail]
Обрамляйте ключи в кавычки. Это же не константы.
Чтобы увидеть сколько ошибок вас научили делать различные "курсы", напишите в самом начале всех скриптов, это:

И радуйтесь Закатив глазки
 
 Top
DelphinPRO
Отправлено: 20 Февраля, 2013 - 21:07:37
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




DeepVarvar пишет:
плагин, который научит осла понимать плейсхолдеры Без него обошлось, пара строчек же.
ну плагин примерно так и работает Улыбка
одно только заечание: зачем атрибут defaultvalue?
можно ведь стандартный placeholder использовать. и класс, в принципе не нужен. Также по атрибуту выборку делать. ну и проверять поддержку плейсхолдеров, и если она есть - ничего не делать. Если внести все эти правки, как раз и получится тот плагин Улыбка


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
DeepVarvar Супермодератор
Отправлено: 20 Февраля, 2013 - 21:24:32
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




DelphinPRO пишет:
можно ведь стандартный placeholder использовать
Стандартный плейсхолдер, на сколько я знаю, будет сложно кроссбраузерно стилизовать. А так можно добавлять еще один класс, например, чем менять например цвет "плейсхолдера".
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB